{"id":132323,"date":"2024-01-31T16:49:14","date_gmt":"2024-01-31T09:49:14","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=132323"},"modified":"2025-02-18T16:53:38","modified_gmt":"2025-02-18T09:53:38","slug":"3pl-third-party-logistic","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/","title":{"rendered":"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL"},"content":{"rendered":"<p>3PL adalah singkatan dari <em>Third Party Logistic<\/em> yang merujuk pada penggunaan layanan pihak ketiga untuk mengelola dan mengkoordinasikan berbagai fungsi rantai pasok, seperti transportasi, pergudangan, dan distribusi. Manfaat utama menggunakan layanan 3PL adalah kemampuan untuk fokus pada kegiatan inti bisnis sambil membiarkan ahli logistik mengurus operasional logistik.<\/p>\n<p>Layanan 3PL dapat memberikan manfaat seperti pengoptimalan proses rantai pasok, peningkatan efisiensi, dan pengurangan biaya. Layanan ini juga dapat menyediakan layanan tambahan seperti manajemen inventaris, pemenuhan pesanan, dan penyelesaian bea cukai.<\/p>\n<p>Namun, sebelum menggunakan layanan 3PL, penting untuk mengevaluasi kebutuhan dan persyaratan bisnis Anda secara spesifik. Oleh karena itu, pada artikel ini kami akan bantu menjelaskan perbedaan kunci antara solusi 3PL dan 4PL (<a href=\"https:\/\/www.hashmicro.com\/id\/blog\/fourth-party-logistics-4pl\/\"><em>Fourth Party Logistic<\/em><\/a>) agar Anda bisa membuat keputusan yang tepat tentang opsi mana yang paling sesuai untuk bisnis Anda.<\/p>\n<p><strong>\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<\/strong><\/p>\n<table style=\"border-collapse: coacllapse;background-color: #fffacd;border-radius: 25px 25px 25px 25px\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px;border: none\">\n<h3 style=\"margin-bottom: 10px\"><span style=\"background-color: #990000;color: #ffffff;padding: 5px\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li style=\"font-weight: 400\"><a href=\"#kapan-menggunakan-3pl\">Layanan 3PL<\/a> dapat jadi pertimbangan ketika bisnis Anda fluktuasi musiman terkait permintaan atau ketika Anda perlu memperluas operasi Anda ke pasar atau wilayah baru secepat mungkin.<\/li>\n<li><a href=\"#kelebihan-3pl\">Kelebihan<\/a> dari menggunakan layanan 3PL yaitu menyediakan akses ke keahlian industri, jaringan yang luas, teknologi canggih, dan layanan nilai tambah yang meningkatkan kecepatan, keandalan, dan kepuasan pelanggan.<\/li>\n<li>Ada beberapa <a href=\"#kekurangan-3pl\">kelemahan<\/a> saat menggunakan layanan 3PL yaitu adanya risiko kehilangan kontrol operasional, ketergantungan pada penyedia, dan potensi biaya tak terduga.<\/li>\n<li><a href=\"https:\/\/www.hashmicro.com\/id\/supply-chain-management?utm_source=blog&amp;utm_medium=banner&amp;utm_campaign=supply-chain-management\">Software supply chain management<\/a> dari HashMicro dapat menjadi solusi pengelolaan logistik bisnis Anda.<\/li>\n<\/ul>\n<p><strong><\/strong><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong><span id=\"kapan-menggunakan-3pl\">Kapan Sebaiknya Perusahaan Menggunakan 3PL (<em>Third Party Logistic<\/em>)?<\/span><\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-155798\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic.webp\" alt=\"3pl third party logistic.\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-300x163.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-775x420.webp 775w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/3pl-third-party-logistic-1068x580.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Keputusan untuk menggunakan layanan 3PL harus didasarkan pada berbagai faktor dan kebutuhan khusus bisnis Anda. 3PL dapat menjadi pilihan yang sesuai dalam beberapa situasi, seperti saat bisnis Anda mengalami fluktuasi musiman dalam permintaan, atau saat Anda perlu dengan cepat memperluas operasi Anda ke pasar atau wilayah baru.<\/p>\n<p>Menggunakan layanan 3PL dapat memberikan skalabilitas dan fleksibilitas yang diperlukan untuk memenuhi tuntutan pelanggan yang berubah tanpa investasi awal yang signifikan.<\/p>\n<p>Selain itu, bisnis yang kurang memiliki keahlian atau sumber daya untuk mengelola operasi logistik secara efisien dapat mendapatkan manfaat dari bekerja sama dengan penyedia 3PL.<\/p>\n<p>Dengan mengoutsourcing kegiatan logistik kepada perusahaan yang spesialis, bisnis dapat memanfaatkan pengetahuan, pengalaman, dan jaringan penyedia untuk mencapai kinerja rantai pasok yang lebih baik.<\/p>\n<p>Selanjutnya, bisnis yang ingin mengoptimalkan biaya dan meningkatkan efisiensi dapat memanfaatkan penghematan biaya dan perbaikan proses yang ditawarkan oleh penyedia 3PL.<\/p>\n<p>Pada akhirnya, keputusan untuk menggunakan layanan 3PL harus didasarkan pada evaluasi yang teliti terhadap kebutuhan bisnis Anda, persyaratan logistik, dan kemampuan penyedia 3PL potensial.<\/p>\n<p>Dalam memilih penyedia 3PL yang tepat, ini dapat dilakukan dengan mempertimbangkan beberapa faktor berikut:<\/p>\n<ul>\n<li><strong>Pengalaman dan keahlian<\/strong>: Cari penyedia yang memiliki pengalaman dan keahlian dalam industri spesifik Anda. Mereka harus memiliki pemahaman mendalam tentang kebutuhan dan tantangan logistik Anda.<\/li>\n<li><strong>Jaringan dan sumber daya<\/strong>: Nilai jaringan dan sumber daya penyedia. Mereka harus memiliki jaringan yang luas dari angkutan, gudang, dan pusat distribusi untuk memastikan layanan transportasi dan pergudangan yang efisien.<\/li>\n<li><strong>Teknologi dan sistem<\/strong>: Evaluasi teknologi dan sistem yang dimiliki penyedia. Mereka harus menawarkan kemampuan pelacakan dan visibilitas canggih, proses otomatis, dan integrasi dengan sistem yang sudah ada.<\/li>\n<li><strong>Skalabilitas dan fleksibilitas<\/strong>: Pertimbangkan kemampuan penyedia untuk melakukan skala operasi dan beradaptasi dengan perubahan kebutuhan Anda. Mereka harus menawarkan solusi yang fleksibel yang dapat mengakomodasi fluktuasi permintaan dan ekspansi ke pasar baru.<\/li>\n<li><strong>Kesepakatan tingkat layanan<\/strong>: Tinjau perjanjian tingkat layanan (SLA) penyedia untuk menjamin kinerja, respons, dan penyelesaian masalah. Pastikan bahwa mereka sesuai dengan harapan dan persyaratan Anda.<\/li>\n<li><strong>Struktur biaya dan harga<\/strong>: Evaluasi struktur biaya dan harga penyedia. Cari model harga yang transparan dan pertimbangkan nilai keseluruhan yang diberikan dalam hubungannya dengan biaya.<\/li>\n<li><strong>Referensi dan reputasi<\/strong>: Cari referensi dan lakukan penelitian tentang reputasi penyedia di industri. Minta testimoni klien dan ulasan untuk memperoleh wawasan tentang kinerja mereka dan kepuasan pelanggan.<\/li>\n<\/ul>\n<p><span id=\"kelebihan-3pl\">Dengan mempertimbangkan faktor-faktor ini secara cermat dan melaksanakan proses evaluasi yang teliti, Anda dapat memilih penyedia 3PL yang sesuai dengan kebutuhan bisnis Anda dan berkontribusi pada kesuksesan operasi logistik Anda.<\/span><\/p>\n<h2><strong>Kelebihan Menggunakan Layanan 3PL (<em>Third Party Logistic<\/em>)<\/strong><\/h2>\n<p>Layanan 3PL atau Third Party Logistic memberikan manfaat yang lebih dari sekadar penghematan biaya dan peningkatan efisiensi.<\/p>\n<p>Salah satu keuntungan utamanya adalah <strong>akses kepada keahlian dan pengetahuan dari penyedia layanan 3PL<\/strong>. Mereka memiliki pengalaman khusus dalam industri dan pemahaman mendalam tentang operasi logistik, yang dapat menghasilkan pengelolaan rantai pasokan yang lebih baik dan optimalisasi proses.<\/p>\n<p>Selain itu, menggunakan layanan 3PL memungkinkan bisnis untuk <strong>memanfaatkan jaringan dan sumber daya yang telah dimiliki oleh penyedia<\/strong>. Hal ini dapat menghasilkan layanan transportasi yang lebih cepat dan bisa diandalkan, peningkatan kemampuan gudang, dan peningkatan saluran distribusi.<\/p>\n<p>Kelebihan lainnya adalah adanya <strong>kemampuan untuk memanfaatkan teknologi dan sistem canggih yang ditawarkan<\/strong> oleh penyedia layanan 3PL. Hal ini dapat memberikan bisnis dengan visibilitas waktu nyata terhadap rantai pasokan mereka, proses pemesanan dan pelacakan otomatis, serta analitik data untuk pengambilan keputusan yang lebih baik.<\/p>\n<p>Terakhir, bekerja sama dengan penyedia 3PL yang terpercaya dapat <strong>meningkatkan kepuasan pelanggan melalui layanan tambahan<\/strong> seperti penyesuaian pesanan, waktu pengiriman yang lebih cepat, serta manajemen pengembalian yang efisien.<\/p>\n<p><span id=\"kekurangan-3pl\">Kelebihan-kelebihan ini menjadikan layanan 3PL sebagai pilihan berharga bagi bisnis yang ingin meningkatkan operasi logistik mereka dan kinerja keseluruhan rantai pasokan.<\/span><\/p>\n<h2><strong>Kekurangan Menggunakan Layanan 3PL (<em>Third Party Logistic<\/em>)<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-155807\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics.webp\" alt=\"Kekurangan 3pl Third party logistics\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-300x163.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-775x420.webp 775w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/Kekurangan-3pl-Third-party-logistics-1068x580.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Meskipun terdapat banyak manfaat dalam menggunakan layanan 3PL, penting untuk mempertimbangkan kekurangan dan risiko yang mungkin timbul. Salah satu kekurangan utamanya adalah <strong>kehilangan kontrol atas operasi logistik<\/strong>.<\/p>\n<p>Dengan meng-<em>outsourcing<\/em> kegiatan-kegiatan ini kepada pihak ketiga, bisnis Anda mungkin memiliki keterbatasan dalam melihat dan mengendalikan proses-proses kritis. Hal ini dapat mengakibatkan tantangan dalam koordinasi, komunikasi, dan pemenuhan ekspektasi pelanggan.<\/p>\n<p>Selain itu, bergantung pada penyedia 3PL berarti Anda <strong>bergantung pada kemampuan mereka<\/strong>, yang mungkin tidak sepenuhnya sesuai dengan kebutuhan bisnis Anda. Ada juga <strong>risiko gangguan dalam rantai pasokan<\/strong> akibat faktor-faktor di luar kendali, seperti bencana alam, mogok kerja, atau perubahan regulasi.<\/p>\n<p>Kelemahan potensial lainnya adalah <strong>kemungkinan biaya yang meningkat<\/strong>. Meskipun layanan 3PL dapat menawarkan penghematan biaya melalui sumber daya bersama dan efisiensi, mungkin juga terdapat biaya tambahan atau biaya tersembunyi terkait dengan layanan yang diberikan.<\/p>\n<p>Penting untuk mengevaluasi dengan cermat persyaratan kontrak, struktur harga, dan perjanjian tingkat layanan sebelum memulai kerjasama dengan penyedia 3PL. Dengan mempertimbangkan faktor-faktor ini, dapat membantu mengurangi risiko dan menjamin keberhasilan kolaborasi dengan penyedia 3PL.<\/p>\n<h2><strong>Perbedaan antara 3PL dan 4PL<\/strong><\/h2>\n<p>Selain <em>outsourcing<\/em> kegiatan logistik, terdapat perbedaan-perbedaan penting antara solusi 3PL dan 4PL (<em>Fourth Party Logistic<\/em>). 3PL berfokus pada aspek fisik logistik seperti transportasi, pergudangan, dan manajemen persediaan. Hal ini melibatkan penggunaan pihak ketiga yang ahli dalam mengelola fungsi-fungsi khusus tersebut.<\/p>\n<p>Di sisi lain, 4PL lebih dari sekadar aspek fisik dan menyediakan solusi yang lebih komprehensif. Sebagai penyedia 4PL, mereka bertindak sebagai mitra strategis yang mengelola tidak hanya logistik fisik tetapi juga mengoordinasikan dan mengoptimalkan seluruh rantai pasokan. Ini meliputi pengelolaan beberapa penyedia 3PL, pengawasan jaringan rantai pasokan, dan memberikan visibilitas dan kendali end-to-end.<\/p>\n<p>Penyedia 4PL seringkali mengambil pendekatan yang lebih strategis dan konsultatif, bekerja sama dengan bisnis dalam mengembangkan dan menerapkan strategi rantai pasokan.<\/p>\n<p>Pilihan antara 3PL dan 4PL bergantung pada kompleksitas operasi logistik, tingkat kendali dan visibilitas yang diperlukan, dan tujuan strategis bisnis Anda. Penting untuk mengevaluasi dengan cermat kebutuhan Anda dan kemampuan penyedia potensial untuk menentukan solusi yang paling cocok untuk bisnis Anda.<\/p>\n<h2><strong>Tips Memilih 3PL yang Tepat<\/strong><\/h2>\n<p>Memilih penyedia jasa 3PL yang tepat adalah kunci kesuksesan operasional logistik Anda. Berikut adalah beberapa faktor yang perlu dipertimbangkan saat memilih penyedia 3PL:<\/p>\n<ol>\n<li><strong>Keahlian dan pengalaman di industri<\/strong>: Cari penyedia yang memiliki pengalaman dan keahlian di industri spesifik Anda. Mereka harus memiliki pemahaman mendalam tentang persyaratan dan tantangan logistik Anda.<\/li>\n<li><strong>Jaringan dan sumber daya<\/strong>: Tinjau jaringan dan sumber daya penyedia. Mereka harus memiliki jaringan yang luas dengan para pihak pengangkut, gudang, dan pusat distribusi untuk memastikan layanan transportasi dan pergudangan yang efisien.<\/li>\n<li><strong>Teknologi dan sistem<\/strong>: Evaluasi teknologi dan sistem yang ditawarkan oleh penyedia. Mereka harus menyediakan kemampuan pelacakan dan visibilitas yang canggih, proses otomatis, dan integrasi dengan sistem yang sudah Anda miliki.<\/li>\n<li><strong>Skalabilitas dan fleksibilitas<\/strong>: Pertimbangkan kemampuan penyedia untuk melakukan penyesuaian operasional dan beradaptasi dengan kebutuhan yang berubah. Mereka harus menawarkan solusi yang fleksibel yang dapat menyesuaikan fluktuasi permintaan dan ekspansi ke pasar baru.<\/li>\n<li><strong>Perjanjian layanan<\/strong>: Tinjau perjanjian layanan (SLA) penyedia mengenai jaminan performa, responsifitas, dan penyelesaian masalah. Pastikan bahwa SLA tersebut sejalan dengan harapan dan persyaratan Anda.<\/li>\n<li><strong>Struktur biaya dan harga<\/strong>: Nilai struktur biaya dan harga penyedia. Cari model harga yang transparan dan pertimbangkan nilai keseluruhan yang diberikan dalam kaitannya dengan biaya.<\/li>\n<li><strong>Referensi dan reputasi<\/strong>: Cari referensi dan lakukan penelitian tentang reputasi penyedia di industri. Mintalah testimonial klien dan tinjau ulasan untuk memperoleh wawasan tentang performa dan kepuasan pelanggan mereka.<\/li>\n<\/ol>\n<p>Dengan mempertimbangkan faktor-faktor ini secara cermat dan melakukan due diligence yang mendalam, Anda dapat memilih penyedia 3PL yang sesuai dengan kebutuhan bisnis Anda dan memberikan kontribusi pada kesuksesan operasional logistik Anda.<\/p>\n<h2><strong>Solusi Pengelolaan Logistik Efektif dengan Sistem Supply Chain Management HashMicro<\/strong><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/supply-chain-management?utm_source=blog&amp;utm_medium=banner&amp;utm_campaign=supply-chain-management\">Sistem <em>supply chain management<\/em> HashMicro<\/a> merupakan solusi canggih yang memberikan kontrol dan visibilitas yang belum pernah ada sebelumnya di seluruh rantai pasokan Anda. Sistem ini dirancang dengan teliti, yang tidak hanya meningkatkan efisiensi\u2014tetapi memberdayakan bisnis untuk mengantisipasi perubahan pasar,\u00a0merespons dengan gesit, dan\u00a0memanfaatkan peluang baru.<\/p>\n<p>Dengan memanfaatkan kekuatan otomatisasi, analitik data <em>real-time<\/em>, dan algoritma pembelajaran mendalam, sistem HashMicro memungkinkan Anda untuk mengoptimalkan setiap aspek rantai pasokan Anda, dari pengadaan hingga pengiriman. Sehingga terjadi\u00a0pengurangan biaya,\u00a0percepatan waktu ke pasar, dan\u00a0peningkatan kepuasan pelanggan.<\/p>\n<p>Berikut adalah lima fitur utama yang sangat mendukung kegiatan logistik:<\/p>\n<ul>\n<li><strong><em>Inventory management<\/em>: <\/strong><span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif\">Melacak ketersediaan barang secara real-time dan melakukan penyesuaian inventaris otomatis untuk menghindari risiko kekurangan atau kelebihan stok.<\/span><\/li>\n<li><strong><em>Procurement management<\/em>: <\/strong><span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif\">Mengotomatiskan pembuatan pesanan pembelian dan memberikan notifikasi ketika stok mencapai level minimum, memastikan pengisian ulang tepat waktu.<\/span><\/li>\n<li><strong><em>Order management<\/em>: <\/strong><span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif\">Memantau status pesanan dan memenuhi permintaan pelanggan dengan lebih efektif, meningkatkan kepuasan pelanggan.<\/span><\/li>\n<li><strong><em>Shipment tracking<\/em>: <\/strong><span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif\">Memberikan visibilitas penuh atas proses pengiriman dengan kemampuan untuk melacak lokasi kurir dan memastikan pengiriman tepat waktu.<\/span><\/li>\n<li><strong><em>Planning and forecasting management<\/em>: <\/strong><span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif\">Memanfaatkan analitik canggih untuk meramalkan permintaan masa depan dan kebutuhan inventori, memastikan ketersediaan produk yang tepat pada waktu yang tepat.<\/span><\/li>\n<\/ul>\n<p>Fitur-fitur ini bekerja bersama untuk memberikan solusi yang tidak hanya memenuhi kebutuhan dinamis manajemen logistik, tetapi juga mendorong peningkatan signifikan dalam produktivitas dan kepuasan pelanggan.<\/p>\n<h2><strong>Kesimpulan<\/strong><\/h2>\n<p>Dalam dunia logistik yang terus berkembang, pemahaman tentang 3PL dan 4PL menjadi kunci untuk efisiensi operasional. <em>Third Party Logistics<\/em> (3PL)\u00a0menawarkan layanan spesifik seperti penyimpanan dan pengiriman, sementara\u00a0<em>Fourth Party Logistics<\/em> (4PL) mengelola seluruh rantai pasokan, memberikan panduan strategis dan optimisasi.<\/p>\n<p>Meskipun 3PL cocok untuk bisnis dengan kebutuhan moderat, 4PL lebih menguntungkan bagi bisnis yang berkembang dengan kebutuhan logistik yang kompleks dan memerlukan bimbingan strategis.\u00a0Namun, menggunakan 3PL dapat lebih terjangkau dan memberikan kontrol yang lebih besar atas operasi tertentu.<\/p>\n<p>Sebagai solusi untuk tantangan logistik ini,\u00a0<a href=\"https:\/\/www.hashmicro.com\/id\/supply-chain-management?utm_source=blog&amp;utm_medium=banner&amp;utm_campaign=supply-chain-management\">HashMicro\u2019s supply chain management software<\/a> menawarkan fleksibilitas dan kontrol yang diperlukan untuk mengelola logistik dengan efektif. Dengan fitur seperti manajemen inventori, pelacakan pengiriman, dan perencanaan &amp; peramalan, software ini memastikan bahwa operasi Anda berjalan lancar dan efisien.<\/p>\n<p>Untuk melihat sendiri bagaimana HashMicro dapat mengoptimalkan logistik Anda, kami mengundang Anda untuk\u00a0mencoba <strong>demo gratis<\/strong>\u00a0kami. Dengan HashMicro, Anda akan mendapatkan keunggulan dalam pengelolaan logistik yang efektif dan berkelanjutan.<\/p>\n<p><strong><a href=\"https:\/\/www.hashmicro.com\/id\/supply-chain-management?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/11.-Supply-Chain-Management-Software-Web.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/11.-Supply-Chain-Management-Software-Web.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/11.-Supply-Chain-Management-Software-Mobile.webp\" alt=\"SupplyChainManagement\" 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><\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>3PL adalah singkatan dari Third Party Logistic yang merujuk pada penggunaan layanan pihak ketiga untuk mengelola dan mengkoordinasikan berbagai fungsi rantai pasok, seperti transportasi, pergudangan, dan distribusi. Manfaat utama menggunakan layanan 3PL adalah kemampuan untuk fokus pada kegiatan inti bisnis sambil membiarkan ahli logistik mengurus operasional logistik. Layanan 3PL dapat memberikan manfaat seperti pengoptimalan proses [&hellip;]<\/p>\n","protected":false},"author":20,"featured_media":155800,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1234],"tags":[],"class_list":{"0":"post-132323","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-supply-chain"},"acf":{"post_reviewer":null},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.1 (Yoast SEO v25.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>3PL (Third Party Logistic): Manfaat dan Perbandingannya dengan 4P<\/title>\n<meta name=\"description\" content=\"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.\" \/>\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\/3pl-third-party-logistic\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL\" \/>\n<meta property=\"og:description\" content=\"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\" \/>\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=\"2024-01-31T09:49:14+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-02-18T09:53:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"650\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Anatha Ginting\" \/>\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=\"Anatha Ginting\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 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\/3pl-third-party-logistic\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\"},\"author\":{\"name\":\"Anatha Ginting\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/32b7f9855e47e032269002db366f1a09\"},\"headline\":\"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL\",\"datePublished\":\"2024-01-31T09:49:14+00:00\",\"dateModified\":\"2025-02-18T09:53:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\"},\"wordCount\":1819,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp\",\"articleSection\":[\"Supply Chain\"],\"inLanguage\":\"id\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\",\"name\":\"3PL (Third Party Logistic): Manfaat dan Perbandingannya dengan 4P\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp\",\"datePublished\":\"2024-01-31T09:49:14+00:00\",\"dateModified\":\"2025-02-18T09:53:38+00:00\",\"description\":\"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp\",\"width\":1200,\"height\":650,\"caption\":\"pengertian 3pl logistic\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/id\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL\"}]},{\"@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\/32b7f9855e47e032269002db366f1a09\",\"name\":\"Anatha Ginting\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/01a5baa16cb50808f3b9f5bf1e75940409ab0912a720fcd78e68157b9e1d31e3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/01a5baa16cb50808f3b9f5bf1e75940409ab0912a720fcd78e68157b9e1d31e3?s=96&d=mm&r=g\",\"caption\":\"Anatha Ginting\"},\"description\":\"Anatha sudah berpengalaman selama lebih dari 5 tahun dalam mengulas implementasi dan strategi Enterprise Resource Planning (ERP). Dalam setiap tulisannya, ia membahas peran sistem ERP dalam mengintegrasikan data lintas divisi, merapikan proses operasional, serta membantu perusahaan memahami dan mengelola bisnis secara lebih efektif.\",\"sameAs\":[\"https:\/\/www.linkedin.com\/in\/anathag\/\"],\"gender\":\"Perempuan\",\"knowsAbout\":[\"content writing\"],\"knowsLanguage\":[\"Inggris\",\"Indonesia\"],\"jobTitle\":\"Lead Content Writer\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/author\/anatha\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"3PL (Third Party Logistic): Manfaat dan Perbandingannya dengan 4P","description":"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.","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\/3pl-third-party-logistic\/","og_locale":"id_ID","og_type":"article","og_title":"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL","og_description":"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2024-01-31T09:49:14+00:00","article_modified_time":"2025-02-18T09:53:38+00:00","og_image":[{"width":1200,"height":650,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp","type":"image\/webp"}],"author":"Anatha Ginting","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Anatha Ginting","Estimasi waktu membaca":"9 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/"},"author":{"name":"Anatha Ginting","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/32b7f9855e47e032269002db366f1a09"},"headline":"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL","datePublished":"2024-01-31T09:49:14+00:00","dateModified":"2025-02-18T09:53:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/"},"wordCount":1819,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp","articleSection":["Supply Chain"],"inLanguage":"id"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/","name":"3PL (Third Party Logistic): Manfaat dan Perbandingannya dengan 4P","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp","datePublished":"2024-01-31T09:49:14+00:00","dateModified":"2025-02-18T09:53:38+00:00","description":"Pelajari apa itu 3PL Third Party Logistic, keuntungan dan situasi terbaik untuk memanfaatkannya serta perbedaannya dengan solusi 4PL.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/01\/pengertian-3pl-logistic.webp","width":1200,"height":650,"caption":"pengertian 3pl logistic"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/3pl-third-party-logistic\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Apa itu 3PL Third Party Logistic, Manfaat, Penggunaan dan Perbandingannya dengan 4PL"}]},{"@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\/32b7f9855e47e032269002db366f1a09","name":"Anatha Ginting","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/01a5baa16cb50808f3b9f5bf1e75940409ab0912a720fcd78e68157b9e1d31e3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/01a5baa16cb50808f3b9f5bf1e75940409ab0912a720fcd78e68157b9e1d31e3?s=96&d=mm&r=g","caption":"Anatha Ginting"},"description":"Anatha sudah berpengalaman selama lebih dari 5 tahun dalam mengulas implementasi dan strategi Enterprise Resource Planning (ERP). Dalam setiap tulisannya, ia membahas peran sistem ERP dalam mengintegrasikan data lintas divisi, merapikan proses operasional, serta membantu perusahaan memahami dan mengelola bisnis secara lebih efektif.","sameAs":["https:\/\/www.linkedin.com\/in\/anathag\/"],"gender":"Perempuan","knowsAbout":["content writing"],"knowsLanguage":["Inggris","Indonesia"],"jobTitle":"Lead Content Writer","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/anatha\/"}]}},"focus_keyword":"3pl third party logistic","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/132323","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\/20"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=132323"}],"version-history":[{"count":9,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/132323\/revisions"}],"predecessor-version":[{"id":155808,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/132323\/revisions\/155808"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/155800"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=132323"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=132323"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=132323"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}