{"id":74862,"date":"2025-08-11T01:53:27","date_gmt":"2025-08-11T01:53:27","guid":{"rendered":"https:\/\/www.hashmicro.com\/blog\/?p=74862"},"modified":"2025-12-31T07:32:24","modified_gmt":"2025-12-31T07:32:24","slug":"esourcing","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/blog\/esourcing\/","title":{"rendered":"What is eSourcing &#038; What are the Benefits? Guide in 2026"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">eSourcing is a core strategy in modern procurement, enabling companies to find top suppliers faster and more transparently. Yet, many still face slow tenders, limited visibility, and difficulty comparing offers, leaving savings unrealized.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Market Research Future projects the global eSourcing market to grow at over <\/span><a href=\"https:\/\/www.marketresearchfuture.com\/reports\/procurement-software-market-3115\"><span style=\"font-weight: 400;\">10% CAGR<\/span><\/a><span style=\"font-weight: 400;\"> through 2032, fueled by procurement digitalization and rising competition. Businesses that delay adoption risk falling behind.<\/span><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/procurement-and-purchasing-management-system\"><b>HashMicro Procurement Software<\/b><\/a><span style=\"font-weight: 400;\"> provides an all-in-one platform to manage sourcing, covering tenders, supplier evaluation, and negotiations. It is integrated with inventory, accounting, and other modules for complete process automation.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This guide will explain eSourcing, how it works, and the key benefits it offers businesses in 2026.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/free-product-tour\/?medium=free-product-tour\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/11\/Free-Product-Tour-resized.webp\" alt=\"Free Demo\"><\/a> <span data-sheets-root=\"1\"><!-- <div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tTable of Content:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div> -->\r\n\r\n<!-- <div class=\"dropdown-fixed-top\" id=\"dropdown-fixed-top\">\r\n\t<div class=\"row\">\r\n\t\t<p id=\"pilihDaftarIsi\">Table of Content<\/p>\r\n\t\t<p><i class=\"td-icon-menu-down\"><\/i><\/p>\r\n\t<\/div>\r\n\t\r\n\t<div>\r\n\t\t<ul id=\"list_toc_top\" class='list_toc'><\/ul>\r\n\t<\/div>\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\">Table of Content<\/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\t@media (max-width: 992px) {\r\n\t\t#toc_group_article {\r\n\t\t\tpadding-top: 24px;\r\n\t\t}\r\n\t}\r\n\t\r\n\t#list_toc_float {\r\n\t\tmax-height: calc(100vh - 250px);\r\n\t\toverflow-y: auto;\r\n\t}\r\n\t\r\n\t#list_toc_top {\r\n\t\tdisplay: none;\r\n\t\tbackground: #fff;\r\n\t\tmargin-bottom: 4px;\r\n\t}\r\n\t\r\n\t#list_toc_top li {\r\n\t\tdisplay: block;\r\n\t\tmargin-left: 0;\r\n\t\tlist-style: none;\r\n\t}\r\n\t\r\n\t#list_toc_top a {\r\n\t\tpadding: 5px;\r\n\t\tdisplay: block;\r\n\t}\r\n\t\r\n\t#list_toc_top.show {\r\n\t\tdisplay: block;\r\n\t}\r\n\r\n\t#list_toc_top a {\r\n\t\tcolor: #434343;\r\n\t\tborder-bottom: 1px solid #bbb;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top {\r\n\t\tposition: fixed;\r\n\t\ttop: 59px;\r\n\t\twidth: 100%;\r\n\t\tz-index: 99;\r\n\t\tborder-bottom: 2px solid #9c171e;\r\n\t\tpadding: 12px;\r\n\t\tbackground: #fff;\r\n\t\twidth: 100%;\r\n\t\tcursor: pointer;\r\n\t\tdisplay: none;\r\n\t\tleft: 0;\r\n\t\tbox-shadow: 0 -2px 7px 6px rgba(0, 0, 0, 0.17);\r\n\t}\r\n\t\r\n\t#dropdown-fixed-top.show {\r\n\t\tanimation: showAnim 0.5s ease;\r\n\t\tdisplay: block;\r\n\t\topacity: 1;\r\n\t}\r\n\t\r\n\t@keyframes showAnim {\r\n\t\tfrom {\r\n\t\t\tdisplay: none;\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\tto {\r\n\t\t\tdisplay: block;\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top #list_toc_top {\r\n\t\tmax-height: calc(50vh - 110px);\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row {\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-between\r\n\t}\r\n\t\r\n\t.dropdown-fixed-top .row p {\r\n\t\tmargin-bottom: 0;\r\n\t}\r\n\t\r\n\t#pilihDaftarIsi {\r\n\t\tmax-width: 100%;\r\n\t\toverflow: hidden;\r\n\t\twhite-space: nowrap;\r\n\t}\r\n\t\r\n\t@media (min-width: 1018px) {\r\n\t\t.dropdown-fixed-top {\r\n\t\t\tdisplay: none;\r\n\t\t}\r\n\t}\r\n\t\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_top 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: 6px;\r\n\t\tpadding-top: 2px;\r\n\t\tpadding-bottom: 2px;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t\tfont-size: 15px;\r\n\t\tline-height: 18px;\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#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\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\r\n<\/style>\r\n\r\n<!-- ToC styling  -->\r\n<style>\r\n\t\/* 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\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<!-- 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\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 + 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 = 'Table of Content';\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 = 'Table of Content'; \/\/ 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 = 'Table of Content'; \/\/ 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 = 'Table of Content'; \/\/ 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\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<!-- START script lama -->\r\n<!-- <script>\r\n\/\/ \tvar pilihDaftarIsi = document.getElementById('pilihDaftarIsi');\r\n\t\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/ \t\tvar dropdownFixedTop = document.querySelector('.dropdown-fixed-top');\r\n\r\n\/\/ \t\tdropdownFixedTop.addEventListener('click', function() {\r\n\/\/ \t\t\tvar dropdownContent = this.querySelector('.list_toc');\r\n\/\/ \t\t\tdropdownContent.classList.toggle('show');\r\n\/\/ \t\t});\r\n\r\n\/\/ \t\twindow.addEventListener('click', function(event) {\r\n\/\/ \t\t\tvar listTocTop = document.getElementById('list_toc_top');\r\n\r\n\/\/ \t\t\tif (!dropdownFixedTop.contains(event.target)) {\r\n\/\/ \t\t\t\tlistTocTop.classList.remove('show');\r\n\/\/ \t\t\t}\r\n\/\/ \t\t});\r\n\/\/ \t});\r\n\t\r\n\/\/ \tvar daftarIsiContainer = document.getElementById('toc_group_article');\r\n\/\/ \tvar dropdownFixedTop = document.getElementById('dropdown-fixed-top');\r\n\/\/     var triggered = false; \/\/ Flag to keep track of whether the function has been triggered\r\n\r\n\/\/     window.addEventListener('scroll', function() {\r\n\/\/         if (!triggered && isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(false);\r\n\/\/             triggered = true;\r\n\/\/         } else if (triggered && !isCompletelyScrolledPast(daftarIsiContainer)) {\r\n\/\/             showSectionDropdownFixedTop(true);\r\n\/\/             triggered = false;\r\n\/\/         }\r\n\/\/     });\r\n\r\n\/\/     function isCompletelyScrolledPast(element) {\r\n\/\/         var elementTop = element.getBoundingClientRect().top;\r\n\/\/         var elementBottom = element.getBoundingClientRect().bottom;\r\n\/\/         return elementTop < 0 && elementBottom < 0;\r\n\/\/     }\r\n\r\n\/\/     function showSectionDropdownFixedTop(show) {\r\n\/\/ \t\tif (show) {\r\n\/\/ \t\t\tdropdownFixedTop.classList.remove(\"show\");\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tdropdownFixedTop.classList.add(\"show\");\r\n\/\/ \t\t}\r\n\/\/     }\r\n<\/script> -->\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        } 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\t\t  pilihDaftarIsi.innerHTML = a.textContent;\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', 'list_toc_top']; \/\/ 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<!-- END script lama -->\r\n\t\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        } 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\t\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\nToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\"\r\n        Fungsi untuk mengubah teks menjadi format id\r\n        function formatId(text) {\r\n            return text.trim().replace(\/[^\\w\\d]+\/g, '_');\r\n        }\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        const elements = document.querySelectorAll('.td-post-content h2');\r\n\t\t\t\/\/, .td-post-content h3\r\n\r\n        elements.forEach(element => {\r\n            if (element.tagName === 'H2') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n                headings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n            } else if (element.tagName === 'H3') {\r\n                const id = formatId(element.textContent);\r\n                element.id = id;\r\n                if (headings.length > 0) {\r\n                    headings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n                }\r\n            }\r\n        });\r\n\r\n        \/\/ Membuat list HTML dari objek headings\r\n        const ul = document.getElementById('list_toc');\r\n        let currentUl = ul;\r\n        headings.forEach(heading => {\r\n            const li = document.createElement('li');\r\n            const a = document.createElement('a');\r\n            a.textContent = heading.title;\r\n            a.href = `#${heading.id}`;\r\n            li.appendChild(a);\r\n\r\n            if (heading.level === 'h2') {\r\n                \/\/ Menyimpan ul saat ini untuk menambahkan nested ul\r\n                currentUl = li;\r\n                ul.appendChild(li);\r\n            } else if (heading.level === 'h3') {\r\n                if (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n                    \/\/ Jika belum ada nested ul, buat satu\r\n                    const nestedUl = document.createElement('ul');\r\n                    currentUl.appendChild(nestedUl);\r\n                    currentUl = nestedUl;\r\n                }\r\n                currentUl.appendChild(li);\r\n            }\r\n\r\n            createNestedList(li, heading.children);\r\n        });\r\n\t\tDapatkan elemen ul dengan id 'list_toc_float'\r\nconst ulFloat = document.getElementById('list_toc');\r\nconst ulJourney = document.getElementById('list_journey');\r\n\r\nDapatkan isi (child elements) dari ul dengan id 'list_toc_float'\r\n\tif (ulFloat !== null) {\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\t\tconst ulTocTop = document.getElementById('list_toc_top');\r\n\t\tif ((ulToc !== null || ulToc !== undefined) && window.innerWidth > 1018){\r\n\t\t\tulToc.append(...clonedChildren);\r\n\t\t} else {\r\n\t\t\tulTocTop.append(...clonedChildren);\r\n\t\t}\r\n\t} \r\n\r\n\tif (ulJourney !== null) {\r\n\t\tconst clonedChildrenJourney = ulJourney.cloneNode(true).children;\r\n\t\tconst ulTocJourney = document.getElementById('list_toc_journey');\r\n\t\tulTocJourney.append(...clonedChildrenJourney);\r\n\t} \r\n\t\r\n        Fungsi untuk mengambil tinggi navbar\r\n        function getNavbarHeight() {\r\n            const navbar = document.getElementById('tdi_34');\r\n            return navbar ? navbar.offsetHeight : 0;\r\n        }\r\n\r\n        \/\/ Fungsi untuk menambahkan offset posisi scroll\r\n        function scrollToElementWithOffset(elementId) {\r\n            const element = document.getElementById(elementId);\r\n            if (element) {\r\n                const offset = getNavbarHeight();\r\n                const elementPosition = element.getBoundingClientRect().top;\r\n                const offsetPosition = elementPosition - offset-40;\r\n\r\n                window.scrollBy({\r\n                    top: offsetPosition,\r\n                    behavior: 'smooth'\r\n                });\r\n            }\r\n        }\r\n\r\n        \/\/ Fungsi untuk menangani klik pada tautan judul\r\n        function handleTitleClick(event) {\r\n            event.preventDefault();\r\n            const href = event.target.getAttribute('href').substr(1);\r\n            scrollToElementWithOffset(href);\r\n        }\r\n\r\n        \/\/ Tambahkan event listener untuk semua tautan judul\r\n        const titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n        titleLinks.forEach(link => {\r\n            link.addEventListener('click', handleTitleClick);\r\n        });\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/span><\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); 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 data-start=\"2\" data-end=\"150\"><a href=\"#what\">eSourcing is<\/a> a digital approach to efficiently finding, evaluating, and selecting suppliers through online bidding and automated tender processes.<\/li>\n<li data-start=\"153\" data-end=\"285\"><a href=\"#benefits\">It delivers cost savings<\/a>, faster procurement cycles, better supplier selection, and enhanced transparency in the sourcing process.<\/li>\n<li data-start=\"288\" data-end=\"461\"><a href=\"https:\/\/www.hashmicro.com\/procurement-and-purchasing-management-system\">HashMicro Procurement<\/a> provides an integrated eSourcing solution with bid management, supplier evaluation, and seamless ERP integration to optimize every sourcing decision.<\/li>\n<\/ul>\n<p><span data-sheets-root=\"1\"><style>\r\n.button-cta-custom {\r\n    background-color: #8a0e19;\r\n    color: #fff !important;\r\n    -webkit-transition: all .3s ease;\r\n    transition: all .3s ease;\r\n    padding: 8px 24px;\r\n    display: inline-block;\r\n    border-radius: 8px;\r\n    font-size: 16px;\r\n    font-weight: bold;\r\n}\r\n.button-cta-custom:hover{\r\n\tbackground-color:#991b26\t\t\r\n}\r\n<\/style>\r\n<a class=\"button-cta-custom\" href=\"https:\/\/www.hashmicro.com\/free-product-tour\/?medium=cta-button\" target=\"_blank\">Book a Demo Now!<\/a><\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong>What is eSourcing?<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">eSourcing is the use of digital platforms to find, evaluate, and select suppliers efficiently. It automates tender processes, enabling businesses to compare bids, negotiate, and choose the best offers online.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In practice, eSourcing typically involves creating electronic requests for information (eRFI), requests for proposal (eRFP), or requests for quotation (eRFQ) that are shared with multiple suppliers.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Beyond that, eSourcing also supports <\/span><a href=\"https:\/\/www.hashmicro.com\/blog\/vendor-sourcing\/\"><span style=\"font-weight: 400;\">vendor sourcing<\/span><\/a><span style=\"font-weight: 400;\">, making it easier to identify reliable suppliers, maintain strong relationships, and ensure each procurement decision delivers the best value.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The main goal is to improve supplier selection and negotiation efficiency, reduce procurement costs, and provide a clear audit trail for compliance and accountability.<\/span><\/p>\n<h2><strong>How Does eSourcing Work?<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">eSourcing follows a clear and structured process that ensures every stage of supplier selection is transparent and efficient. By moving these steps online, businesses can reduce delays, improve comparisons, and make better sourcing decisions. Here\u2019s how it typically works:<\/span><\/p>\n<ol>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Define Requirements<\/b><span style=\"font-weight: 400;\"> \u2013 The procurement team outlines product or service specifications, quantities, delivery timelines, and evaluation criteria.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Invite Suppliers<\/b><span style=\"font-weight: 400;\"> \u2013 Potential suppliers are selected and invited to participate through the eSourcing platform.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Receive Electronic Bids<\/b><span style=\"font-weight: 400;\"> \u2013 Suppliers submit proposals, quotations, or information requests (eRFQ, eRFP, or eRFI) directly through the system.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Compare Offers<\/b><span style=\"font-weight: 400;\"> \u2013 The platform organizes submissions, allowing buyers to compare prices, delivery terms, and qualifications side by side.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Evaluate &amp; Score<\/b><span style=\"font-weight: 400;\"> \u2013 Procurement teams assess bids using scoring models or analytics to ensure objective, data-driven decisions.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Negotiate Terms<\/b><span style=\"font-weight: 400;\"> \u2013 Some eSourcing tools enable real-time negotiations or reverse auctions to secure better pricing or contract terms.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Award Contract<\/b><span style=\"font-weight: 400;\"> \u2013 The best supplier is selected, and the agreement is finalized through the platform.<\/span><\/li>\n<\/ol>\n<h2><strong>Benefits of eSourcing<\/strong><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-74874 size-full\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing.webp\" alt=\"what is esourcing\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing.webp 1200w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-300x169.webp 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-768x432.webp 768w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-747x420.webp 747w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-150x84.webp 150w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-696x392.webp 696w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/what-is-esourcing-1068x601.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">eSourcing offers more than just digitizing the procurement process, it streamlines operations, reduces costs, and strengthens supplier relationships. Here are four key benefits:<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">1. Cost efficiency<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">eSourcing helps businesses secure the most favorable offers by enabling competitive bidding and transparent price comparisons. It also cuts indirect costs such as excessive administrative work and delays common in manual sourcing.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">2. Time savings<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Automation in sending bid requests, tracking submissions, and evaluating proposals significantly reduces the sourcing cycle. Procurement teams can manage more projects in less time and respond quickly to urgent requirements.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">3. Better supplier decisions<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Centralized data and consistent evaluation criteria make it easier to compare suppliers fairly. This ensures decisions are based on measurable factors like quality performance, delivery reliability, and past contract history.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">4. Greater transparency<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Every step, from tender creation to contract award, is digitally recorded, providing a complete audit trail. This promotes accountability, improves compliance, and builds trust with stakeholders and suppliers.<\/span><\/p>\n<h2><strong>eSourcing vs. eProcurement<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Although <\/span><b>eSourcing<\/b><span style=\"font-weight: 400;\"> and <\/span><b>eProcurement<\/b><span style=\"font-weight: 400;\"> are often used interchangeably, they refer to different stages of the procurement process.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">eSourcing focuses on the initial phase finding, evaluating, and selecting suppliers while eProcurement covers the broader process of purchasing goods and services, from requisition to payment.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Understanding the distinction between <\/span><a href=\"https:\/\/www.hashmicro.com\/blog\/procurement-vs-sourcing\/\"><span style=\"font-weight: 400;\">procurement vs sourcing<\/span><\/a><span style=\"font-weight: 400;\"> is essential for building an efficient procurement strategy.<\/span><\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"text-align: center;\"><strong>Aspect<\/strong><\/td>\n<td style=\"text-align: center;\"><strong>eSourcing<\/strong><\/td>\n<td style=\"text-align: center;\"><strong>eProcurement<\/strong><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Primary Focus<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Identifying and selecting the best suppliers through competitive bidding.<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Managing the entire purchasing process from order to payment.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Main Activities<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Requesting bids, evaluating proposals, negotiating terms.<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Purchase requests, approvals, ordering, invoicing, and payment processing.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Objective<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Secure the best supplier in terms of price, quality, and delivery.<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Ensure smooth, efficient, and compliant procurement transactions.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Tools Used<\/span><\/td>\n<td><span style=\"font-weight: 400;\">eRFI, eRFP, eRFQ, reverse auctions.<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Purchase order systems, invoice management, and payment platforms.<\/span><\/td>\n<\/tr>\n<tr>\n<td><span style=\"font-weight: 400;\">Stage in Process<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Early stage of the procurement cycle.<\/span><\/td>\n<td><span style=\"font-weight: 400;\">Post-sourcing stage execution of purchase and payment.<\/span><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong>Types of eSourcing<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">eSourcing can take various forms depending on the procurement needs, the type of goods or services, and the level of supplier engagement required. Below are some of the most common types:<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">1. Request for information (RFI)<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Used to gather general details from suppliers about their capabilities, products, or services. RFIs are typically the first step in understanding market options before moving to formal bidding.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">2. Request for proposal (RFP)<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">A detailed document sent to shortlisted suppliers outlining specific requirements and asking for comprehensive proposals. RFPs are common for complex projects that need tailored solutions.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">3. Request for quotation (RFQ)<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Focuses on obtaining precise pricing and terms for a well-defined product or service. RFQs are best suited when specifications are precise and price is the main deciding factor.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\">4. Reverse Auction<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">An online bidding event where suppliers compete to offer the lowest price for goods or services, often in real-time. This format encourages competition and can lead to significant cost savings.<\/span><\/p>\n<h2><strong>Transform Your eSourcing with HashMicro Procurement<\/strong><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-74873 size-full\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2.webp\" alt=\"procurement hashmicro \" width=\"890\" height=\"573\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2.webp 890w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2-300x193.webp 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2-768x494.webp 768w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2-652x420.webp 652w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2-150x97.webp 150w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/procurement-hashmicro-2-696x448.webp 696w\" sizes=\"auto, (max-width: 890px) 100vw, 890px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/procurement-and-purchasing-management-system\"><span style=\"font-weight: 400;\">HashMicro Procurement Software<\/span><\/a><span style=\"font-weight: 400;\"> streamlines eSourcing, from managing RFIs, RFPs, and RFQs to running reverse auctions with real-time bid comparisons. Its tools help you select suppliers based on price, quality, delivery performance, and history, ensuring data-driven decisions.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Integrated with inventory, accounting, and other ERP modules, it keeps digital sourcing aligned with stock levels, budgets, and business goals. This approach shortens sourcing cycles, improves supplier quality, increases transparency, and delivers significant cost savings.<\/span><\/p>\n<p><strong>Key features of HashMicro Procurement:<\/strong><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Hashy AI: <\/b><span style=\"font-weight: 400;\">AI-powered tool that streamlines tender management, creating tenders faster, matching the right vendors, comparing bids, and ensuring compliance.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Cost Savings Tracking &amp; Reporting<\/b><span style=\"font-weight: 400;\">: Monitor your cost savings in detail by comparing budgeted amounts with actual expenses, making it easy to measure how much you\u2019ve saved on each purchase.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Budget Control &amp; Purchase Limits<\/b><span style=\"font-weight: 400;\">: Easily set spending caps and track budgets to ensure all procurement activities remain within approved limits.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Vendor Portal<\/b><span style=\"font-weight: 400;\">: Say goodbye to scattered phone calls and messy email threads. Manage vendor communications, procurement, and negotiations in one centralized platform.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Automatic Vendor Rating<\/b><span style=\"font-weight: 400;\">: Easily identify top-performing suppliers. The system ranks vendors automatically based on key factors like pricing, service quality, and reliability, helping you choose the best partners.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><b>Purchaser KPI Tracking<\/b><span style=\"font-weight: 400;\">: Keep your procurement team on target by setting and tracking specific goals, from achieving cost savings to improving negotiation outcomes.<\/span><\/li>\n<\/ul>\n<h2><span style=\"font-weight: 400;\"><strong>Conclusion<\/strong>\u00a0<\/span><\/h2>\n<p><span style=\"font-weight: 400;\">eSourcing is the digital approach to sourcing suppliers, using online tools to request, compare, and evaluate bids. It streamlines the procurement process, making it faster, more transparent, and more cost-efficient.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Adopting eSourcing is no longer optional; it\u2019s essential for businesses that want to secure the best suppliers, reduce costs, and maintain complete control over procurement operations. Making data-driven, transparent decisions gives companies a significant edge over traditional methods.<\/span><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/procurement-and-purchasing-management-system\"><b>HashMicro Procurement Software<\/b><\/a><span style=\"font-weight: 400;\"> provides a complete eSourcing solution, from RFIs and RFPs to reverse auctions and supplier evaluation. It is integrated with inventory, accounting, and other ERP modules for aligned, efficient decisions.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Take the first step toward more innovative online sourcing. Book a<\/span> <a href=\"https:\/\/www.hashmicro.com\/free-product-tour\/\"><b>free demo<\/b><\/a><span style=\"font-weight: 400;\"> with HashMicro today and see how to transform your procurement process into a strategic advantage.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/procurement-and-purchasing-management-system?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/06\/Procurement.webp\" alt=\"Procurement\"><\/a><\/span><\/p>\n<h3><strong>FAQ About eSourcing<\/strong><\/h3>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>What are the 4 pillars of sourcing?<\/strong><\/summary>\n<p>Strategic sourcing can be broken down into four main pillars: spend analysis, sourcing, contract management, and supplier relationship management.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>What are sourcing strategies?<\/strong><\/summary>\n<p>Strategic sourcing takes a focused approach to procurement, enabling companies to formalize how they collect and analyze information. This helps them secure the best value while aligning sourcing decisions with long-term objectives.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>What is sourcing methodology?<\/strong><\/summary>\n<p>Sourcing is the practice of finding, evaluating, and working with suppliers to obtain goods and services for a business. Its main goal has always been the same: to secure dependable suppliers who can deliver quickly at competitive prices. However, the modern business landscape is becoming increasingly complex.<\/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\": \"What are the 4 pillars of sourcing?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Strategic sourcing can be broken down into four main pillars: spend analysis, sourcing, contract management, and supplier relationship management.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"What are sourcing strategies?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Strategic sourcing takes a focused approach to procurement, enabling companies to formalize how they collect and analyze information. This helps them secure the best value while aligning sourcing decisions with long-term objectives.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"What is sourcing methodology?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Sourcing is the practice of finding, evaluating, and working with suppliers to obtain goods and services for a business. Its main goal has always been the same: to secure dependable suppliers who can deliver quickly at competitive prices. However, the modern business landscape is becoming increasingly complex.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>eSourcing is a core strategy in modern procurement, enabling companies to find top suppliers faster and more transparently. Yet, many still face slow tenders, limited visibility, and difficulty comparing offers, leaving savings unrealized. Market Research Future projects the global eSourcing market to grow at over 10% CAGR through 2032, fueled by procurement digitalization and rising [&hellip;]<\/p>\n","protected":false},"author":218,"featured_media":74872,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1128],"tags":[],"class_list":{"0":"post-74862","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-procurement"},"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.6 (Yoast SEO v26.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is eSourcing &amp; What are the Benefits? Guide in 2026<\/title>\n<meta name=\"description\" content=\"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency\" \/>\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\/blog\/esourcing\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is eSourcing &amp; What are the Benefits? Guide in 2026\" \/>\n<meta property=\"og:description\" content=\"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\" \/>\n<meta property=\"og:site_name\" content=\"BusinessTech\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/web.facebook.com\/hashmicro\/\" \/>\n<meta property=\"article:published_time\" content=\"2025-08-11T01:53:27+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-31T07:32:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Aulia kholqiana\" \/>\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=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Aulia kholqiana\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\"},\"author\":{\"name\":\"Aulia kholqiana\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/8ba48ccbeb0c9f5c51940619f406e5e7\"},\"headline\":\"What is eSourcing &#038; What are the Benefits? Guide in 2026\",\"datePublished\":\"2025-08-11T01:53:27+00:00\",\"dateModified\":\"2025-12-31T07:32:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\"},\"wordCount\":1398,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp\",\"articleSection\":[\"Procurement\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\",\"name\":\"What is eSourcing & What are the Benefits? Guide in 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp\",\"datePublished\":\"2025-08-11T01:53:27+00:00\",\"dateModified\":\"2025-12-31T07:32:24+00:00\",\"description\":\"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/blog\/esourcing\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp\",\"width\":1200,\"height\":675,\"caption\":\"esourcing\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/esourcing\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is eSourcing &#038; What are the Benefits? Guide in 2026\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/\",\"name\":\"BusinessTech\",\"description\":\"Business Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\",\"name\":\"HashMicro\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png\",\"width\":334,\"height\":51,\"caption\":\"HashMicro\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/web.facebook.com\/hashmicro\/\",\"https:\/\/x.com\/hashmicro\",\"https:\/\/www.linkedin.com\/company\/hashmicro\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/8ba48ccbeb0c9f5c51940619f406e5e7\",\"name\":\"Aulia kholqiana\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/931ae97d65fd0cb268c0fee01894227194a67eedeffd37f1aa9c307c99275c35?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/931ae97d65fd0cb268c0fee01894227194a67eedeffd37f1aa9c307c99275c35?s=96&d=mm&r=g\",\"caption\":\"Aulia kholqiana\"},\"description\":\"As a content writer who turns technical complexity into compelling narratives, my words guide businesses through the labyrinth of technology, transforming challenges into opportunities for growth.\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/author\/auliakholqiana\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is eSourcing & What are the Benefits? Guide in 2026","description":"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency","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\/blog\/esourcing\/","og_locale":"en_US","og_type":"article","og_title":"What is eSourcing & What are the Benefits? Guide in 2026","og_description":"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency","og_url":"https:\/\/www.hashmicro.com\/blog\/esourcing\/","og_site_name":"BusinessTech","article_publisher":"https:\/\/web.facebook.com\/hashmicro\/","article_published_time":"2025-08-11T01:53:27+00:00","article_modified_time":"2025-12-31T07:32:24+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp","type":"image\/webp"}],"author":"Aulia kholqiana","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Written by":"Aulia kholqiana","Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/"},"author":{"name":"Aulia kholqiana","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/8ba48ccbeb0c9f5c51940619f406e5e7"},"headline":"What is eSourcing &#038; What are the Benefits? Guide in 2026","datePublished":"2025-08-11T01:53:27+00:00","dateModified":"2025-12-31T07:32:24+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/"},"wordCount":1398,"publisher":{"@id":"https:\/\/www.hashmicro.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp","articleSection":["Procurement"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/","url":"https:\/\/www.hashmicro.com\/blog\/esourcing\/","name":"What is eSourcing & What are the Benefits? Guide in 2026","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp","datePublished":"2025-08-11T01:53:27+00:00","dateModified":"2025-12-31T07:32:24+00:00","description":"Discover what eSourcing is, its benefits, and how it streamlines vendor sourcing, tender management, and procurement efficiency","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/blog\/esourcing\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#primaryimage","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/08\/esourcing.webp","width":1200,"height":675,"caption":"esourcing"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/blog\/esourcing\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What is eSourcing &#038; What are the Benefits? Guide in 2026"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/blog\/#website","url":"https:\/\/www.hashmicro.com\/blog\/","name":"BusinessTech","description":"Business Management Blog","publisher":{"@id":"https:\/\/www.hashmicro.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/blog\/#organization","name":"HashMicro","url":"https:\/\/www.hashmicro.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2016\/02\/bt_logo-1.png","width":334,"height":51,"caption":"HashMicro"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/web.facebook.com\/hashmicro\/","https:\/\/x.com\/hashmicro","https:\/\/www.linkedin.com\/company\/hashmicro"]},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/8ba48ccbeb0c9f5c51940619f406e5e7","name":"Aulia kholqiana","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/931ae97d65fd0cb268c0fee01894227194a67eedeffd37f1aa9c307c99275c35?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/931ae97d65fd0cb268c0fee01894227194a67eedeffd37f1aa9c307c99275c35?s=96&d=mm&r=g","caption":"Aulia kholqiana"},"description":"As a content writer who turns technical complexity into compelling narratives, my words guide businesses through the labyrinth of technology, transforming challenges into opportunities for growth.","url":"https:\/\/www.hashmicro.com\/blog\/author\/auliakholqiana\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/74862","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/users\/218"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/comments?post=74862"}],"version-history":[{"count":3,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/74862\/revisions"}],"predecessor-version":[{"id":78066,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/74862\/revisions\/78066"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media\/74872"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media?parent=74862"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/categories?post=74862"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/tags?post=74862"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}