{"id":173451,"date":"2025-01-06T19:12:43","date_gmt":"2025-01-06T12:12:43","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=173451"},"modified":"2026-04-27T09:59:17","modified_gmt":"2026-04-27T02:59:17","slug":"pengertian-reorder-point","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/","title":{"rendered":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya"},"content":{"rendered":"<p>Stockout bukan sekadar kehabisan barang. Di baliknya ada penjualan yang hilang, pelanggan yang kecewa, dan reputasi yang tergerus. Salah satu penyebab utamanya sederhana: pemesanan ulang yang baru dilakukan ketika stok sudah terlihat menipis, bukan ketika data menunjukkan saatnya memesan.<\/p>\n<p>Reorder point (ROP) hadir untuk menjawab masalah ini. Dengan menghitung kombinasi rata-rata permintaan harian dan lead time pemasok, ROP memberi sinyal otomatis kapan harus memesan agar stok tidak pernah jatuh ke nol. Artikel ini akan memandu Anda menghitung ROP dari nol \u2014 lengkap dengan rumus, komponen, dan studi kasusnya.<\/p>\n<style>\r\n\t.takeaways-container {\r\n\t\tmargin: 20px 0;\r\n\t\tfont-family: sans-serif;\r\n\t}\r\n\t.box-content {\r\n\t\tbackground-color: #fffacd;\r\n\t\tbox-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);\r\n\t\tborder-radius: 25px;\r\n\t\tpadding: 25px;\r\n\t}\r\n\t.title {\r\n\t\tmargin-bottom: 20px;\r\n\t}\r\n\t.title p {\r\n\t\tdisplay: inline-block;\r\n\t\tbackground-color: #8A0E19;\r\n\t\tcolor: #ffffff;\r\n\t\tpadding: 8px 15px;\r\n\t\tborder-radius: 8px;\r\n\t\tfont-size: 22px;\r\n\t\tfont-weight: bold;\r\n\t\tmargin: 0;\r\n\t}\r\n\t.item {\r\n\t\tdisplay: flex;\r\n\t\talign-items: flex-start;\r\n\t\tmargin-bottom: 12px;\r\n\t}\r\n\t.item .circle {\r\n\t\twidth: 8px;\r\n\t\theight: 8px;\r\n\t\tbackground-color: #000000;\r\n\t\tborder-radius: 50%;\r\n\t\tmargin-right: 12px;\r\n\t\tflex-shrink: 0;\r\n\t\tmargin-top: 8px;\r\n\t}\r\n\t.item p {\r\n\t\tmargin: 0;\r\n\t\tfont-size: 16px;\r\n\t\tline-height: 1.6;\r\n\t}\r\n\t.item p a {\r\n\t\tcolor: #8A0E19;\r\n\t\tfont-weight: normal;\r\n\t\ttext-decoration: none;\r\n\t}\r\n\t.item p a:hover {\r\n\t\ttext-decoration: underline;\r\n\t}\r\n\t.button-wrapper {\r\n\t\tmargin-top: 25px;\r\n\t}\r\n\t.submit-button {\r\n\t\tbackground-color: #8a0e19;\r\n\t\tcolor: #fff !important;\r\n\t\ttransition: all .3s ease;\r\n\t\tpadding: 12px 28px;\r\n\t\tdisplay: inline-block;\r\n\t\tborder-radius: 12px;\r\n\t\tfont-size: 16px;\r\n\t\tfont-weight: bold;\r\n\t\ttext-decoration: none;\r\n\t}\r\n\t.submit-button:hover {\r\n\t\tbackground-color: #991b26;\r\n\t}\r\n\t@media (max-width: 767px) {\r\n\t\t.takeaways-container {\r\n\t\t\theight: auto;\r\n\t\t\tpadding: 0;\r\n\t\t}\r\n\t\t.box-content {\r\n\t\t\tpadding: 24px;\r\n\t\t}\r\n\t\t.content,\r\n\t\t.main-content,\r\n\t\t.list-item {\r\n\t\t\twidth: 100%;\r\n\t\t}\r\n\t}\r\n<\/style>\r\n\r\n<div class=\"takeaways-container\">\r\n\t<div class=\"box-content\">\r\n\t\t<div class=\"content\">\r\n\t\t\t<div class=\"title\">\r\n\t\t\t\t<p>Key Takeaways<\/p>\r\n\t\t\t<\/div>\r\n\t\t\t<div class=\"main-content\">\r\n\t\t\t\t<div class=\"list-item\">\r\n\t\t\t\t\t<div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#apa-itu-reorder-point\">Reorder point adalah<\/a> posisi di mana perlu dilakukan penambahan persediaan untuk sebuah barang di gudang sebelum mencapai kehabisan.<\/p><\/div><div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#fungsi-reorder-point\">Fungsi reorder point<\/a> di bidang inventaris seperti mencegah kehabisan stok, mengoptimalkan manajemen inventaris, dan mengoptimalkan manajemen inventaris.<\/p><\/div><div class=\"item\">    <div class=\"circle\"><\/div>    <p><a href=\"#komponen-utama-sistem-reorder-point\">Komponen reorder point<\/a> terdiri dari terdiri dari permintaan konsumen, waktu tunggu pengiriman, dan stok pengaman.<\/p><\/div>\t\t\t\t<\/div>\r\n\t\t\t<\/div>\r\n<!-- \t\t\t<div class=\"button-wrapper\">\r\n\t\t\t\t<a href=\"https:\/\/www.equiperp.com\/tour-produk-gratis\/?medium=key-takeaways\" class=\"submit-button\">Klik untuk Demo Gratis!<\/a>\r\n\t\t\t<\/div> -->\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div>\n\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script> <div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tDaftar Isi:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Daftar Isi<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n\r\n<style>\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor:#000;\r\n\t\tmargin-bottom: 10px;\r\n\t\ttransition:all 0.2s ease-in-out;\r\n\t\tfont-size:15px\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#list_toc_float li a{margin-bottom:0px}\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width:768px){\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t \/* custom scrollbar style *\/\r\n::-webkit-scrollbar {\r\n    width: 7px;\r\n}\r\n::-webkit-scrollbar-track {\r\n    background: #d7a2a4;\r\n}\r\n::-webkit-scrollbar-thumb {\r\n    background: #b1252d;\r\n    border-radius: 15px;\r\n}\t\t\r\n\r\n<\/style>\r\n\r\n<script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\t\/\/ Fungsi untuk menangani klik pada semua elemen <a> dengan href yang dimulai dengan #\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst targetId = this.getAttribute('href').substring(1);\r\n\t\t\tconst targetElement = document.getElementById(targetId);\r\n\r\n\t\t\tif (targetElement) {\r\n\t\t\t\tconst headerHeight = document.querySelector('#toc .header').offsetHeight;\r\n\t\t\t\tconst navbarHeight = document.getElementById('tdi_34') ? document.getElementById('tdi_34').offsetHeight : 0;\r\n\t\t\t\tconst windowHeight = window.innerHeight;\r\n\t\t\t\tconst targetOffset = targetElement.offsetTop;\r\n\t\t\t\tconst scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight) - navbarHeight - 40;\r\n\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: scrollTo,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua elemen <a> di toc-list dan list-toc\r\n\t\tconst titleLinks = document.querySelectorAll('#toc-list a, #list_toc a');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n<\/script>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\n\/\/ document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/   const toc = document.querySelector('#toc');\r\n\/\/   const footer = document.querySelector('.td-footer-template-wrap');\r\n\/\/   const tocParent = toc.parentElement;\r\n\/\/   const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n\/\/   const tocHeight = toc.offsetHeight;\r\n\/\/   const triggerPoint = divTop + tocHeight + 700;\r\n\/\/   const footerHeight = footer.offsetHeight;\r\n\/\/   const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n\/\/   const phtoc = document.querySelector('#placeholder-toc');\r\n\/\/   const headers = document.querySelectorAll('.td-post-content h2');\r\n\/\/   const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\/\/ \tconst panel2 = document.querySelector(\"#toc .list\");\r\n\/\/ \tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n\/\/   let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n\/\/   \/\/ Function to handle scroll and add\/remove .sticky class\r\n\/\/   function handleScroll() {\r\n\/\/     const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n\/\/     let currentHeader = '';\r\n\r\n\/\/     \/\/ Highlight user progress as the heading comes\r\n\/\/     headers.forEach(header => {\r\n\/\/ \t\tconst headerTop = header.offsetTop;\r\n\/\/ \t\tconst headerHeight = header.clientHeight;\r\n\/\/ \/\/ \t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \/\/ \t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \/\/ \t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\/\/ \/\/ \t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \/\/ \t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\/\/ \/\/ \t\t\tif(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t\ttocTitle.textContent = 'Daftar Isi';\r\n\/\/ \/\/ \t\t\t}\r\n\/\/ \/\/ \t\t}\r\n\/\/ \t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\ttocTitle.textContent = 'Daftar Isi'; \/\/ Selalu pertahankan judul ini di mobile\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \t\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \t\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \t\t\t\tcurrentHeader = currentHeaderId;\r\n\/\/ \t\t\t}\r\n\/\/ \t\t}\r\n\/\/ \t});\r\n\r\n\/\/     navLinks.forEach(link => {\r\n\/\/       link.classList.remove('active');\r\n\/\/       if(currentHeader != '') {\r\n\/\/ \t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\/\/ \t\t\t  link.classList.add('active');\r\n\/\/ \t\t  }\r\n\/\/ \t  }\r\n\/\/     });\r\n\/\/ \/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/ \/\/         toc.style.display = 'block';\r\n\/\/ \/\/ \t}else{\r\n\/\/ \/\/         toc.style.display = 'none';\r\n\/\/ \/\/ \t}\r\n\/\/     \/\/ Update TOC title if sticky\r\n\/\/     if (windowTop > triggerPoint) {\r\n\/\/       if (!toc.classList.contains('sticky')) {\r\n\/\/         phtoc.style.display = \"block\";\r\n\/\/         toc.classList.add('sticky');\r\n\/\/         toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/         toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/         toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\tpanel2.style.height = '0px';\r\n\/\/ \t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t  if(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar Isi'; \/\/ Reset title\r\n\/\/        \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\/\/ \t\t  }\r\n\/\/       }\r\n\/\/       if (currentHeader) {\r\n\/\/ \/\/         console.log(\"activeLink:\", activeLink);\r\n\/\/         if (activeLink) {\r\n\/\/ \/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n\/\/           tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n\/\/         }\r\n\/\/       }\r\n\/\/     } else {\r\n\/\/       toc.classList.remove('sticky');\r\n\/\/       phtoc.style.display = \"none\";\r\n\/\/       toc.style.width = 'unset'; \/\/ Reset to original width\r\n\/\/       toc.style.backgroundColor = \"#FFF\";\r\n\/\/       tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\/\/ \t\ticon.style.transform = \"rotate(180deg)\";\r\n\/\/     }\r\n\/\/   }\r\n\r\n\/\/     \/\/ Attach the scroll event listener to the window\r\n\/\/     window.addEventListener('scroll', handleScroll);\r\n\r\n\/\/     \/\/ Initial call to handleScroll to set the correct state on load\r\n\/\/     handleScroll();\r\n\/\/ });\r\n\t\r\n\/\/ \t\/\/ Open toggle TOC\r\n\/\/ \t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/ \t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\/\/ \t\tvar toc = document.querySelector(\"#toc\");\r\n\/\/ \t\tvar icon = document.querySelector(\".toc-icon\");\r\n\/\/ \t\tconst tocTitle = document.querySelector('#toc-title');\r\n\/\/ \t\tconst tocs = document.querySelector('#toc.sticky');\r\n\/\/  \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\/\/ \t\t  tocHeader.addEventListener(\"click\", function() {\r\n\/\/ \t\t\tvar panel = this.nextElementSibling;\r\n\/\/ \t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\/\/ \t\t\t\tif(window.innerWidth > 768){\r\n\/\/ \t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\/\/ \t\t\t} else {\r\n\/\/ \t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '24px';\r\n\/\/ \t\t\t \tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/ \t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t}\r\n\/\/ \t\t  });\r\n\r\n\/\/ \t\t  \/\/ Close TOC when a link inside it is clicked\r\n\/\/ \t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\/\/ \t\t  tocLinks.forEach(function(link) {\r\n\/\/ \t\t\tlink.addEventListener(\"click\", function() {\r\n\/\/ \t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t});\r\n\/\/ \t\t  });\r\n\/\/ \t\t});\r\n\r\n\/\/ START new JS for ToC improvements\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 1750;\r\n\tconsole.log(triggerPoint)\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight*3;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n  \r\n  const panel2 = document.querySelector(\"#toc .list\");\r\n  const icon = document.querySelector(\".toc-icon\");\r\n  const tocTitle = document.querySelector('#toc-title');\r\n\r\n  let activeLink = null;\r\n  let userClosedTOC = false; \/\/ Flag user menutup TOC\r\n\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Update TOC title sesuai header yang terlihat\r\n    headers.forEach(header => {\r\n      const headerTop = header.offsetTop;\r\n      const headerHeight = header.clientHeight;\r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n      } else {\r\n        if (window.scrollY >= (headerTop - headerHeight + 1750)) {\r\n          const currentHeaderId = header.getAttribute('id');\r\n          const currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n          tocTitle.textContent = currentHeaderText;\r\n          currentHeader = currentHeaderId;\r\n        }\r\n      }\r\n    });\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader && link.getAttribute('href').includes(currentHeader)) {\r\n        link.classList.add('active');\r\n      }\r\n    });\r\n\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`;\r\n        toc.style.backgroundColor = \"#FFF\";\r\n        \/\/ Saat sticky, TOC otomatis tertutup\r\n        panel2.style.height = '0px';\r\n        icon.style.transform = \"rotate(180deg)\";\r\n        userClosedTOC = true; \/\/ Set flag supaya tidak terbuka saat scroll\r\n      }\r\n      \r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n        toc.style.width = '150px';\r\n      }\r\n\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset';\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Daftar isi'; \r\n\r\n      \/\/ Kembalikan panel jika user belum menutup manual\r\n      if(!userClosedTOC) {\r\n        panel2.style.height = panel2.scrollHeight + \"px\";\r\n        icon.style.transform = \"rotate(0deg)\";\r\n      }\r\n    }\r\n  }\r\n\r\n  window.addEventListener('scroll', handleScroll);\r\n  handleScroll();\r\n\r\n  \/\/ Toggle TOC saat user klik\r\n  const tocHeader = document.querySelector(\"#toc .header\");\r\n  tocHeader.addEventListener(\"click\", function() {\r\n    const panel = panel2;\r\n    if (panel.style.height !== '0px') {\r\n      panel.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    } else {\r\n      panel.style.height = panel.scrollHeight + \"px\";\r\n      icon.style.transform = \"rotate(0deg)\";\r\n      userClosedTOC = false;\r\n    }\r\n  });\r\n\r\n  \/\/ Close TOC saat link diklik\r\n  document.querySelectorAll(\"#toc .list a\").forEach(link => {\r\n    link.addEventListener(\"click\", function() {\r\n      panel2.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    });\r\n  });\r\n});\r\n\/\/ END new JS for ToC improvements\r\n\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } \r\n\t\t  else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener(\"DOMContentLoaded\", function() {\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        \/\/ Mengambil semua elemen h2 dan h3\r\n\t\tconst elements = document.querySelectorAll('.td-post-content h2');\r\n\r\n\t\t\tfunction newFormatId(text) {\r\n\t\t\t\tif(text.toLowerCase() === \"key takeaways\") {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tconst result = text.toLowerCase()\r\n\t\t\t\t.trim()\r\n\t\t\t\t.replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n\t\t\t\t.replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n\t\t\t\treturn result;\r\n\t\t\t}\r\n\t\r\n\t\telements.forEach(element => {\r\n\t\t\tif (element.tagName === 'H2') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h2\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n\t\t\t\theadings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n\t\t\t} else if (element.tagName === 'H3') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h3\r\n\t\t\t\tif (headings.length > 0) {\r\n\t\t\t\t\theadings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n       \/\/ Membuat list HTML dari objek headings\r\n\t\tconst ul = document.getElementById('list_toc');\r\n\t\tlet currentUl = ul;\r\n\t\theadings.forEach(heading => {\r\n\t\t\tconst li = document.createElement('li');\r\n\t\t\tconst a = document.createElement('a');\r\n\t\t\ta.textContent = heading.title;\r\n\t\t\ta.href = `#${heading.id}`; \/\/ Gunakan ID yang baru dihasilkan\r\n\t\t\tli.appendChild(a);\r\n\r\n\t\t\tif (heading.level === 'h2') {\r\n\t\t\t\tcurrentUl = li;\r\n\t\t\t\tul.appendChild(li);\r\n\t\t\t} else if (heading.level === 'h3') {\r\n\t\t\t\tif (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n\t\t\t\t\tconst nestedUl = document.createElement('ul');\r\n\t\t\t\t\tcurrentUl.appendChild(nestedUl);\r\n\t\t\t\t\tcurrentUl = nestedUl;\r\n\t\t\t\t}\r\n\t\t\t\tcurrentUl.appendChild(li);\r\n\t\t\t}\r\n\r\n\t\t\tcreateNestedList(li, heading.children);\r\n\t\t});\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc'\r\n\t\tconst ulFloat = document.getElementById('list_toc');\r\n\r\n\t\t\/\/ Dapatkan isi (child elements) dari ul dengan id 'list_toc'\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\r\n\t\t\/\/ Tambahkan isi yang telah didapatkan dari 'list_toc' ke ul dengan id 'list_toc_float'\r\n\t\tulToc.append(...clonedChildren);\r\n\r\n\r\n        \/\/ Fungsi untuk mengambil tinggi navbar\r\n\t\tfunction getNavbarHeight() {\r\n\t\t\tconst navbar = document.getElementById('tdi_34');\r\n\t\t\treturn navbar ? navbar.offsetHeight : 0;\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menambahkan offset posisi scroll\r\n\t\tfunction scrollToElementWithOffset(elementId) {\r\n\t\t\tconst element = document.getElementById(elementId);\r\n\t\t\tif (element) {\r\n\t\t\t\tconst offset = getNavbarHeight();\r\n\t\t\t\tconst elementPosition = element.getBoundingClientRect().top;\r\n\t\t\t\tconst offsetPosition = elementPosition - offset - 40;\r\n\r\n\t\t\t\twindow.scrollBy({\r\n\t\t\t\t\ttop: offsetPosition,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menangani klik pada tautan judul\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst href = event.target.getAttribute('href').substr(1);\r\n\t\t\tscrollToElementWithOffset(href);\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua tautan judul\r\n\t\tconst titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t\t\r\n\t});\r\n    <\/script> -->\r\n\n<h2 id=\"pengertian\"><strong><span id=\"apa\">Apa itu Reorder Point?<\/span><\/strong><\/h2>\n<p>Reorder Point (ROP) adalah level stok minimum yang menjadi sinyal otomatis untuk melakukan pemesanan ulang ke pemasok. Titik ini dihitung berdasarkan dua faktor utama: rata-rata permintaan harian dan lead time pengiriman pemasok, ditambah safety stock sebagai penyangga terhadap fluktuasi permintaan.<\/p>\n<p>Rumus dasarnya:<\/p>\n<p style=\"padding-left: 40px;\"><strong>ROP = (Permintaan Harian Rata-rata \u00d7 Lead Time) + Safety Stock<\/strong><\/p>\n<p>Dengan ROP yang akurat, bisnis dapat memesan tepat waktu; tidak terlalu cepat (yang menambah holding cost) dan tidak terlalu lambat (yang menyebabkan stockout, kehilangan penjualan, dan menurunkan kepercayaan pelanggan).<\/p>\n<h2><strong>Pentingnya Sistem Reorder Point<\/strong><\/h2>\n<p>Sistem Reorder Point (ROP) sangat penting untuk mencegah kerugian akibat kehabisan stok, yang dapat<a href=\"https:\/\/gitnux.org\/inventory-management-statistics\/\" target=\"_blank\" rel=\"nofollow noopener\"> mengurangi hingga 4% <\/a>dari pendapatan tahunan perusahaan ritel. Dengan ROP, bisnis dapat meminimalkan risiko kehilangan penjualan dan memastikan kepuasan pelanggan tetap terjaga.<\/p>\n<p>Selain itu, <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/rop-roq-min-max\/\">sistem ROP bekerja bersama dengan Reorder Quantity (ROQ)<\/a> untuk menentukan jumlah barang yang harus dipesan, sehingga stok tetap terjaga dengan baik tanpa kekurangan atau kelebihan.<\/p>\n<p>Dengan sistem otomatis, perusahaan juga dapat mengurangi kesalahan dan ketergantungan pada proses manual yang memakan waktu. Pemesanan ulang yang terlambat atau terlewat bisa dihindari, menjaga kelancaran operasional. Namun, penting untuk memilih sistem inventaris yang tepat, termasuk mempertimbangkan biaya implementasinya.<\/p>\n<h2><b>Masalah yang Timbul Tanpa Reorder Point<\/b><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-192429\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM.webp\" alt=\"reorder point\" width=\"1402\" height=\"1122\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM.webp 1402w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-300x240.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-1024x819.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-768x615.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-525x420.webp 525w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-150x120.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-696x557.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/ChatGPT-Image-Apr-16-2026-09_49_29-AM-1068x855.webp 1068w\" sizes=\"auto, (max-width: 1402px) 100vw, 1402px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Tanpa penerapan <\/span>Reorder Point (ROP)<span style=\"font-weight: 400;\"> yang jelas, perusahaan dapat mengalami berbagai masalah dalam manajemen persediaan. Berikut adalah beberapa dampak utama yang dapat terjadi:\u00a0\u00a0<\/span><\/p>\n<h3><b>1. Kehabisan stok (stockout) dan gangguan operasional<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Tanpa reorder point, perusahaan tidak memiliki batasan kapan harus melakukan pemesanan ulang. Hal ini berisiko menyebabkan kehabisan stok, yang dapat menghambat operasional <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/manajemen-pergudangan-dan-manajemen-stok\/\">manajemen pergudangan<\/a>, mengganggu proses produksi, atau menurunkan kepuasan pelanggan akibat keterlambatan pengiriman barang.<\/span><\/p>\n<h3><b>2. Pelanggan beralih ke kompetitor<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Ketika perusahaan tidak dapat memenuhi permintaan karena stok kosong, pelanggan cenderung mencari alternatif lain. Jika ini terjadi secara berulang, pelanggan bisa kehilangan kepercayaan dan lebih memilih kompetitor yang memiliki ketersediaan produk lebih baik.<\/span><\/p>\n<h3><b>3. Pemesanan darurat dengan biaya tinggi<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Tanpa reorder point, perusahaan mungkin harus melakukan pemesanan mendadak untuk memenuhi kebutuhan stok. Pemesanan darurat sering kali lebih mahal karena biaya ekspedisi kilat atau pembelian dalam jumlah kecil yang tidak efisien secara ekonomi.<\/span><\/p>\n<h3><b>4. Penumpukan stok yang tidak efisien<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Di sisi lain, jika perusahaan memesan terlalu banyak tanpa perhitungan yang jelas, stok bisa menumpuk dan meningkatkan biaya penyimpanan. Barang yang tidak terjual dalam waktu lama juga berisiko menjadi <\/span><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/dampak-dead-stock-bagi-bisnis-dan-cara-mengatasinya\/\">stok mati<\/a> (dead stock)<span style=\"font-weight: 400;\">, terutama untuk produk dengan masa kedaluwarsa atau tren pasar yang cepat berubah.<\/span><\/p>\n<h3><b>5. Ketidakakuratan dalam perencanaan produksi<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Dalam industri manufaktur, tidak adanya reorder point dapat mengakibatkan bahan baku tidak tersedia tepat waktu. Hal ini bisa memperlambat produksi, meningkatkan lead time pemenuhan pesanan, dan menyebabkan ketidakseimbangan dalam rantai pasokan.<\/span><\/p>\n<h2><b><span id=\"fungsi\">Fungsi Reorder Point<\/span><\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Sistem Reorder Point (ROP) membantu bisnis dalam banyak hal di bidang inventaris. Dengan ini, ROP memiliki beragam fungsi yang patut Anda pertimbangkan, seperti:<\/span><\/p>\n<h3><strong>1. Mencegah kehabisan stok<\/strong><\/h3>\n<p>Dengan menetapkan reorder point yang tepat, perusahaan dapat menghindari kekurangan stok yang dapat mengganggu operasional dan mengurangi kepuasan pelanggan.<\/p>\n<h3><strong>2. Memastikan ketersediaan produk<\/strong><\/h3>\n<p>ROP membantu memastikan bahwa produk selalu tersedia ketika dibutuhkan, baik untuk produksi maupun untuk memenuhi permintaan pelanggan, sehingga meningkatkan kelancaran bisnis.<\/p>\n<h3><strong>3. Mengoptimalkan manajemen inventaris<\/strong><\/h3>\n<p>Dengan menentukan reorder point yang sesuai, perusahaan dapat menghindari penumpukan stok berlebih yang berisiko menyebabkan biaya penyimpanan tinggi dan produk kadaluarsa.<\/p>\n<h3><strong>4. Mengurangi biaya darurat<\/strong><\/h3>\n<p>Tanpa reorder point, perusahaan mungkin harus melakukan pemesanan mendadak yang sering kali lebih mahal karena adanya biaya ekspedisi kilat atau pembelian dalam jumlah kecil.<\/p>\n<h3><strong>5. Meningkatkan efisiensi operasional<\/strong><\/h3>\n<p>Penerapan reorder point yang optimal memungkinkan proses pengadaan berjalan lebih lancar, mengurangi kebutuhan untuk pengawasan stok secara manual dan memastikan aliran barang tetap stabil.<\/p>\n<p>Dengan bantuan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/aplikasi-stok-barang-terbaik\/\">aplikasi stok barang<\/a> dapat membantu memantau level stok secara otomatis, memberi notifikasi saat barang mendekati ROP, dan memastikan proses restocking berjalan lancar tanpa gangguan.<\/p>\n<h2 data-start=\"97\" data-end=\"116\"><strong><span id=\"komponen\">Komponen Utama <\/span><\/strong><strong>Sistem Reorder Point<\/strong><\/h2>\n<p data-start=\"118\" data-end=\"333\">Dalam manajemen persediaan, ada beberapa faktor penting yang harus diperhatikan agar stok tetap seimbang dan operasional berjalan lancar. Berikut adalah tiga komponen utama yang biasanya menjadi dasar perhitungan:<\/p>\n<h3 data-start=\"338\" data-end=\"628\"><strong data-start=\"338\" data-end=\"381\">1. Permintaan konsumen<\/strong><\/h3>\n<p data-start=\"338\" data-end=\"628\">Komponen ini menunjukkan jumlah barang yang dipakai atau dijual setiap harinya. Dengan memahami pola konsumsi, perusahaan dapat memperkirakan kebutuhan stok secara lebih akurat sehingga tidak terjadi kelebihan maupun kekurangan persediaan.<\/p>\n<h3 data-start=\"633\" data-end=\"911\"><strong data-start=\"633\" data-end=\"672\">2. Waktu tunggu pengiriman (Lead time)<\/strong><\/h3>\n<p data-start=\"633\" data-end=\"911\">Lead time adalah periode antara pemesanan barang hingga barang tersebut tiba di gudang. Faktor ini penting untuk diperhitungkan karena semakin lama lead time, semakin besar risiko kekurangan stok jika tidak dikelola dengan baik.<\/p>\n<h3 data-start=\"916\" data-end=\"1223\"><strong data-start=\"916\" data-end=\"948\">3. Stok pengaman (Safety stock)<\/strong><\/h3>\n<p data-start=\"916\" data-end=\"1223\">Safety stock berfungsi sebagai cadangan ekstra untuk menghadapi situasi tak terduga, seperti lonjakan permintaan atau keterlambatan distribusi. Dengan adanya persediaan tambahan ini, perusahaan bisa tetap memenuhi kebutuhan pelanggan tanpa harus menghentikan operasi.<\/p>\n<h2 id=\"menghitung\"><strong>Cara Menghitung Reorder Point EOQ<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-167695\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ.webp\" alt=\"reorder point\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-300x163.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-775x420.webp 775w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Cara-Menghitung-dan-Rumus-Reorder-Point-EOQ-1068x580.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><span id=\"eoq\">EOQ dan reorder point adalah dua hal yang tidak dapat dipisahkan. Economic order quantity (EOQ) adalah suatu konsep dalam manajemen persediaan yang mencari jumlah pesanan optimal yang harus dilakukan untuk barang tertentu agar biaya persediaan dapat diminimalkan.<\/span><\/p>\n<p>Berikut adalah rumus cara menghitung reorder point atau EOQ:<\/p>\n<div style=\"background: linear-gradient(135deg,#fff 0%,#fbeaea 100%); border-left: 6px solid #990000; border-radius: 10px; padding: 20px; margin: 24px 0; text-align: center; box-shadow: 0 6px 14px rgba(0,0,0,.08);\"><span style=\"font-size: 20px; font-weight: 600; color: #7a0000; font-family: 'Nunito Sans','Segoe UI',Arial,sans-serif;\">Reorder Point = Lead Time demand (in days) + Safety Stock (in days)<\/span><\/div>\n<h3 id=\"lead\"><strong>1. Lead time demand<\/strong><\/h3>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/lead-time\/\">Lead time<\/a> adalah jeda waktu antara pemesanan sampai dengan barang tersebut masuk ke gudang. Lead time ini berkisar antara beberapa minggu atau bulan, tergantung pada tingkat kesulitan barang yang dipesan, jumlah, hingga jarak tempuh pengiriman barang tersebut.<\/p>\n<h4><strong>Contoh lead demand:<\/strong><\/h4>\n<p>Bayangkan Anda menjual dompet kulit impor dari Cina, di mana supplier selalu siap mengirim barang kapan saja, namun membutuhkan dua hari untuk pengambilan dan pengepakan.<\/p>\n<p>Pesanan kemudian membutuhkan lima hari perjalanan menuju pelabuhan, diikuti dengan 30 hari pelayaran ke Indonesia. Setibanya di pelabuhan, proses pemeriksaan bea cukai memakan waktu seminggu, dan barang akhirnya dikirim ke toko Anda melalui jalur darat selama lima hari.<\/p>\n<p style=\"text-align: center;\"><strong>Total lead time: 2 + 5 + 30 + 7 + 5 = 49 hari<\/strong><\/p>\n<p>Ini berarti, Anda harus memiliki stok dompet kulit untuk dijual sampai pengiriman barang yang berikutnya tiba. Jangan sampai Anda kehabisan persediaan sebelum barang yang dipesan dari supplier datang.<\/p>\n<h4><strong>Cara khusus menghitung lead demand:<\/strong><\/h4>\n<p>Cara khususnya, Anda dapat mengalikan angka lead time dengan rata-rata penjualan per-hari. Kita ibaratkan Anda menjual 10 dompet kulit per hari, maka lead time demand bisnis Anda adalah:<\/p>\n<p style=\"text-align: center;\"><strong>Lead Time Demand = Lead Time x Rata-Rata Penjualan per-Hari<\/strong><\/p>\n<p style=\"text-align: center;\"><strong>49 x 10 pcs = 490 pcs<\/strong><\/p>\n<p>Ini artinya Anda harus menyediakan 490 dompet kulit untuk mengantisipasi pesanan dari pelanggan Anda sampai barang yang dikirim supplier tiba. Mudah? Nanti dulu! Perhitungan ini hanya bisa berjalan, jika tak ada hal-hal yang di luar dugaan terjadi.<\/p>\n<h3 id=\"safety\"><strong>2. Reorder point safety stock<\/strong><\/h3>\n<p>Dalam manajemen inventory, Anda harus mengantisipasi kemungkinan terburuk yang mungkin terjadi dan berpotensi mengganggu persediaan barang. Misalnya, ada artis yang tiba-tiba menggunakan dompet kulit yang Anda jual dan membuat Anda kebanjiran pesanan, dll. <span id=\"persatu\"><\/span><\/p>\n<p>Faktor-faktor tak terduga ini harus Anda perhitungkan sebelumnya dengan menyediakan reorder point <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/mengenal-safety-stock-dan-penerapannya-dalam-bisnis\/\">safety stock<\/a>, atau lebih dikenal sebagai persediaan tambahan. Berikut rumus reorder point EOQ safety stock:<\/p>\n<div style=\"background: linear-gradient(135deg,#fff 0%,#fbeaea 100%); border-left: 6px solid #990000; border-radius: 10px; padding: 20px; margin: 24px 0; text-align: center; box-shadow: 0 6px 14px rgba(0,0,0,.08);\"><span style=\"font-size: 20px; font-weight: 600; color: #7a0000; font-family: 'Nunito Sans','Segoe UI',Arial,sans-serif;\">Safety stock = (Penjualan Harian Tertinggi x Lead Time Terlama) &#8211; (Rata-Rata Penjualan Harian x Rata-Rata Lead Time)<\/span><\/div>\n<h4><strong>Contoh safety stock:<\/strong><\/h4>\n<p>Dari data sebelumnya kita sudah mengetahui bahwa Anda berhasil menjual dompet kulit kurang lebih 10 per hari, namun di hari sabtu minggu angka penjualan naik sampai 20 per hari.<\/p>\n<p>Untuk lead time, biasanya pengiriman dompet kulit dari China makan waktu 49 hari. Namun karena terjadi musibah yang mengakibatkan truk yang mengantar barang pesanan Anda ke pelabuhan di China mengalami kecelakaan, pengiriman jadi molor hingga 54 hari.<\/p>\n<p>Jika dimasukkan ke rumus di atas, maka kita akan mendapatkan safety stock sebagai berikut:<\/p>\n<p style=\"text-align: center;\"><strong>(20 x 54) &#8211; (49 x 10) = 590 pcs<\/strong><\/p>\n<p>Ini artinya Anda harus menyiapkan 590 dompet kulit sebagai safety stock untuk mengantisipasi hal-hal yang tak perusahaan inginkan terjadi. Kemudian, kita bisa mendapatkan nilai reorder point baru dengan perhitungan:<\/p>\n<p style=\"text-align: center;\"><strong>490 pcs (lead time demand) + 590 pcs (safety stock) = 1080 pcs (reorder point)<\/strong><\/p>\n<p>Ini artinya Anda harus mulai membuat pesanan kepada supplier jika sisa dompet kulit yang ada di gudang berjumlah 1080 buah. Dengan ini Anda memastikan persediaan dompet kulit Anda akan cukup sampai pesanan berikutnya sampai, apapun yang terjadi.<\/p>\n<h3><b>3. Reorder point dari dua vendor yang berbeda<\/b><\/h3>\n<p><span style=\"font-weight: 400;\">Dalam <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/mengoptimalkan-manajemen-persediaan\/\">manajemen persediaan<\/a>, pemesanan barang tidak selalu dilakukan dari satu vendor saja. Perusahaan sering bekerja sama dengan beberapa vendor untuk mendapatkan harga terbaik. Setiap vendor memiliki lead time yang berbeda, sehingga perhitungan reorder point perlu disesuaikan\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Lalu, bagaimana cara menghitung reorder point jika menggunakan vendor yang berbeda? Berikut penjelasannya:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Sebuah perusahaan manufaktur memiliki dua vendor untuk bahan baku.<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Vendor A<\/b><span style=\"font-weight: 400;\"> menawarkan harga lebih murah tetapi butuh <\/span>10 hari<span style=\"font-weight: 400;\"> untuk pengiriman.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Vendor B<\/b><span style=\"font-weight: 400;\"> lebih mahal tetapi hanya butuh <\/span>5 hari<span style=\"font-weight: 400;\"> untuk mengirim.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Rata-rata penggunaan bahan baku adalah <\/span>50 unit per hari<span style=\"font-weight: 400;\">.<\/span><\/li>\n<\/ul>\n<h4><b>Menghitung ROP untuk Vendor A<\/b><\/h4>\n<div style=\"background: linear-gradient(135deg,#fff 0%,#fbeaea 100%); border-left: 6px solid #990000; border-radius: 10px; padding: 20px; margin: 24px 0; text-align: center; box-shadow: 0 6px 14px rgba(0,0,0,.08);\"><span style=\"font-size: 20px; font-weight: 600; color: #7a0000; font-family: 'Nunito Sans','Segoe UI',Arial,sans-serif;\">ROP = 10 x 50\u00a0<\/span><\/div>\n<p><span style=\"font-weight: 400;\">Jika menggunakan Vendor A, perusahaan harus memesan ulang saat stok mencapai 500 unit.<\/span><\/p>\n<h4><b>Menghitung ROP untuk Vendor B<\/b><\/h4>\n<div style=\"background: linear-gradient(135deg,#fff 0%,#fbeaea 100%); border-left: 6px solid #990000; border-radius: 10px; padding: 20px; margin: 24px 0; text-align: center; box-shadow: 0 6px 14px rgba(0,0,0,.08);\"><span style=\"font-size: 20px; font-weight: 600; color: #7a0000; font-family: 'Nunito Sans','Segoe UI',Arial,sans-serif;\">ROP = 5 x 50\u00a0<\/span><\/div>\n<p><span style=\"font-weight: 400;\">Jika menggunakan Vendor B, pemesanan ulang dilakukan saat stok tersisa <\/span>250 unit<span style=\"font-weight: 400;\">.<\/span><\/p>\n<h2><strong>Contoh Penerapan Reorder Point<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-192428\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro.webp\" alt=\"reorder point\" width=\"1920\" height=\"836\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro.webp 1920w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-300x131.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-1024x446.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-768x334.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-1536x669.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-965x420.webp 965w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-150x65.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-696x303.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Reorder-Point-HashMicro-1068x465.webp 1068w\" sizes=\"auto, (max-width: 1920px) 100vw, 1920px\" \/><\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Supaya lebih mudah dipahami, mari kita lihat bagaimana reorder point diterapkan dalam bisnis sehari-hari.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Anggaplah Anda menjalankan toko perlengkapan olahraga dan salah satu produk terlaris Anda adalah sepatu lari. Rata-rata, toko Anda menjual 15 pasang sepatu per hari. Supplier Anda butuh waktu 14 hari untuk mengirimkan pesanan sejak Anda transfer, termasuk proses produksi dan pengiriman dari luar kota.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Dari data beberapa bulan terakhir, Anda juga tahu bahwa di akhir pekan penjualan bisa naik dua kali lipat, sekitar 30 pasang per hari. Dan pernah sekali, pengiriman molor sampai 18 hari karena masalah di ekspedisi.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Dengan data ini, Anda bisa menghitung:<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Lead time demand:<\/strong> 14 hari \u00d7 15 pasang = 210 pasang<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Safety stock:<\/strong> (30 \u00d7 18) \u2013 (14 \u00d7 15) = 540 \u2013 210 = 330 pasang<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Reorder point:<\/strong> 210 + 330 = <strong>540 pasang<\/strong><\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Artinya, begitu stok sepatu lari di gudang Anda menyentuh angka 540 pasang, saat itulah Anda harus langsung menghubungi supplier.<\/p>\n<h3 class=\"text-text-100 mt-2 -mb-1 text-base font-bold\"><strong>Contoh 2: Bisnis F&amp;B (Kedai Kopi)<\/strong><\/h3>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Sekarang bayangkan Anda punya kedai kopi dengan satu bahan baku yang tidak boleh sampai habis: biji kopi arabika. Rata-rata kedai Anda menghabiskan 8 kg per hari. Supplier lokal Anda butuh waktu 5 hari untuk kirim setelah Anda pesan, tapi pernah sekali molor sampai 8 hari karena panen terlambat.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Di akhir pekan dan musim liburan, konsumsi bisa naik jadi 14 kg per hari.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Lead time demand:<\/strong> 5 \u00d7 8 = 40 kg<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Safety stock:<\/strong> (14 \u00d7 8) \u2013 (5 \u00d7 8) = 112 \u2013 40 = 72 kg<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\"><strong>Reorder point:<\/strong> 40 + 72 = <strong>112 kg<\/strong><\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Begitu stok biji kopi Anda tinggal 112 kg, langsung pesan. Tidak perlu nunggu hampir habis dulu baru panik telepon supplier.<\/p>\n<h2><strong>Kesimpulan<\/strong><\/h2>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Pada dasarnya, reorder point adalah cara Anda untuk selalu selangkah lebih maju dari kehabisan stok. Bukan dengan menimbun barang sebanyak-banyaknya di gudang tapi dengan tahu persis kapan waktu yang tepat untuk memesan ulang.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Memang, di awal perhitungannya terasa sedikit merepotkan. Tapi begitu Anda sudah punya angkanya, proses pemesanan jadi jauh lebih tenang, tidak ada lagi panik mendadak karena stok tiba-tiba habis di tengah permintaan yang tinggi.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Coba mulai dari satu produk dulu, yang paling sering membuat Anda khawatir. Dari situ, Anda akan lebih mudah menerapkannya ke produk-produk lain secara bertahap.<\/p>\n<a href=\"https:\/\/www.hashmicro.com\/id\/inventaris?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2026\/01\/inventory-definitive.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2026\/01\/inventory-definitive.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2026\/01\/inventory-definitive-m.webp\" alt=\"Inventory_Definisi\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script>\n<h2><strong>Pertanyaan Seputar Reorder Point<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Kapan sebaiknya menggunakan metode ROP?<\/strong><\/summary>\n<p>Metode ROP digunakan untuk menghitung kapan perusahaan melakukan pemesanan barang kembali, apabila perhitungan ROP tidak cermat maka akan terjadi kemungkinan kekurangan stok dan dapat menambah biaya penyimpanan tambahan (Exstra Carrying Cost).<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa manfaat dari ROP?<\/strong><\/summary>\n<p>Reorder Point (ROP) memiliki keuntungan sebagai berikut: Salah satu manfaat utama dari sistem ini adalah memungkinkan aliran inventaris yang lancar tanpa jeda di antaranya. Ini selanjutnya membangun disiplin inventaris bisnis Anda.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Metode apa saja yang digunakan dalam pengendalian persediaan?<\/strong><\/summary>\n<p>Beberapa metode pengendalian persediaan yang paling populer digunakan adalah metode <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/pentingnya-economic-order-quantity-dalam-mengelola-bisnis-anda\/\">Economic Order Quantity (EOQ)<\/a>, metode Periodic Order Quantity (POQ), dan metode Min-Max.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Kesalahan apa yang sering terjadi dalam manajemen persediaan?<\/strong><\/summary>\n<p>(1).Kurangnya Pengukuran Kinerja (2).Karyawan Tidak Memenuhi Syarat Untuk Mengelola Persediaan Barang (3).Perencanaan Tidak Dapat Dilakukan, Apabila Kurangnya Perkiraan (4).Menggunakan Cara Manual (5).Tidak Melakukan Penghitungan Persediaan Barang.<\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"Apa yang dimaksud dengan reorder point?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Reorder point adalah sebuah titik di mana sebuah barang yang ada di gudang harus ditambah persediaannya sebelum kehabisan.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Bagaimana cara menghitung reorder point?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Lead Time demand (in days) + Safety Stock (in days) = Reorder Point\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Berapa harga software manajemen inventory HashMicro?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Harga software inventory setiap perusahaan tentu berbeda-beda. <a href='https:\/\/hashmicro.com\/id\/offer\/download-skema-harga-software-erp\/'>Harga skema software inventory<\/a> dari HashMicro dapat Anda lihat pada website diatas.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Stockout bukan sekadar kehabisan barang. Di baliknya ada penjualan yang hilang, pelanggan yang kecewa, dan reputasi yang tergerus. Salah satu penyebab utamanya sederhana: pemesanan ulang yang baru dilakukan ketika stok sudah terlihat menipis, bukan ketika data menunjukkan saatnya memesan. Reorder point (ROP) hadir untuk menjawab masalah ini. Dengan menghitung kombinasi rata-rata permintaan harian dan lead [&hellip;]<\/p>\n","protected":false},"author":160,"featured_media":173452,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[88],"tags":[],"class_list":{"0":"post-173451","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-inventory"},"acf":{"post_reviewer":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.1 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Reorder Point: Definisi, Rumus dan Cara Menghitungnya<\/title>\n<meta name=\"description\" content=\"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Reorder Point: Definisi, Rumus dan Cara Menghitungnya\" \/>\n<meta property=\"og:description\" content=\"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Indonesia\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hashmicro\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-06T12:12:43+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-27T02:59:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"696\" \/>\n\t<meta property=\"og:image:height\" content=\"385\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Jessica Wijaya\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:site\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Jessica Wijaya\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"12 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/\"},\"author\":{\"name\":\"Jessica Wijaya\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/person\\\/4d83ca1a7056c0a44f813f8721086980\"},\"headline\":\"Reorder Point: Definisi, Rumus dan Cara Menghitungnya\",\"datePublished\":\"2025-01-06T12:12:43+00:00\",\"dateModified\":\"2026-04-27T02:59:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/\"},\"wordCount\":2013,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp\",\"articleSection\":[\"Inventory\"],\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/\",\"name\":\"Reorder Point: Definisi, Rumus dan Cara Menghitungnya\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp\",\"datePublished\":\"2025-01-06T12:12:43+00:00\",\"dateModified\":\"2026-04-27T02:59:17+00:00\",\"description\":\"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp\",\"width\":696,\"height\":385,\"caption\":\"reorder point\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/pengertian-reorder-point\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Reorder Point: Definisi, Rumus dan Cara Menghitungnya\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/\",\"name\":\"HashMicro Indonesia\",\"description\":\"Blog Software Manajemen Bisnis Indonesia #1\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#organization\",\"name\":\"HashMicro Indonesia\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/hashmicro-logo-blog.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/hashmicro-logo-blog.webp\",\"width\":924,\"height\":121,\"caption\":\"HashMicro Indonesia\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/hashmicro\",\"https:\\\/\\\/x.com\\\/hashmicro\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/hashmicro\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/person\\\/4d83ca1a7056c0a44f813f8721086980\",\"name\":\"Jessica Wijaya\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jessica-Wijaya-1-1-96x96.webp\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jessica-Wijaya-1-1-96x96.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jessica-Wijaya-1-1-96x96.webp\",\"caption\":\"Jessica Wijaya\"},\"description\":\"Selama lebih dari 5 tahun sebagai Senior Content Writer, Jessica telah menulis topik yang mengulas tentang bidang inventory dan warehouse management. Keahliannya mencakup penulisan artikel manajemen stok dan persediaan, perencanaan kebutuhan, multi-warehouse management, dan integrasi sistem digital untuk pengelolaan barang.\",\"sameAs\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/\"],\"gender\":\"Perempuan\",\"knowsAbout\":[\"Inventory\",\"inventory management\",\"manajemen inventaris\"],\"knowsLanguage\":[\"Inggris\",\"Indonesia\"],\"jobTitle\":\"Senior Content Writer\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/author\\\/jessicawijaya\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya","description":"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/","og_locale":"id_ID","og_type":"article","og_title":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya","og_description":"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2025-01-06T12:12:43+00:00","article_modified_time":"2026-04-27T02:59:17+00:00","og_image":[{"width":696,"height":385,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp","type":"image\/webp"}],"author":"Jessica Wijaya","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Jessica Wijaya","Estimasi waktu membaca":"12 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/"},"author":{"name":"Jessica Wijaya","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/4d83ca1a7056c0a44f813f8721086980"},"headline":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya","datePublished":"2025-01-06T12:12:43+00:00","dateModified":"2026-04-27T02:59:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/"},"wordCount":2013,"commentCount":0,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp","articleSection":["Inventory"],"inLanguage":"id","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/","name":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp","datePublished":"2025-01-06T12:12:43+00:00","dateModified":"2026-04-27T02:59:17+00:00","description":"Perhitungan reorder point yang baik akan membuat pemesanan barang Anda berjalan dengan lancar. Simak penjelasan dan cara menghitungnya.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Pengertian-Reorder-Point-dan-Cara-Menghitungnya.webp","width":696,"height":385,"caption":"reorder point"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/pengertian-reorder-point\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Reorder Point: Definisi, Rumus dan Cara Menghitungnya"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website","url":"https:\/\/www.hashmicro.com\/id\/blog\/","name":"HashMicro Indonesia","description":"Blog Software Manajemen Bisnis Indonesia #1","publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/id\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization","name":"HashMicro Indonesia","url":"https:\/\/www.hashmicro.com\/id\/blog\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","width":924,"height":121,"caption":"HashMicro Indonesia"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hashmicro","https:\/\/x.com\/hashmicro","https:\/\/www.linkedin.com\/company\/hashmicro"]},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/4d83ca1a7056c0a44f813f8721086980","name":"Jessica Wijaya","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jessica-Wijaya-1-1-96x96.webp","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jessica-Wijaya-1-1-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jessica-Wijaya-1-1-96x96.webp","caption":"Jessica Wijaya"},"description":"Selama lebih dari 5 tahun sebagai Senior Content Writer, Jessica telah menulis topik yang mengulas tentang bidang inventory dan warehouse management. Keahliannya mencakup penulisan artikel manajemen stok dan persediaan, perencanaan kebutuhan, multi-warehouse management, dan integrasi sistem digital untuk pengelolaan barang.","sameAs":["https:\/\/www.hashmicro.com\/id\/"],"gender":"Perempuan","knowsAbout":["Inventory","inventory management","manajemen inventaris"],"knowsLanguage":["Inggris","Indonesia"],"jobTitle":"Senior Content Writer","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/jessicawijaya\/"}]}},"focus_keyword":"reorder point","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/173451","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/users\/160"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=173451"}],"version-history":[{"count":12,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/173451\/revisions"}],"predecessor-version":[{"id":192906,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/173451\/revisions\/192906"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/173452"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=173451"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=173451"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=173451"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}