{"id":4483,"date":"2025-03-10T07:00:23","date_gmt":"2025-03-10T07:00:23","guid":{"rendered":"https:\/\/www.hashmicro.com\/my\/blog\/?p=4483"},"modified":"2026-04-14T02:32:27","modified_gmt":"2026-04-14T02:32:27","slug":"procurement-risk","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/","title":{"rendered":"What are Procurement Risks and How to Manage Them"},"content":{"rendered":"<p>Envision navigating a labyrinth where each turn presents potential pitfalls; this is akin to managing procurement risk in today&#8217;s complex business environment. Without proper oversight, these risks can result in financial losses, supply chain interruptions, and damage to a company&#8217;s reputation.\u200b<\/p>\n<p>Common procurement risks include supplier unreliability, price volatility, and challenges adhering to regulatory standards. Failure to manage these risks effectively can disrupt operations and erode profitability.\u200b<\/p>\n<p>For instance, a Business Continuity Institute (BCI) report found that only 57% of global key suppliers have Business Continuity Plans (BCP), leaving 43% without any supply chain risk mitigation strategies in case of major disruptions like a pandemic. This lack of preparedness increases <a href=\"https:\/\/procurementtactics.com\/procurement-statistics\/\" target=\"_blank\" rel=\"noopener\">procurement risk<\/a>, making businesses more susceptible to supply chain failures, financial losses, and operational instability.<\/p>\n<p>To navigate these challenges successfully, it&#8217;s imperative to delve deeper into procurement risks and consider implementing specialized software solutions. This article will help you understand these risks and the tools available to mitigate them, ensuring your business thrives amidst uncertainties.<\/p>\n<p><!-- <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\">Content Lists<\/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<!-- TOC mobile -->\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<!-- TOC mobile -->\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}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\t\t\t\t\r\n\t}\r\n\r\n<\/style>\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<!-- START 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<!-- END ToC styling  -->\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<\/script>\r\n\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\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', '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\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\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;} \/\/ Biar ga nampilin Key Takeaways di ToC\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\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\nconst ulFloat = document.getElementById('list_toc');\r\nconst ulJourney = document.getElementById('list_journey');\r\n\r\n\/\/ Dapatkan 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\r\n\r\n\r\n\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<!-- \t<style>#toc_group_float{display:block !important}<\/style> -->\r\n <a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/?medium=free-product-demo\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/free-demo-desktop-my.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/free-demo-desktop-my.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/07\/free-demo-mobile-my.jpg\" alt=\"FreeDemo\" 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><\/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 style=\"font-weight: 400;\" aria-level=\"1\">Procurement risks, such as supplier unreliability, price fluctuations, and regulatory non-compliance, can disrupt operations and lead to financial losses.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Implementing digital procurement solutions allows businesses to automate supplier evaluations, streamline approvals, and improve procurement visibility. This reduces errors, enhances compliance, and strengthens the overall supply chain.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/www.hashmicro.com\/my\/procurement-and-purchasing-management-system\">HashMicro\u2019s Procurement Software<\/a> offers a robust risk management solution. With its comprehensive features, HashMicro helps businesses mitigate procurement risks efficiently.<\/li>\n<\/ul>\n<p><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\/my\/free-product-demo?medium=cta-button\" target=\"_blank\">Click Here to Get the Free Demo!<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong>What are Procurement Risks?<\/strong><\/h2>\n<p>Procurement risk refers to potential disruptions in the purchasing process that can impact a business\u2019s ability to acquire goods and services efficiently. These risks may arise from unreliable suppliers, fluctuating costs, regulatory non-compliance, or poor-quality materials, all of which can affect operational stability and financial performance.<\/p>\n<p>Effective risk management in procurement is essential to prevent unexpected challenges that could lead to delays or financial losses. Businesses that fail to implement a structured procurement risk management strategy may experience supply chain disruptions, missed deadlines, or increased costs due to supplier failures or external economic factors.<\/p>\n<p>A well-managed supply chain risk strategy involves diversifying supplier networks, conducting thorough vendor evaluations, and leveraging technology to enhance procurement visibility. By proactively addressing purchasing risk, companies can mitigate uncertainties and ensure consistent access to essential materials and services, maintaining business continuity.<\/p>\n<p>Companies must strengthen their procurement risk management efforts to stay competitive and resilient with today&#8217;s evolving market conditions. Adopting <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-procurement-software\/\">procurement software<\/a>, establishing clear contractual agreements, and continuously monitoring supplier performance are key steps in safeguarding procurement processes against potential disruptions.<\/p>\n<h2><strong>The Critical Role of Procurement Risk Management for Businesses<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4486\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1.jpg\" alt=\"procurement risk\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1.jpg 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-300x169.jpg 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-1024x576.jpg 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-768x432.jpg 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-747x420.jpg 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-150x84.jpg 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-696x392.jpg 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-1-1068x601.jpg 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Effective procurement risk management is essential for ensuring business stability and long-term success. Without proper risk management in procurement, companies face financial instability, supply chain disruptions, and compliance challenges that can negatively impact their operations.<\/p>\n<ul>\n<li><strong>Financial stability:<\/strong> Managing purchasing risk helps businesses avoid unexpected costs caused by supplier failures, price fluctuations, or market volatility. A proactive approach ensures better budget control, minimizes financial losses, and protects profit margins.<\/li>\n<li><strong>Supply chain continuity:<\/strong> A strong supply chain risk strategy ensures businesses have a steady flow of essential goods and services. Identifying risks early prevents operational delays, production halts, and costly interruptions in procurement processes.<\/li>\n<li><strong>Regulatory compliance:<\/strong> Adhering to legal and industry regulations is crucial to procurement risk management. By ensuring that procurement practices comply with all legal requirements, businesses can avoid penalties, fines, and reputational damage.<\/li>\n<li><strong>Quality assurance:<\/strong> Effective risk management in procurement guarantees that suppliers meet the company\u2019s quality standards for products and services. This enhances customer satisfaction and strengthens brand credibility in the market.<\/li>\n<li><strong>Competitive advantage:<\/strong> Companies proactively managing procurement risk can respond faster to market shifts, supplier changes, and economic uncertainties. This agility provides a strategic edge, allowing businesses to seize opportunities while minimizing disruptions.<\/li>\n<\/ul>\n<h2><strong>7 Key Procurement Risks That Impact Businesses in Malaysia<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4487\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2.jpg\" alt=\"procurement risk\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2.jpg 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-300x169.jpg 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-1024x576.jpg 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-768x432.jpg 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-747x420.jpg 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-150x84.jpg 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-696x392.jpg 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-2-1068x601.jpg 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Understanding and mitigating procurement risk is essential for maintaining smooth operations and financial stability. Failing to address these risks can lead to supply chain disruptions, unexpected costs, and compliance issues that may harm business performance.<\/p>\n<p>Below are seven key purchasing risks that businesses should be aware of and proactively manage.<\/p>\n<h3>1. Supplier reliability issues<\/h3>\n<p>Unreliable suppliers can cause delivery delays, inconsistent product quality, and production slowdowns. These disruptions affect operational efficiency and customer satisfaction and brand reputation.<\/p>\n<p>Without proper procurement risk management, businesses may struggle with last-minute supplier changes, increasing costs. Establishing strong vendor evaluation and backup supplier strategies can help mitigate this risk.<\/p>\n<h3>2. Price volatility<\/h3>\n<p>Fluctuating market prices can lead to unexpected financial strain, making it difficult to maintain stable profit margins. Without effective risk management in procurement, businesses may face sudden cost surges in raw materials, transportation, or production.<\/p>\n<p>This unpredictability can disrupt budgeting and limit financial flexibility. To minimize purchasing risk, businesses should consider long-term supplier contracts, hedging strategies, and cost-monitoring tools.<\/p>\n<h3>3. Regulatory compliance<\/h3>\n<p>Failure to comply with industry regulations can result in fines, legal disputes, and supply chain interruptions. Businesses must stay updated on evolving compliance requirements to avoid unnecessary risks.<\/p>\n<p>An efficient procurement risk management strategy ensures procurement practices align with legal frameworks, reducing the chances of violations. Automated compliance checks and regular audits can safeguard businesses from regulatory penalties.<\/p>\n<h3>4. Logistical challenges<\/h3>\n<p>Transportation delays, supply chain bottlenecks, and infrastructure limitations can significantly disrupt procurement processes. Businesses relying on global or regional suppliers may encounter shipment delays, port congestion, or unexpected freight costs.<\/p>\n<p>Poor logistics planning can lead to production halts and increased operational expenses. Investing in reliable logistics partners and utilizing digital supply chain risk monitoring tools can enhance efficiency.<\/p>\n<h3>5. Political and economic instability<\/h3>\n<p>Shifts in government policies, inflation, and economic downturns can create uncertainty in procurement operations. Changes in trade regulations or taxation policies may directly impact supplier costs and availability.<\/p>\n<p>Businesses not incorporating risk management into procurement strategies may face sudden supply chain disruptions. A proactive approach includes diversifying suppliers, monitoring economic trends, and maintaining flexible procurement agreements.<\/p>\n<h3>6. Environmental risks<\/h3>\n<p>Natural disasters such as typhoons, earthquakes, or floods can damage supply chains, resulting in material shortages and financial losses. These unpredictable events can cause production delays and increase transportation costs.<\/p>\n<p>Businesses without a solid procurement risk management plan may struggle to recover from such disruptions. Implementing contingency planning, securing alternative suppliers, and leveraging risk assessment tools can help mitigate environmental risks.<\/p>\n<h3>7. Cybersecurity threats<\/h3>\n<p>As <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-manufacturing-procurement-software\/\">procurement systems<\/a> become more digital, businesses are increasingly exposed to cyber threats, data breaches, and hacking attempts. A security breach can compromise sensitive procurement data, leading to operational downtime and reputational damage.<\/p>\n<p>Companies risk financial losses due to fraudulent transactions or system failures without strong cybersecurity measures. Strengthening cybersecurity frameworks, using encrypted procurement platforms, and training employees on cyber awareness can significantly reduce this procurement risk.<\/p>\n<p>By proactively addressing these purchasing risks, businesses can enhance operational resilience, improve financial stability, and maintain supply chain continuity. A comprehensive procurement risk management strategy ensures businesses can navigate uncertainties while staying competitive.<\/p>\n<a href=\"https:\/\/www.hashmicro.com\/my\/offer\/download-erp-pricing-list?medium=banner-article\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-desktop-my.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-desktop-my.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/08\/skema-harga-mobile-my.webp\" alt=\"SkemaHarga\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script>\n<h2><strong>How to Mitigate Procurement Risk So Your Business Grows Fast<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4489\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4.jpg\" alt=\"procurement risk\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4.jpg 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-300x169.jpg 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-1024x576.jpg 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-768x432.jpg 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-747x420.jpg 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-150x84.jpg 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-696x392.jpg 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-4-1068x601.jpg 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Effectively managing procurement risk ensures smooth business operations and long-term growth. A proactive approach to risk management in procurement helps minimize disruptions, maintain supply chain stability, and protect financial health.<\/p>\n<p>Below are five key strategies to mitigate risks and enhance your procurement process.<\/p>\n<h3>1. Build strong and reliable supplier relationships<\/h3>\n<p>Building solid partnerships with suppliers fosters trust, reliability, and long-term collaboration. A strong supplier network ensures consistent product quality, timely deliveries, and fewer disruptions in your supply chain.<\/p>\n<p>Open communication and regular performance evaluations help address potential issues before they escalate. Investing in supplier relationship management tools can further enhance efficiency and transparency.<\/p>\n<h3>2. Expand and diversify your supplier network<\/h3>\n<p>Relying on a single supplier increases the risk of operational disruptions due to unexpected failures or shortages. By sourcing from multiple vendors, businesses can create a flexible procurement network that ensures supply continuity.<\/p>\n<p>This approach helps mitigate supply chain risk caused by market fluctuations, economic instability, or unforeseen supplier issues. A diversified supply base strengthens negotiation power, potentially leading to better pricing and contract terms.<\/p>\n<h3>3. Establish well-defined and secure procurement contracts<\/h3>\n<p>Clearly defined contracts protect businesses from purchasing risk by outlining key terms, conditions, and performance expectations. Strong contracts include penalty clauses, quality standards, and compliance requirements, ensuring suppliers adhere to agreed-upon commitments.<\/p>\n<p>Legal safeguards within procurement contracts help mitigate risks related to non-compliance, delayed deliveries, or disputes. Regular contract reviews and updates ensure alignment with evolving business needs and market conditions.<\/p>\n<h3>4. Conduct regular procurement risk assessments<\/h3>\n<p>Performing routine evaluations of procurement processes helps identify vulnerabilities before they become major issues. Businesses should assess factors such as supplier performance, market stability, and regulatory changes to avoid potential threats.<\/p>\n<p>An effective procurement risk management strategy involves ongoing monitoring and scenario planning to develop contingency measures. Implementing risk assessment frameworks ensures that procurement operations remain resilient against disruptions.<\/p>\n<h3>5. Utilize technology to strengthen procurement processes<\/h3>\n<p>Utilizing digital procurement solutions enhances efficiency, transparency, and risk mitigation. Advanced <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-management-system\/\">procurement management systems<\/a> provide real-time data analytics, automated workflows, and predictive insights to improve procurement risk management.<\/p>\n<p>Technology-driven tools help streamline supplier evaluation, track compliance, and detect potential disruptions before they occur. Investing in procurement software strengthens decision-making, reduces manual errors, and enhances overall business agility.<\/p>\n<p>By implementing these strategies, businesses can proactively manage procurement risk and build a more resilient supply chain. A well-structured procurement risk management approach protects against disruptions and supports business growth and operational efficiency.<\/p>\n<h2><strong>How HashMicro\u2019s Procurement Software Provides the Best Solution for Managing Procurement Risks<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-4488\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3.jpg\" alt=\"hashmicro procurement software\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3.jpg 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-300x169.jpg 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-1024x576.jpg 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-768x432.jpg 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-747x420.jpg 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-150x84.jpg 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-696x392.jpg 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk-3-1068x601.jpg 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><strong><a href=\"https:\/\/www.hashmicro.com\/my\/procurement-and-purchasing-management-system\">HashMicro\u2019s procurement software<\/a><\/strong> empowers businesses by streamlining procurement processes and minimizing risks. With automated purchase order (PO), request for quotation (RFQ), and purchase requisition (PR) management, companies can reduce manual errors, improve accuracy, and maintain control over their procurement workflows.<\/p>\n<p>Experience the power of procurement risk management with HashMicro\u2019s advanced procurement system. Through a <a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/?medium=web-form-header\">free demo<\/a>, businesses can explore how automation enhances risk mitigation, accelerates approvals, and ensures procurement transparency\u2014all while improving overall efficiency.<\/p>\n<p><strong>Why Choose HashMicro?<\/strong> HashMicro\u2019s procurement software integrates seamlessly with <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-erp-software\/\">ERP software<\/a> to automate key processes, such as PR approval management, vendor evaluations, and landed cost calculations, ensuring businesses maintain a structured, risk-free procurement system. The online supplier portal enhances communication and transparency, reducing supply chain disruptions.<\/p>\n<p>Key Features of HashMicro\u2019s Procurement Software for Risk Mitigation:<\/p>\n<ul>\n<li><strong>PO, RFQ, and PR Management \u2013<\/strong> The system automates purchase orders (PO), requests for quotations (RFQ), and purchase requisitions (PR) in one platform, reducing manual workload and improving accuracy. This ensures a faster procurement cycle, fewer errors, and better cost control.<\/li>\n<li><strong>PR Approval Management \u2013<\/strong> The software automates and tracks purchase requisition (PR) approvals, ensuring compliance with internal policies and speeding up approval processes. This leads to greater efficiency, reduced delays, and improved transparency in procurement workflows.<\/li>\n<li><strong>Online Portal for Suppliers\u2014 <\/strong>Businesses can collaborate with suppliers in real time through a centralized online portal, allowing seamless communication and document exchange. This enhances supplier relationships, reduces miscommunication, and ensures timely procurement decisions.<\/li>\n<li><strong>Vendor\/Supplier Rating \u2013<\/strong> The system evaluates suppliers based on performance metrics such as delivery time, quality, and pricing to ensure informed decision-making. This helps businesses select the best vendors, minimize supply chain risks, and improve procurement reliability.<\/li>\n<li><strong>Blanket Order Management \u2013<\/strong> Companies can create long-term agreements with suppliers for fixed-priced bulk purchases, reducing administrative effort. This results in cost savings, consistent supply availability, and better financial planning.<\/li>\n<li><strong>Landed Cost Calculation \u2013<\/strong> The software automatically calculates the total cost of imported goods, including taxes, duties, and shipping fees, for precise expense tracking. This ensures accurate pricing, better budgeting, and improved profit margins.<\/li>\n<li><strong>Integration with Other Systems and Apps \u2013<\/strong> The procurement system seamlessly integrates with ERP, accounting, and inventory management software, enabling real-time data synchronization. This allows businesses to improve operational efficiency, eliminate data silos, and make informed financial decisions.<\/li>\n<\/ul>\n<p>With these robust procurement risk management capabilities, businesses can safeguard their operations, prevent financial losses, and maintain supply chain continuity. Connect with HashMicro\u2019s expert team or try a free demo to experience how its procurement software can help your business navigate procurement challenges seamlessly.<\/p>\n<h2><strong>Conclusion<\/strong><\/h2>\n<p>Effective procurement risk management is essential for businesses to maintain operational stability and long-term growth. By identifying and mitigating common procurement risks, companies can prevent costly disruptions, enhance supply chain resilience, and improve efficiency.<\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/my\/procurement-and-purchasing-management-system\">HashMicro\u2019s procurement software<\/a> provides comprehensive solutions to help businesses manage procurement risks effectively. Trusted by over 1,750 companies, HashMicro is known for its customer-centric approach and innovative technology that streamlines procurement workflows, automates approvals, and improves supplier management.<\/p>\n<p>To safeguard your business from procurement risks and boost efficiency, explore how HashMicro\u2019s procurement software can transform your procurement processes. Try a <a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/?medium=web-form-header\">free demo<\/a> now!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Envision navigating a labyrinth where each turn presents potential pitfalls; this is akin to managing procurement risk in today&#8217;s complex business environment. Without proper oversight, these risks can result in financial losses, supply chain interruptions, and damage to a company&#8217;s reputation.\u200b Common procurement risks include supplier unreliability, price volatility, and challenges adhering to regulatory standards. [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":4485,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[60],"tags":[],"class_list":{"0":"post-4483","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 are Procurement Risks and How to Manage Them<\/title>\n<meta name=\"description\" content=\"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.\" \/>\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\/my\/blog\/procurement-risk\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What are Procurement Risks and How to Manage Them\" \/>\n<meta property=\"og:description\" content=\"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Malaysia\" \/>\n<meta property=\"article:published_time\" content=\"2025-03-10T07:00:23+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-14T02:32:27+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg\" \/>\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\/jpeg\" \/>\n<meta name=\"author\" content=\"Afresti Fahiratunnisa\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Afresti Fahiratunnisa\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\"},\"author\":{\"name\":\"Afresti Fahiratunnisa\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/c68697bf42fbaa4eb8c4ade5f3b69a53\"},\"headline\":\"What are Procurement Risks and How to Manage Them\",\"datePublished\":\"2025-03-10T07:00:23+00:00\",\"dateModified\":\"2026-04-14T02:32:27+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\"},\"wordCount\":2117,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg\",\"articleSection\":[\"Procurement\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\",\"name\":\"What are Procurement Risks and How to Manage Them\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg\",\"datePublished\":\"2025-03-10T07:00:23+00:00\",\"dateModified\":\"2026-04-14T02:32:27+00:00\",\"description\":\"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg\",\"width\":1200,\"height\":675,\"caption\":\"rpocurement risk\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/my\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What are Procurement Risks and How to Manage Them\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/\",\"name\":\"HashMicro Malaysia\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/my\/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\/my\/blog\/#organization\",\"name\":\"HashMicro Malaysia\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp\",\"width\":422,\"height\":255,\"caption\":\"HashMicro Malaysia\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/c68697bf42fbaa4eb8c4ade5f3b69a53\",\"name\":\"Afresti Fahiratunnisa\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/11\/cropped-WhatsApp-Image-2024-07-31-at-14.16.47_e4fc5c69-scaled-1-96x96.jpg\",\"contentUrl\":\"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/11\/cropped-WhatsApp-Image-2024-07-31-at-14.16.47_e4fc5c69-scaled-1-96x96.jpg\",\"caption\":\"Afresti Fahiratunnisa\"},\"description\":\"A SEO content writer at HashMicro with a keen interest in savvy tech and a passion for exploring innovative digital strategies, dedicated to continuous learning and professional growth.\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/author\/afresti-fahiratunnisa\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What are Procurement Risks and How to Manage Them","description":"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.","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\/my\/blog\/procurement-risk\/","og_locale":"en_US","og_type":"article","og_title":"What are Procurement Risks and How to Manage Them","og_description":"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.","og_url":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/","og_site_name":"HashMicro Malaysia","article_published_time":"2025-03-10T07:00:23+00:00","article_modified_time":"2026-04-14T02:32:27+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg","type":"image\/jpeg"}],"author":"Afresti Fahiratunnisa","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Afresti Fahiratunnisa","Est. reading time":"11 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/"},"author":{"name":"Afresti Fahiratunnisa","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/c68697bf42fbaa4eb8c4ade5f3b69a53"},"headline":"What are Procurement Risks and How to Manage Them","datePublished":"2025-03-10T07:00:23+00:00","dateModified":"2026-04-14T02:32:27+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/"},"wordCount":2117,"publisher":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg","articleSection":["Procurement"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/","url":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/","name":"What are Procurement Risks and How to Manage Them","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg","datePublished":"2025-03-10T07:00:23+00:00","dateModified":"2026-04-14T02:32:27+00:00","description":"Procurement risk arises when the purchasing or sourcing process becomes unreliable, leading to supply chain disruptions, and cost fluctuations.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#primaryimage","url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg","contentUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/03\/procurement-risk.jpg","width":1200,"height":675,"caption":"rpocurement risk"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/my\/blog\/procurement-risk\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/my\/blog\/"},{"@type":"ListItem","position":2,"name":"What are Procurement Risks and How to Manage Them"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#website","url":"https:\/\/www.hashmicro.com\/my\/blog\/","name":"HashMicro Malaysia","description":"","publisher":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/my\/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\/my\/blog\/#organization","name":"HashMicro Malaysia","url":"https:\/\/www.hashmicro.com\/my\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp","contentUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/09\/logo.webp","width":422,"height":255,"caption":"HashMicro Malaysia"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/c68697bf42fbaa4eb8c4ade5f3b69a53","name":"Afresti Fahiratunnisa","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/","url":"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/11\/cropped-WhatsApp-Image-2024-07-31-at-14.16.47_e4fc5c69-scaled-1-96x96.jpg","contentUrl":"http:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2025\/11\/cropped-WhatsApp-Image-2024-07-31-at-14.16.47_e4fc5c69-scaled-1-96x96.jpg","caption":"Afresti Fahiratunnisa"},"description":"A SEO content writer at HashMicro with a keen interest in savvy tech and a passion for exploring innovative digital strategies, dedicated to continuous learning and professional growth.","url":"https:\/\/www.hashmicro.com\/my\/blog\/author\/afresti-fahiratunnisa\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/4483","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/comments?post=4483"}],"version-history":[{"count":12,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/4483\/revisions"}],"predecessor-version":[{"id":18467,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/4483\/revisions\/18467"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media\/4485"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media?parent=4483"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/categories?post=4483"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/tags?post=4483"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}