{"id":981,"date":"2022-08-12T10:05:03","date_gmt":"2022-08-12T10:05:03","guid":{"rendered":"https:\/\/www.hashmicro.com\/blog\/?p=981"},"modified":"2026-01-07T09:05:38","modified_gmt":"2026-01-07T09:05:38","slug":"cloud-erp-system","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/","title":{"rendered":"What is Cloud ERP System and How Does it Work for Businesses?"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Cloud ERP (Enterprise Resource Planning) systems are not unfamiliar to large-scale business operators. Retail, distribution, and manufacturing companies with multiple locations understandably want their operations to function fast and seamlessly.<\/span><\/p>\n<p>This type of ERP software integrates and automates crucial financial and operational business processes, consolidating data such as inventory, orders, and supply chain management. It aids in procurement, production, distribution, and fulfillment tasks.<\/p>\n<p>Within this context, it is imperative for any ERP system to be readily available to all business units, regardless of employees&#8217; locations, and to offer a cohesive and current perspective on data. Cloud-based ERP as a service fulfills these criteria. Since organizations access the software online, all that is required is an internet connection and a web browser.<\/p>\n<p><iframe loading=\"lazy\" title=\"HashMicro for Your Business [EN]\" width=\"696\" height=\"392\" src=\"https:\/\/www.youtube.com\/embed\/uZk1nX4aINQ?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe><\/p>\n<h2><strong>What is Cloud ERP System?<\/strong><\/h2>\n<p>Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor&#8217;s cloud platform rather than a local network, enabling organizations to access it via the Internet.<\/p>\n<p><span style=\"font-weight: 400;\"> Implementing a Cloud ERP system is one of the various options for efficiently managing all business processes. As a result, HashMicro provides <\/span><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp?blog\"><span style=\"font-weight: 400;\">the best cloud ERP<\/span><\/a><span style=\"font-weight: 400;\">. Despite having the same capability as on-premise ERP, the Cloud ERP solution offers various advantages to your company.<\/span><\/p>\n<div>\n<p>The <a href=\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-for-singaporean-businesses\/\">cloud ERP system for Singaporean businesses<\/a> facilitates all actions in many parts of the business. This system can link all company divisions, including finance, marketing automation, inventory, HRM, sales, and other systems.<\/p>\n<p>You can get a <a href=\"https:\/\/www.hashmicro.com\/free-product-tour\/\">free HashMicro software demo and consultation<\/a> with our business experts by downloading a price calculation depending on your business needs. As we previously covered, two ERP models are available on the market: on-premise (traditional) ERP and cloud-based ERP software.<\/p>\n<h2><strong>What is the Concept of Cloud ERP?<\/strong><\/h2>\n<p>Cloud ERP is a modern approach to ERP systems in which the software is hosted on the cloud rather than on a company\u2019s local servers. This means businesses can access the ERP platform through the internet, using a web browser or app, without needing heavy IT infrastructure.<\/p>\n<p>The concept emphasizes scalability, flexibility, and accessibility. Since data is centralized in the cloud, employees across different locations can collaborate in real time. The service provider handles updates and maintenance automatically, reducing the burden on internal IT teams.<\/p>\n<p>In practice, Cloud ERP integrates key business functions, such as finance, HR, inventory, procurement, and sales, into a single online system. Companies benefit from lower upfront costs, faster implementation, and the ability to scale resources as the business grows.<\/p>\n<h2><strong>Types of Cloud ERP Software<\/strong><\/h2>\n<p>With these different types of Cloud ERP, businesses can choose the model that best fits their goals and resources. The right choice ensures smoother operations, stronger data management, and scalability to support long-term growth.<\/p>\n<ol>\n<li><strong>Public Cloud ERP<\/strong><br \/>\nHosted on shared servers, making it cost-efficient and quick to deploy. Best for startups or growing companies that want affordability and scalability without heavy IT costs.<\/li>\n<li><strong>Private Cloud ERP<\/strong><br \/>\nIt runs on dedicated servers, offering higher security, customization, and control. It is best for enterprises in regulated industries like finance, healthcare, or government.<\/li>\n<li><strong>Hybrid Cloud ERP<\/strong><br \/>\nIt combines public and private cloud advantages, balancing cost savings with advanced security. It is best for mid-to-large businesses that need flexibility while handling sensitive data.<\/li>\n<li><strong>Single-Tenant SaaS ERP<\/strong><br \/>\nEach company gets its own dedicated software instance for more control and customization. This is best\u00a0for businesses that need tailored solutions with strict data security.<\/li>\n<li><strong>Multi-Tenant SaaS ERP<\/strong><br \/>\nMultiple companies share the same software instance with separate data, ensuring efficiency and faster updates. Best for SMEs that prioritize affordability, easy setup, and quick upgrades.<\/li>\n<\/ol>\n<\/div>\n<h2><strong>Cloud ERP vs. On-Premises ERP<\/strong><\/h2>\n<p>Knowing the differences between cloud and on-premises ERP helps businesses pick the right fit. Today, many companies favor cloud ERP for its flexibility and cost efficiency. Below are the differences between cloud ERP and on-premises ERP.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"background-color: #990000; color: #ffffff; padding: 5px; text-align: center;\"><strong>Aspect<\/strong><\/td>\n<td style=\"background-color: #990000; color: #ffffff; padding: 5px; text-align: center;\"><strong>Cloud ERP<\/strong><\/td>\n<td style=\"background-color: #990000; color: #ffffff; padding: 5px; text-align: center;\"><strong>On-Premises ERP<\/strong><\/td>\n<\/tr>\n<tr>\n<td>Deployment<\/td>\n<td>Hosted online, accessed via browser or app<\/td>\n<td>Installed locally on company-owned servers and hardware<\/td>\n<\/tr>\n<tr>\n<td>Cost<\/td>\n<td>Lower upfront costs with subscription-based pricing<\/td>\n<td>High upfront investment in servers, licenses, and IT staff<\/td>\n<\/tr>\n<tr>\n<td>Updates<\/td>\n<td>Automatic updates managed by the vendor<\/td>\n<td>Manual updates requiring IT resources and downtime<\/td>\n<\/tr>\n<tr>\n<td>Scalability<\/td>\n<td>Easily scalable to match business growth and demand<\/td>\n<td>Scaling requires new hardware and significant investment<\/td>\n<\/tr>\n<tr>\n<td>Security<\/td>\n<td>Vendor-managed with cloud-grade security and backups<\/td>\n<td>Full control of data security, but a higher maintenance burden<\/td>\n<\/tr>\n<tr>\n<td>Best for<\/td>\n<td>Companies seeking flexibility, mobility, and low IT overhead<\/td>\n<td>Compliance-heavy industries need strict control<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong>Benefits of Cloud-Based ERP System for Businesses<\/strong><\/h2>\n<div>\n<p>Although they provide the same purpose and function, many businesses have opted for <a href=\"https:\/\/www.hashmicro.com\/erp-system\">Cloud ERP <\/a>systems. Here are six advantages of Cloud ERP for your company.<\/p>\n<div>\n<div id=\"toc_container\">\n<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>\n<!-- <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\n<h3 id=\"1\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">1. Lowering Capital Cost\u00a0<\/span><\/span><\/b><\/h3>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Because you don&#8217;t need to buy servers or hardware to operate your ERP system, cloud ERP has lower capital expenses than traditional ERP. Furthermore, you can lower the operational costs you must pay to pay for some of the IT professionals in charge of managing your server.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">You also save money on maintenance and upgrades because you don&#8217;t have to pay your ERP vendor to visit your office regularly. Furthermore, the therapy process typically takes a lengthy time. Your ERP vendor can perform maintenance and upgrades via the back-end system with this system.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Furthermore, the ERP system can be connected to various online systems. For example, if you construct an <\/span><a href=\"https:\/\/www.hashmicro.com\/eva-hris-essentials?utm_source=blog\"><span style=\"font-weight: 400;\">HRM System<\/span><\/a><span style=\"font-weight: 400;\">, it will be integrated with numerous online services that assist HR functions. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">You may automate HR and personnel administration duties with this technology. Aside from that, you can compute pay, monitor attendance lists, and carry out other HR tasks.<\/span><\/p>\n<h3 id=\"2\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">2. Easy to Implement<\/span><\/span><\/b><\/h3>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-4181\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-3.png\" alt=\"Benefits of cloud erp\" width=\"870\" height=\"520\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-3.png 870w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-3-300x179.png 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-3-768x459.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Unlike on-premise ERP implementations, which can take months or even years, cloud ERP setups are typically shorter and easier. It can be used on a PC, mobile device, or website as long as the system is connected to the internet. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Web-based ERP allows anyone with an Internet connection to use it via multiple browsers like as Firefox, Safari, Google Chrome, Internet Explorer, and others.<\/span><\/p>\n<style>\r\n.cta-in-article-image .desktop-banner{\r\n    display: none;\r\n    text-align: center;\r\n}\r\n.cta-in-article-image .desktop-mobile{\r\n    display: block;\r\n    text-align: center;\r\n    width: 100%;\r\n}\r\n@media (min-width: 650px) {\r\n    .cta-in-article-image .desktop-banner {\r\n        display: block!important;\r\n    }\r\n}\r\n@media (min-width: 650px) {\r\n   .cta-in-article-image .desktop-mobile {\r\n        display: none!important;\r\n    }\r\n}\r\n<\/style>\r\n<div class=\"cta-in-article-image\">\r\n\t<a href=\"https:\/\/www.hashmicro.com\/grants?utm_source=blog&medium=banner-article\" target=\"_blank\" rel=\"noopener\">\r\n\t\t<div id=\"desktop-banner-container\">\r\n\t\t\t<div class=\"desktop-banner\">\r\n<!-- \tnew CTC Grants Banner\t\t -->\r\n\t\t\t\t<img decoding=\"async\" width='696' height='189' src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2025\/07\/CTC-Grants-scaled.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div id=\"mobile-banner-container\">\r\n\t\t\t<div class=\"desktop-mobile\">\r\n\t\t\t\t<img decoding=\"async\" width='450' height='497' src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2023\/11\/EDG-Banner-Mobile.png.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/a>\r\n<\/div>\r\n\r\n\r\n\n<h3 id=\"3\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">3. Cloud ERP Reduces Reliance on IT Resources<\/span><\/span><\/b><\/h3>\n<div class=\"wp-block-image\" style=\"text-align: left;\">\n<figure class=\"aligncenter\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-4182\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-4.png\" alt=\"Cloud ERP software\" width=\"870\" height=\"520\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-4.png 870w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-4-300x179.png 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-4-768x459.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Businesses that adopt Cloud ERP have reduced demand for information technology resources because they do not require IT personnel to monitor and install their ERP systems. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">This, of course, also affects the company&#8217;s ability to save money on its operational costs. Your IT team is now free to concentrate on more challenging projects that have the potential to deliver benefits to your company.\u00a0<\/span><\/p>\n<h3 id=\"4\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">4. Cloud ERP is Accessible Anywhere and Anytime<\/span><\/span><\/b><\/h3>\n<div class=\"wp-block-image\" style=\"text-align: left;\">\n<figure class=\"aligncenter\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-4183\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-5.png\" alt=\"Cloud ERP accessibility\" width=\"870\" height=\"520\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-5.png 870w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-5-300x179.png 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-5-768x459.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n<p style=\"text-align: left;\"><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp?blog\"><span style=\"font-weight: 400;\">ERP software<\/span><\/a><span style=\"font-weight: 400;\"> is a good solution for companies with multiple branches in different regions or countries. As a business owner, you can monitor all your business operations anywhere and anytime via your mobile device. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">It is possible to maintain communication across all of your company&#8217;s departments, even if they are located in different locations. You can also generate any report in real-time and do it very quickly.<\/span><\/p>\n<h3 id=\"5\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">5. Cloud ERP Easily Adapts to Your Business Demands<\/span><\/span><\/b><\/h3>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-4184\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-6.png\" alt=\"cloud erp adaptability\" width=\"870\" height=\"520\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-6.png 870w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-6-300x179.png 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-6-768x459.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Cloud ERP is adaptable, making it a good choice for companies of all sizes. Your ERP software allows you to either upgrade it (which adds more resources to the system) or downgrade it (which removes resources already in the system).<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\"> It helps adapt to the shifting requirements of your company. When you first start with ERP software, one of the appealing perks is that you may employ only the capability you require and then increase that functionality as the business develops.<\/span><\/p>\n<h3 id=\"6\" style=\"text-align: left;\"><b><span style=\"vertical-align: inherit;\"><span style=\"vertical-align: inherit;\">6. Safer Data Storage<\/span><\/span><\/b><\/h3>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone wp-image-4185\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-7.png\" alt=\"cloud erp storage \" width=\"870\" height=\"520\" srcset=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-7.png 870w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-7-300x179.png 300w, https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2018\/05\/toko-online-7-768x459.png 768w\" sizes=\"auto, (max-width: 870px) 100vw, 870px\" \/><\/figure>\n<\/div>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">Data security is one of the reasons why many businesses are transitioning from traditional systems to cloud-based systems at this time. It provides enhanced data protection in comparison to on-premise ERP systems. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">The cloud will automatically store all data. This lessens the likelihood of information being lost, which is usually possible whenever data is saved on a PC or a flash drive.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">You can limit the number of users and designate who is permitted to access the data. Because of this, you won&#8217;t have to be concerned about the staff at your company abusing the data. <\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">In a catastrophe, cloud ERP maintains your data secure and under control, ensuring its integrity. Your data is saved on the system, not the server. Therefore any natural disasters that occur could potentially cause damage to your office.<\/span><\/p>\n<h2><strong>The Challenges of Cloud ERP<\/strong><\/h2>\n<p>While Cloud ERP offers many benefits, it also comes with challenges businesses must consider. If not managed properly, these issues can affect performance, cost planning, and data security.<\/p>\n<ol>\n<li><strong>Data security concerns<\/strong>: Storing data in the cloud raises concerns about privacy, compliance, and potential breaches.<\/li>\n<li><strong>Internet dependency<\/strong>: Access relies on a stable internet, making downtime or slow connections disruptive to operations.<\/li>\n<li><strong>Customization limits<\/strong>: Some cloud ERP systems offer less flexibility than on-premises solutions.<\/li>\n<li><strong>Integration complexity<\/strong>: Connecting cloud ERP with existing legacy systems can be challenging and time-consuming.<\/li>\n<li><strong>Ongoing subscription costs<\/strong>: Although cheaper upfront, long-term subscription fees may increase.<\/li>\n<\/ol>\n<h3><strong>Conclusion<\/strong><\/h3>\n<div>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">With technological advancements, you can raise your game and combine all of your business processes with ERP software. Many businesses have classic ERP systems in place. While this may be beneficial, standard software is lacking in several areas.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\"> As a result, <\/span><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp\/?utm_source=blog\"><span style=\"font-weight: 400;\">cloud ERP software<\/span><\/a><span style=\"font-weight: 400;\"> helps to solve these issues. You can improve your business by applying this system, which can enhance your business&#8217;s efficiency and increase its size.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">The advantages of cloud-based ERP software might assist you in optimizing your daily business operations. Utilizing this cloud-based software for your organization might help it grow by automating and making its system more accessible. Firms can also use the <a href=\"https:\/\/www.hashmicro.com\/ctc-grants\">CTC Grant<\/a>, which finances up to 70% of costs, to adopt digital transformation solutions.<\/span><\/p>\n<p style=\"text-align: left;\"><span style=\"font-weight: 400;\">HashMicro provides <\/span><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp\/?utm_source=blog\"><span style=\"font-weight: 400;\">cloud ERP software<\/span><\/a><span style=\"font-weight: 400;\"> that is simple to implement and upgrade in order to help your business develop.<\/span><\/p>\n<p><span data-sheets-root=\"1\"><a href=\"https:\/\/www.hashmicro.com\/hash-core-erp?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" width=\"712\" src=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/03\/Hash-Core-ERP-scaled.jpg\" alt=\"Hash Core ERP\"><\/a><\/span><\/p>\n<\/div>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"Is using ERP cheaper for your business ?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Cloud ERP requires lower capital costs than the conventional one because you do not need to buy a server or hardware to support your ERP system. In addition, you can also reduce the operational costs you\u2019d have to spend to pay some IT staff responsible for managing your server.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"what is HashMicro's software price ?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"get the information for HashMicro's price <a href='https:\/\/www.hashmicro.com\/offer\/download-erp-software-pricing-scheme\/'>here<\/a>\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Does ERP effect it dependency ?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Companies that use a Cloud ERP need fewer IT resources as they don\u2019t need IT staff to manage and configure their ERP servers.\"\n    }\n  }]\n}\n<\/script><\/p>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Cloud ERP (Enterprise Resource Planning) systems are not unfamiliar to large-scale business operators. Retail, distribution, and manufacturing companies with multiple locations understandably want their operations to function fast and seamlessly. This type of ERP software integrates and automates crucial financial and operational business processes, consolidating data such as inventory, orders, and supply chain management. It [&hellip;]<\/p>\n","protected":false},"author":197,"featured_media":11281,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[5],"tags":[17,144,142,145,143],"class_list":{"0":"post-981","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-erp","8":"tag-cloud-erp","9":"tag-conventional-erp","10":"tag-on-premise-erp","11":"tag-on-site-erp","12":"tag-traditional-erp"},"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 Cloud ERP Software and How Does it Work?<\/title>\n<meta name=\"description\" content=\"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor&#039;s cloud platform rather than a local network.\" \/>\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\/cloud-erp-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Cloud ERP System and How Does it Work for Businesses?\" \/>\n<meta property=\"og:description\" content=\"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor&#039;s cloud platform rather than a local network.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\" \/>\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=\"2022-08-12T10:05:03+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-07T09:05:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png\" \/>\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\/png\" \/>\n<meta name=\"author\" content=\"Mark Ong\" \/>\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=\"Mark Ong\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\"},\"author\":{\"name\":\"Mark Ong\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/94b301e0bd689eecf779e90cc8333d3b\"},\"headline\":\"What is Cloud ERP System and How Does it Work for Businesses?\",\"datePublished\":\"2022-08-12T10:05:03+00:00\",\"dateModified\":\"2026-01-07T09:05:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\"},\"wordCount\":1638,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png\",\"keywords\":[\"cloud erp\",\"conventional erp\",\"on-premise erp\",\"on-site erp\",\"traditional erp\"],\"articleSection\":[\"ERP\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\",\"name\":\"What is Cloud ERP Software and How Does it Work?\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png\",\"datePublished\":\"2022-08-12T10:05:03+00:00\",\"dateModified\":\"2026-01-07T09:05:38+00:00\",\"description\":\"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor's cloud platform rather than a local network.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png\",\"width\":1200,\"height\":675,\"caption\":\"what is cloud erp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is Cloud ERP System and How Does it Work for Businesses?\"}]},{\"@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\/94b301e0bd689eecf779e90cc8333d3b\",\"name\":\"Mark Ong\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/01\/cropped-expertise-blog-96x96.png\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/01\/cropped-expertise-blog-96x96.png\",\"caption\":\"Mark Ong\"},\"description\":\"Mark Ong is a Technical Content Writer with deep expertise in ERP-related topics, delivering content that bridges technical accuracy with real business needs. His writing offers clear, practical insights that help readers understand and navigate ERP systems effectively.\",\"url\":\"https:\/\/www.hashmicro.com\/blog\/author\/mark-ong\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is Cloud ERP Software and How Does it Work?","description":"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor's cloud platform rather than a local network.","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\/cloud-erp-system\/","og_locale":"en_US","og_type":"article","og_title":"What is Cloud ERP System and How Does it Work for Businesses?","og_description":"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor's cloud platform rather than a local network.","og_url":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/","og_site_name":"BusinessTech","article_publisher":"https:\/\/web.facebook.com\/hashmicro\/","article_published_time":"2022-08-12T10:05:03+00:00","article_modified_time":"2026-01-07T09:05:38+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png","type":"image\/png"}],"author":"Mark Ong","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Written by":"Mark Ong","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/"},"author":{"name":"Mark Ong","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/94b301e0bd689eecf779e90cc8333d3b"},"headline":"What is Cloud ERP System and How Does it Work for Businesses?","datePublished":"2022-08-12T10:05:03+00:00","dateModified":"2026-01-07T09:05:38+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/"},"wordCount":1638,"publisher":{"@id":"https:\/\/www.hashmicro.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png","keywords":["cloud erp","conventional erp","on-premise erp","on-site erp","traditional erp"],"articleSection":["ERP"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/","url":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/","name":"What is Cloud ERP Software and How Does it Work?","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png","datePublished":"2022-08-12T10:05:03+00:00","dateModified":"2026-01-07T09:05:38+00:00","description":"Cloud ERP refers to an enterprise resource planning (ERP) system that operates on a vendor's cloud platform rather than a local network.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#primaryimage","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2022\/02\/Saluran-Distribusi-7.png","width":1200,"height":675,"caption":"what is cloud erp"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/blog\/cloud-erp-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What is Cloud ERP System and How Does it Work for Businesses?"}]},{"@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\/94b301e0bd689eecf779e90cc8333d3b","name":"Mark Ong","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/01\/cropped-expertise-blog-96x96.png","contentUrl":"https:\/\/www.hashmicro.com\/blog\/wp-content\/uploads\/2024\/01\/cropped-expertise-blog-96x96.png","caption":"Mark Ong"},"description":"Mark Ong is a Technical Content Writer with deep expertise in ERP-related topics, delivering content that bridges technical accuracy with real business needs. His writing offers clear, practical insights that help readers understand and navigate ERP systems effectively.","url":"https:\/\/www.hashmicro.com\/blog\/author\/mark-ong\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/981","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\/197"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/comments?post=981"}],"version-history":[{"count":57,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/981\/revisions"}],"predecessor-version":[{"id":78269,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/posts\/981\/revisions\/78269"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media\/11281"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/media?parent=981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/categories?post=981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/blog\/wp-json\/wp\/v2\/tags?post=981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}