{"id":955,"date":"2024-07-06T05:11:19","date_gmt":"2024-07-06T05:11:19","guid":{"rendered":"https:\/\/www.hashmicro.com\/my\/blog\/?p=955"},"modified":"2026-03-10T04:53:17","modified_gmt":"2026-03-10T04:53:17","slug":"e-invoice-malaysia","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/","title":{"rendered":"A Complete Guide to IRBM e-Invoice Malaysia 2026"},"content":{"rendered":"<p>Malaysia is moving toward a nationwide e-Invoicing framework introduced by the Inland Revenue Board of Malaysia (IRBM). To ensure a smooth transition, the mandate will be implemented in phases based on annual turnover thresholds.<\/p>\n<p>Beginning <strong data-start=\"430\" data-end=\"446\">January 2026<\/strong>, businesses with an annual turnover or revenue of up to <strong data-start=\"503\" data-end=\"518\">RM5 million<\/strong> will be required to issue and submit electronic invoices through MyInvois, replacing traditional manual invoicing practices.<\/p>\n<p>As the deadline approaches, businesses must understand and prepare for these changes to remain compliant and avoid potential penalties. We will cover everything from the basic principles of e-invoicing and practical advice on selecting the right <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing software<\/a>\u00a0that fully-integrates with MyInvois.<\/p>\n<p>This article serves as a complete end-to-end guide to <strong>Inland Revenue Board of Malaysia (IRBM) e-invoicing regulations<\/strong>, offering detailed insights into e-invoice requirements in Malaysia, the steps businesses need to take to comply, and the best solutions available to facilitate these transitions.<\/p>\n<p><strong><!-- <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><\/strong><\/p>\n<table style=\"border-collapse: coacllapse; 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\"><a href=\"#e-invoice-definition\">E-invoicing<\/a>, promoted by the IRBM in Malaysia, transitions traditional invoices to a digital format.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Implementing e-invoicing in Malaysia <a href=\"#e-invoice-benefits\">benefits<\/a> businesses by enhancing business efficiency, tax compliance, and financial operations.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">Malaysia&#8217;s e-invoice requirement is <a href=\"#subject-of-e-invoice\">mandatory<\/a> for all commercial taxpayers, and the IRBM provides guidelines on compliance and exemptions.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">While beneficial, transitioning to an e-invoicing system in Malaysia presents business <a href=\"#e-invoice-challenges\">challenges<\/a>, including system integration, employee training, data security, regulatory compliance, and initial setup costs.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">HashMicro&#8217;s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing software<\/a> is your business&#8217;s best answer to comply with Malaysia&#8217;s e-invoice requirement.<\/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\">Book a Free Demo Now!<\/a><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><strong><span id=\"e-invoice-definition\">What is IRBM e-Invoicing Malaysia?<\/span><\/strong><\/h2>\n<p>An <strong>e-invoice<\/strong>, or electronic invoice, represents a shift from traditional paper-based invoicing to a digital format. This innovative form allows for the automatic creation, dispatch, and receipt of an invoice in a structured digital format.<\/p>\n<p>E-invoices provide detailed information such as the identities of the seller and buyer, descriptions of the services or goods provided, pricing, and applicable taxes, all streamlined for digital handling.<\/p>\n<p>The IRBM (LDHN) actively promotes e-invoicing in Malaysia as part of its broader digital transformation strategy to enhance administrative efficiency and tax compliance.<\/p>\n<p>Under the IRBM&#8217;s guidelines, <strong>businesses are encouraged, and in some cases required, to adopt e-invoicing<\/strong> to ensure a more robust, transparent, and fraud-resistant system.<\/p>\n<p>The e-invoice requirements facilitate better monitoring and analysis of transactions for tax purposes in Malaysia, simplifying compliance and reducing opportunities for evasion.<\/p>\n<h2><strong>What is IRBM?<\/strong><\/h2>\n<p><strong>The Inland Revenue Board of Malaysia (IRBM)<\/strong>, also known as <strong>Lembaga Hasil Dalam Negeri Malaysia (LHDN)<\/strong>, is the primary tax authority in Malaysia. Established under the Inland Revenue Board of Malaysia Act 1995, IRBM is responsible for the administration, assessment, and collection of direct taxes such as income tax, petroleum income tax, real property gains tax, and stamp duties.<\/p>\n<p>The IRBM plays a crucial role in ensuring compliance with tax laws and regulations, contributing significantly to the nation\u2019s revenue.<\/p>\n<p>IRBM&#8217;s mission is to provide efficient and effective tax administration to foster economic growth and ensure equitable tax distribution. The Inland Revenue Board of Malaysia (IRBM) is also tasked with enforcing tax compliance through audits and investigations, implementing tax policies, and offering taxpayer services and education.<\/p>\n<p>As Malaysia transitions to digital tax administration, the IRBM is spearheading initiatives like the upcoming e-invoicing regulation, which mandates electronic invoicing for businesses. This move aims to streamline tax processes, reduce fraud, and improve transparency.<\/p>\n<p>In summary, the IRBM is a pivotal institution in Malaysia&#8217;s fiscal framework, driving tax compliance and innovation in tax administration to support national development goals.<\/p>\n<h2><strong>Why is e-Invoice Being Implemented in Malaysia?<\/strong><\/h2>\n<p>E-invoice regulation implementation in Malaysia in 2026 is driven by the IRBM&#8217;s strategic move to modernize and streamline nationwide tax administration and compliance processes.This initiative is part of a broader national agenda to adopt digital solutions that enhance efficiency and accuracy in business and governmental transactions.<\/p>\n<p>The e-invoice system brings several key benefits to businesses in Malaysia that align with the IRBM&#8217;s goals. It primarily <strong>reduces businesses&#8217; administrative burden<\/strong> by automating the invoicing process and minimizing manual data entry work.<\/p>\n<p>Moreover, IRBM e-invoicing significantly <strong>reduces errors and discrepancies<\/strong> with paper-based invoicing. This leads to a smoother invoicing process and improves overall business efficiency.<\/p>\n<p>IRBM e-invoicing also <strong>facilitates better tax compliance and governance<\/strong>. By automating and digitizing invoices, the IRBM (LDHN) can more effectively monitor and audit business transactions in Malaysia in real-time.<\/p>\n<p>This enhanced oversight helps to prevent tax evasion and ensures a more accurate and fair tax collection process.<\/p>\n<p>Adopting an e-invoice system also <strong>aligns Malaysia with global best practices in financial and tax regulations<\/strong>, preparing Malaysian businesses for international trade and helping them meet global standards.<\/p>\n<p>Under the current digital tax framework, businesses are obligated to issue <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/refund-note-malaysia\/\">cash recovery forms <\/a>whenever a payment needs to be reversed to stay fully compliant with local audit standards<\/p>\n<p>Additionally, it <strong>supports the country&#8217;s vision of a digital economy<\/strong>, encouraging technological adaptation across various sectors. Through these measures, IRBM e-invoicing simplifies business operations and fortifies the nation&#8217;s economic infrastructure.<\/p>\n<p>To meet these needs, HashMicro&#8217;s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing solutions<\/a> seamlessly integrate with government-approved e-invoicing APIs. Access the<a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/\"> free demo<\/a> now to see our software in action.<\/p>\n<h2><strong><span id=\"e-invoice-benefits\">Benefits of IRBM e-Invoicing for Businesses in Malaysia<\/span><\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-961 size-full\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia.webp\" alt=\"IRBM e-invoice regulations malaysia\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia.webp 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-300x169.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-768x432.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-747x420.webp 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-150x84.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-696x392.webp 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Benefits-of-e-Invoicing-for-Businesses-in-Malaysia-1068x601.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>The implementation of IRBM e-invoicing in Malaysia offers a multitude of benefits that streamline business operations, enhance efficiency, and improve tax compliance. Below is an elaboration on the several key advantages of integrating LDHN e-invoicing into business practices:<\/p>\n<ul>\n<li><strong>Unified invoicing process<\/strong>: LDHN e-invoicing standardizes invoice creation and submission, enabling businesses to automate data entry. This reduces manual effort and minimizes errors for more accurate invoicing and record-keeping.<\/li>\n<li><strong>Integrated tax return filing system<\/strong>: E-invoicing integrates with tax return systems, aligning financial data with tax records. This simplifies tax preparation and aids in faster verifications by authorities.<\/li>\n<li><strong>Streamlined operations<\/strong>: IRBM e-invoicing streamlines operations, allowing companies to allocate resources strategically and respond swiftly to market changes.<\/li>\n<li><strong>Improved cash flow<\/strong>: E-invoicing reduces errors, accelerates payments, and improves cash flow management. Faster processing allows businesses to reinvest capital for growth and innovation.<\/li>\n<li><strong>Digitilized financial reporting<\/strong>: E-invoicing enhances efficiency, accelerates payments, and supports business growth.<\/li>\n<\/ul>\n<p>Overall, the e-invoicing shift is transforming the landscape of business operations, making them more efficient, compliant, and prepared for the challenges of a digital economy.<\/p>\n<h2><strong>IRBM e-Invoicing Implementation Timeline in Malaysia<\/strong><\/h2>\n<p data-start=\"233\" data-end=\"402\">Malaysia\u2019s e-Invoicing mandate will be introduced in phases, based on annual turnover or revenue thresholds, to ensure a smooth and structured transition for businesses.<\/p>\n<p data-start=\"404\" data-end=\"538\"><strong data-start=\"404\" data-end=\"426\">From 1 August 2024<\/strong>, e-Invoicing becomes mandatory for taxpayers with an <strong data-start=\"480\" data-end=\"537\">annual turnover or revenue of more than RM100 million<\/strong>.<\/p>\n<p data-start=\"540\" data-end=\"687\"><strong data-start=\"540\" data-end=\"563\">From 1 January 2025<\/strong>, the mandate expands to taxpayers with an <strong data-start=\"606\" data-end=\"686\">annual turnover or revenue of more than RM25 million and up to RM100 million<\/strong>.<\/p>\n<p data-start=\"689\" data-end=\"831\"><strong data-start=\"689\" data-end=\"709\">From 1 July 2025<\/strong>, e-Invoicing applies to taxpayers with an <strong data-start=\"752\" data-end=\"830\">annual turnover or revenue of more than RM5 million and up to RM25 million<\/strong>.<\/p>\n<p data-start=\"833\" data-end=\"980\"><strong data-start=\"833\" data-end=\"856\">From 1 January 2026<\/strong>, all remaining taxpayers with an <strong data-start=\"890\" data-end=\"941\">annual turnover or revenue of up to RM5 million<\/strong> will be required to adopt e-Invoicing.<\/p>\n<p data-start=\"982\" data-end=\"1157\">Taxpayers with an <strong data-start=\"1000\" data-end=\"1055\">annual turnover or revenue of less than RM1 million<\/strong> are <strong data-start=\"1060\" data-end=\"1104\">exempted from e-Invoicing implementation<\/strong>, unless they voluntarily choose to adopt the system.<\/p>\n<p data-start=\"1211\" data-end=\"1360\">According to official IRBM guidelines, the annual turnover or revenue for determining the implementation date should be based on financial year 2022:<\/p>\n<ul data-start=\"1362\" data-end=\"1802\">\n<li data-start=\"1362\" data-end=\"1506\">\n<p data-start=\"1364\" data-end=\"1506\"><strong data-start=\"1364\" data-end=\"1412\">Businesses with audited financial statements<\/strong>: Use the annual turnover or revenue stated in the audited financial statements for FY 2022.<\/p>\n<\/li>\n<li data-start=\"1507\" data-end=\"1617\">\n<p data-start=\"1509\" data-end=\"1617\"><strong data-start=\"1509\" data-end=\"1560\">Businesses without audited financial statements<\/strong>: Use the annual revenue reported in the 2022 tax return.<\/p>\n<\/li>\n<li data-start=\"1618\" data-end=\"1802\">\n<p data-start=\"1620\" data-end=\"1802\"><strong data-start=\"1620\" data-end=\"1682\">Businesses with a change in accounting year end in FY 2022<\/strong>: The turnover or revenue must be <strong data-start=\"1716\" data-end=\"1742\">pro-rated to 12 months<\/strong> to accurately determine the applicable implementation date.<\/p>\n<\/li>\n<\/ul>\n<p><strong style=\"color: #111111; font-family: Roboto, sans-serif; font-size: 27px;\"><span id=\"subject-of-e-invoice\">Who Will be Required to Comply with IRBM E-Invoicing in Malaysia?<\/span><\/strong><\/p>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-962 size-full\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia.webp\" alt=\"LDHN e-invoice malaysia\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia.webp 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-300x169.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-768x432.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-747x420.webp 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-150x84.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-696x392.webp 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/Who-Will-be-Required-to-Comply-with-E-Invoicing-in-Malaysia-1068x601.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>The e-invoice requirement is mandatory for all taxpayers involved in commercial activities within Malaysia. This encompasses entities selling goods and services and specific non-business transactions between individuals.<\/p>\n<p>The IRBM (LDHN) has issued guidelines specifying which entities, individuals, and businesses must comply with e-invoicing regulations and identifying exempt ones.<\/p>\n<p>Here is the list of entities that should comply with Malaysia&#8217;s electronic invoice regulations:<\/p>\n<ul>\n<li>Corporations<\/li>\n<li>Association<\/li>\n<li>Body of persons<\/li>\n<li>Branch<\/li>\n<li>Business trust<\/li>\n<li>Cooperative societies<\/li>\n<li>Limited liability partnership<\/li>\n<li>Partnership<\/li>\n<li>Property trust fund<\/li>\n<li>Property trust<\/li>\n<li>Real estate investment trust<\/li>\n<li>Representative office and regional office<\/li>\n<li>Trust body<\/li>\n<li>Unit trust<\/li>\n<\/ul>\n<p>And here are the ones that are<a href=\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-exemption\/\"> exempted from e-invoicing regulations<\/a>:<\/p>\n<ul>\n<li>Government<\/li>\n<li>State government and state authority<\/li>\n<li>Government authority<\/li>\n<li>Local authority<\/li>\n<li>Statutory authority and statutory body<\/li>\n<li>Facilities provided by the above government, authority, or body<\/li>\n<li>Ruler and ruling chief<\/li>\n<li>Former ruler and ruling chief<\/li>\n<li>Consort of a ruler of a state with specified titles<\/li>\n<li>Consort of a former ruler of a state with specified titles<\/li>\n<li>Consular offices<\/li>\n<li>Diplomatic officers<\/li>\n<li>Consular officers<\/li>\n<li>Consular employees<\/li>\n<li>Individuals who are not conducting business<\/li>\n<\/ul>\n<h2><b>What are the e-Invoicing Models in Malaysia?<\/b><\/h2>\n<p>To ease the transition to IRBM e-invoicing, companies can choose the transmission mechanism that best fits their business needs and specific circumstances from IRBM&#8217;s two options.<\/p>\n<h3>MyInvois portal<\/h3>\n<p>The MyInvois Portal, hosted by the IRBM (LDHN), provides a no-cost option for taxpayers to manage and issue e-invoices. This portal is universally accessible to all taxpayers, making it well-suited for MSMEs.<\/p>\n<p>However, it may not be the most efficient choice for handling large volumes of data. The portal serves as a viable solution for businesses that require the issuance of e-invoices but cannot establish an API connection.<\/p>\n<h3>Application Programming Interface (API)<\/h3>\n<p>The API offers a sophisticated way to directly transmit data between a taxpayer&#8217;s invoice system and the MyInvois System, requiring initial tech investment and system adjustments.<\/p>\n<p>Taxpayers can connect to the IRBM (LDHN) either directly or through <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-erp-software\/\">ERP software<\/a> equipped with e-invoicing capabilities. This method is ideal for large taxpayers or businesses with high transaction volumes, helping to streamline the entire invoicing process.<\/p>\n<p>For medium to large organisations, an API-ready system like HashMicro offers a stronger alternative. HashMicro\u2019s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoice software<\/a> is fully integrated with MyInvois, enabling automatic invoice creation, validation, and real-time submission directly to LDHN, without requiring any manual upload or duplicate entry. This integration helps businesses maintain compliance while streamlining accounting and operational processes in a single environment.<\/p>\n<h2><b>How Does Malaysia&#8217;s e-Invoicing System Work?<\/b><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-963 size-full\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work.webp\" alt=\"IRBM e-invoicing guidelines malaysia\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work.webp 1200w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-300x169.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-768x432.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-747x420.webp 747w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-150x84.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-696x392.webp 696w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Does-Malaysia-e-Invoicing-System-Work-1068x601.webp 1068w\" sizes=\"(max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Both Malaysia electronic invoice models offer a similarly structured workflow for managing e-invoices, with slight variations in the process. Below is a detailed overview of the steps involved as outlined in the official guideline:<\/p>\n<ul>\n<li><strong>Issuance of e-invoice<\/strong>: The supplier issues an e-invoice, which is then shared with the MyInvois Portal. This step initiates the electronic invoicing process by capturing all relevant transaction details.<\/li>\n<li><strong>Real-time validation<\/strong>: Upon submission, the MyInvois Portal conducts a real-time validation of the e-invoice. Once validated, a unique two-part identifier number is assigned to the e-invoice, officially acknowledging its authenticity and accuracy.<\/li>\n<li><strong>Notification of validation<\/strong>: The IRBM (LDHN) promptly notifies the supplier and the buyer of the validated e-invoice. This ensures all parties know the invoice status and can proceed with the necessary financial documentation and adjustments.<\/li>\n<li><strong>Sharing of validated e-invoice<\/strong>: The supplier then shares the validated e-invoice, which now includes an embedded QR code, with the buyer. This QR code facilitates easy access and verification of the invoice details by the buyer.<\/li>\n<li><strong>Cancellation or rejection<\/strong>: The e-invoice can be canceled by the supplier or rejected by the buyer within a 72-hour from validation. This feature provides a brief period for rectifying any discrepancies or errors that may have been overlooked initially.<\/li>\n<li><strong>Storage and future access<\/strong>: The e-invoice is securely stored within the MyInvois Portal and can be accessed at any future date, ensuring transparency and availability of transaction records for compliance and auditing purposes.<\/li>\n<\/ul>\n<p>These steps streamline the e-invoicing process, making it efficient and user-friendly while ensuring compliance with IRBM&#8217;s regulations.<\/p>\n<p>The detailed procedures for each step are further elaborated in the guideline provided by the IRBM (LDHN), which serves as a comprehensive resource for taxpayers opting to utilize this digital invoicing system.<\/p>\n<p>The e-invoice software available in Malaysia can quickly and automatically complete all these steps. Our other article about the <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-invoicing-software\/\">e-invoicing software Malaysia<\/a> offers more software recommendations.<\/p>\n<h2><strong>Types of Transactions Requiring e-Invoice to be Issued<\/strong><\/h2>\n<p>The IRBM&#8217;s guideline delineates two primary scenarios necessitating the issuance of e-invoices:<\/p>\n<ul>\n<li><strong>Proof of income<\/strong>: Taxpayers must issue e-invoices for any sale or transaction that generates income. This ensures that all revenue activities are officially recorded and acknowledged.<\/li>\n<li><strong>Proof of expenses<\/strong>: Vendors or suppliers must issue e-invoices as valid proof to support taxpayers&#8217; claims for business-related expenses. These expenses may include purchasing goods and services, business expenditures, returns of goods, and discounts provided.<\/li>\n<\/ul>\n<p>In cases where goods or services are purchased from a foreign supplier, the IRBM mandates that the Malaysian purchaser (i.e., the taxpayer) issue a self-e-invoice to document these expenses.<\/p>\n<p>This requirement arises because foreign suppliers are not part of the MyInvois System and do not issue e-invoices, necessitating the Malaysian taxpayer to generate a self-e-invoice instead.<\/p>\n<p>Four distinct types of e-invoice documents cater to different transactional needs within a business:<\/p>\n<ul>\n<li><strong>Invoice<\/strong>: This document records sales transactions made by suppliers to buyers. It includes self-issued invoices by the Malaysian buyer to document expenses when foreign suppliers invoice.<\/li>\n<li><strong>Credit note<\/strong>: This records a reduction in the value of an original e-invoice and does not entail refunding money from the supplier to the buyer.<\/li>\n<li><strong>Debit note<\/strong>: This is issued to record an increase in the value of the original e-invoice.<\/li>\n<li><strong>Refund e-invoice<\/strong>: This documents the refund of an overpayment made by a buyer.<\/li>\n<\/ul>\n<p>Suppliers or sellers must issue e-invoices for both local (domestic) and international (foreign) sales, ensuring comprehensive documentation across all transactions.<\/p>\n<h2><strong>Scenarios of E-Invoicing For Transactions with Buyers (B2C)<\/strong><\/h2>\n<p>Suppliers provide receipts, bills, or invoices to consumers (buyers) to document B2C transactions for everyday purchases such as groceries, telephone bills, and similar consumption supplies.<\/p>\n<p>With Malaysia&#8217;s new mandate for e-invoicing, suppliers must also issue e-invoices through their invoicing or billing software for all B2C transactions. However, it&#8217;s recognized that many buyers, especially end consumers and certain types of businesses, may not require an e-invoice.<\/p>\n<p>In B2C transactions, the approach to generating e-invoices will adapt based on the buyer&#8217;s specific needs.<\/p>\n<h3>Scenario 1: Buyers require an e-invoice<\/h3>\n<p>In cases where a buyer requires an e-invoice, the process begins with the supplier <strong>collecting the necessary identification details from the buyer<\/strong> to ensure the e-invoice&#8217;s accuracy and legitimacy.<\/p>\n<p><strong>For Malaysian buyers<\/strong>, the supplier can obtain one or a combination of the following identification numbers:<\/p>\n<ul>\n<li>Tax Identification Number (TIN)<\/li>\n<li>Malaysian Identity Card Number (IC No.)<\/li>\n<li>MyTentera identification number (for military personnel)<\/li>\n<\/ul>\n<p>These details are essential for linking the e-invoice directly to the buyer&#8217;s financial and tax records.<\/p>\n<p><strong>For non-Malaysian buyers<\/strong>, the required details may include:<\/p>\n<ul>\n<li>Tax Identification Number (TIN)<\/li>\n<li>Passport number (if necessary, alongside the TIN)<\/li>\n<\/ul>\n<p>Once these details are collected, the supplier proceeds to <strong>issue the e-invoice<\/strong>. This involves creating an e-invoice that conforms to the stipulated formats and submitting it to the IRBM for validation.<\/p>\n<p>After the IRBM validates the e-invoice, the <strong>supplier shares it with the buyer<\/strong>. This e-invoice includes a QR code, which the buyer can scan to verify its validity and details online.<\/p>\n<p>Finally, the buyer can <strong>use the e-invoice for tax substantiation purposes<\/strong>. This means the buyer can officially use the e-invoice as proof of the transaction in their tax records, supporting claims for deductions, rebates, or compliance reporting.<\/p>\n<h3>Scenario 2: Buyers do not require an e-invoice<\/h3>\n<p>If the buyer does not need an e-invoice, the supplier continues to <strong>issue normal receipts<\/strong> as per the current practice.<\/p>\n<p>However, the buyer is flexible if they decide later that an e-invoice is needed. Specifically, the buyer can request an e-invoice anytime within the month of the transaction.<\/p>\n<p>For example, if a purchase is made on September 15, the buyer can request an e-invoice until September 30. This request can be made through a web portal or mobile application provided by the supplier, designed to facilitate such requests easily.<\/p>\n<p>Additionally, for operational efficiency, the supplier is responsible for <strong>consolidating all transactions<\/strong> for which e-invoices are not initially required. This consolidation is done every month.<\/p>\n<p>Once consolidated, the supplier must <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/consolidated-e-invoice\/\">issue a single consolidated e-invoice<\/a> encompassing all relevant transactions for that month. This consolidated document must be submitted to the IRBM for validation.<\/p>\n<p>The submission for validation must occur within seven calendar days after the end of the month, ensuring timely compliance with tax regulations.<\/p>\n<p>This process not only simplifies the administrative burden on suppliers by reducing the number of individual e-invoices that must be managed daily but also allows buyers to adapt their invoicing records to meet changing needs or compliance requirements.<\/p>\n<p>This flexible approach allows for efficient compliance with e-invoicing mandates while accommodating the varying needs of consumer segments in the B2C market.<\/p>\n<h2><strong><span id=\"e-invoice-challenges\">Challenges Businesses May Face Due to e-Invoicing System in Malaysia<\/span><\/strong><\/h2>\n<p>While beneficial, the transition to an e-invoicing system in Malaysia may bring with it a set of challenges that businesses may face as they adapt to new regulatory requirements, which are:<\/p>\n<ul>\n<li><strong>System integration and compatibility<\/strong>: One of the main challenges businesses face with e-invoicing is integrating it with existing financial systems, which can be especially difficult for smaller businesses lacking the necessary IT infrastructure or budget.<\/li>\n<li><strong>Training and adaptation<\/strong>: Adopting new e-invoicing systems necessitates substantial employee training on the technology and regulations, which involves time, resources, and overcoming a learning curve to ensure smooth business operations.<\/li>\n<li><strong>Data security and privacy<\/strong>: As businesses transition to digital invoicing, they must enhance data security and adhere to privacy regulations to protect sensitive information from cyber threats.<\/li>\n<li><strong>Regulatory compliance<\/strong>: Staying compliant with evolving e-invoicing regulations requires businesses to continually update their systems and stay informed, which can be demanding regarding resources.<\/li>\n<li><strong>Cost implications<\/strong>: The initial financial investment in setup, maintenance, and upgrades for new systems can be substantial, posing a barrier for some businesses despite the promise of long-term efficiency and cost savings.<\/li>\n<\/ul>\n<p>Companies need to evaluate their current systems, seek expert advice, and possibly adopt advanced solutions like HashMicro&#8217;s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing software<\/a>. This system offers seamless integration with MyInvois, LHDN or IRBM certified, and compliance features tailored to Malaysia&#8217;s e-invoicing mandates.<\/p>\n<p>Or, if you prefer a more complete accounting solution, you can refer to our other article about the <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-accounting-software\/\">best accounting software<\/a> in Malaysia.<\/p>\n<h2><strong>How to Prepare Your Business for Malaysia&#8217;s e-Invoicing Requirements?<\/strong><\/h2>\n<p>Adopting e-invoicing in Malaysia involves strategic preparation to ensure seamless integration and compliance. Here are essential steps to prepare your business for the transition:<\/p>\n<ul>\n<li><strong>Understand the requirements<\/strong>: Familiarize yourself with the IRBM e-invoicing guidelines. Knowing what is expected regarding document formats, data fields, and submission deadlines.<\/li>\n<li><strong>Select appropriate technology<\/strong>: Choose an e-invoicing solution that fits your business size and volume of transactions, either the MyInvois Portal or an API integration. Ensure the technology provider meets the Peppol standards mandated by the IRBM\u2014one example is HashMicro&#8217;s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing software<\/a>, which is already connected to the Peppol network.<\/li>\n<li><strong>Train your staff<\/strong>: Training your employees on the new system is essential. They should understand how to generate, send, and manage e-invoices accurately. Consider training sessions focused on using new software and updates on e-invoicing compliance.<\/li>\n<li><strong>Update your invoicing processes<\/strong>: Revise your invoicing procedures to include e-invoicing using invoicing software. This might involve setting up new digital workflows, updating your financial systems, and ensuring secure internet connections for uninterrupted e-invoice transmission.<\/li>\n<li><strong>Test the system<\/strong>: Before the full implementation, conduct tests to ensure your e-invoicing system works smoothly with the IRBM&#8217;s platform. This testing phase can help identify and rectify any issues before they impact compliance.<\/li>\n<li><strong>Stay informed<\/strong>: Regulations can evolve, so it&#8217;s vital to stay aware of any updates from the IRBM. Subscribe to newsletters or join relevant forums to stay informed about e-invoicing developments.<\/li>\n<\/ul>\n<p>Following these steps, you can effectively prepare your business for Malaysia&#8217;s e-invoicing requirements, ensuring compliance and enhancing operational efficiencies.<\/p>\n<h2><strong>How Can HashMicro Help Your Business to Comply with Malaysia&#8217;s e-Invoicing Requirements?<\/strong><\/h2>\n<p><img decoding=\"async\" class=\"aligncenter wp-image-965 size-full\" src=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1.webp\" alt=\"IRBM e-invoice malaysia\" width=\"1039\" height=\"784\" srcset=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1.webp 1039w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-300x226.webp 300w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-1024x773.webp 1024w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-768x580.webp 768w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-557x420.webp 557w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-80x60.webp 80w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-150x113.webp 150w, https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/How-Can-HashMicro-Help-Your-Business-to-Comply-with-Malaysia-e-Invoicing-Requirements-1-696x525.webp 696w\" sizes=\"(max-width: 1039px) 100vw, 1039px\" \/><\/p>\n<p><strong>HashMicro&#8217;s <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">e-invoicing software<\/a><\/strong>, already connected to the Peppol network, is designed to streamline your invoicing process in Malaysia. It will ensure you get paid faster, maintain optimal cash flow, and ensure compliance.<\/p>\n<p>With the capability to be customized extensively and integrated with other third-app applications or existing systems, such as IRBM&#8217;s MyInvois System, HashMicro becomes one of your best solutions for adhering to Malaysia&#8217;ss e-invoicing requirements with minimal to little hassle. Here&#8217;s<span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;\">\u00a0how HashMicro can transform your e-invoicing experience:<\/span><\/p>\n<ul>\n<li><strong>Invoice generation<\/strong>: Create and customize invoices with personalized templates for each client, enhancing the flexibility and coherence of your brand presentation. You can also print or email these invoices in PDF format.<\/li>\n<li><strong>Invoice approval &amp; validation<\/strong>: HashMicro&#8217;s system requires approvals and validations for invoices, particularly those with special prices or discounts, before dispatch. This ensures compliance with agreed terms and pricing.<\/li>\n<li><strong>Tax and discount management<\/strong>: HashMicro&#8217;s software automatically calculates taxes and discounts for each invoice, ensuring compliance with Malaysia&#8217;s tax regulations. This feature simplifies applying correct tax rates and discounts.<\/li>\n<li><strong>Online payment management<\/strong>: Integrate online payment gateways to enhance customer convenience, allowing <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/billing-address\/\">direct payments<\/a> through the portal with immediate receipt issuance.<\/li>\n<li><strong>Credit limit management<\/strong>: Managing credit effectively is crucial.HashMicro&#8217;ss system allows you to set specific credit limits for each client based on your product or service pricing.<\/li>\n<li><strong>Real-time invoice reporting<\/strong>: HashMicro&#8217;s e-invoicing system offers real-time reporting to track invoice age and status. This feature helps quickly identify unpaid invoices, aiding cash flow management and providing insights into total income.<\/li>\n<\/ul>\n<p>Complying with local e-invoicing requirements helps Malaysian businesses enhance efficiency, reduce errors, and improve customer satisfaction, especially when paired with <a href=\"https:\/\/www.hashmicro.com\/my\/blog\/best-retail-pos-software\/\">retail POS software<\/a> that streamlines invoicing seamlessly.<\/p>\n<h2><strong>Conclusion<\/strong><\/h2>\n<p>Malaysia&#8217;s e-invoice requirements present a significant shift toward streamlined business operations, improved tax compliance, and enhanced financial accuracy.<\/p>\n<p>While the benefits are substantial, businesses may face challenges adapting to these new standards, often requiring comprehensive system updates for their new office management software.<\/p>\n<p>For businesses looking for a comprehensive solution, Hashmicro&#8217;s ERP integrates seamlessly with <a href=\"https:\/\/www.hashmicro.com\/my\/invoicing-software\">government-approved e-invoicing APIs<\/a>. This integration ensures regulatory compliance, minimizes errors, and enhances transparency, making it a strategic choice for businesses in Malaysia.<\/p>\n<p>Don&#8217;t let e-invoicing slow down your business. Opt for HashMicro&#8217;s e-invoicing system and enjoy a smooth, compliant, efficient invoicing process.<\/p>\n<p>Access a <a href=\"https:\/\/www.hashmicro.com\/my\/free-product-demo\/\">free demo<\/a> now and experience firsthand how HashMicro can transform your financial operations and ensure compliance with Malaysia\u2019s e-invoicing requirements.<\/p>\n<p><strong><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><\/strong><\/p>\n<h2><strong>FAQ of e-Invoice Malaysia<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>What information needs to be included in an e-invoice?<\/strong><\/summary>\n<p>To issue an e-invoice, you need to fill in 37 mandatory data fields and 18 other data fields (optional). Additionally, depending on the nature of the transaction, such as exports or imports, there might be an extra 17 fields required. These fields cover various categories, including address, business details, contact number, invoice details, parties involved, payment information, and product or service details.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Is it necessary to include annexures in e-invoices?<\/strong><\/summary>\n<p>Yes, when dealing with specific transactions like exports and imports, you are required to include 17 additional data fields in the e-invoice annexure. This ensures that all necessary information is provided for these specialized transactions.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Is it possible to edit an e-invoice after it has been validated by IRBM?<\/strong><\/summary>\n<p>No, once an e-invoice has been validated by the Inland Revenue Board of Malaysia (IRBM), it cannot be edited. If any changes are necessary, the seller must cancel the original e-invoice and issue a new one. This process ensures that all invoices remain accurate and verifiable.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>What authority oversees the e-invoicing system in Malaysia?<\/strong><\/summary>\n<p>The Inland Revenue Board of Malaysia (IRBM) oversees and manages the e-invoicing system. It provides guidelines and technical support and conducts engagement sessions to help businesses transition to e-invoicing. For any queries or concerns, businesses can contact IRBM directly via the provided communication channels.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Can an e-invoice be canceled once submitted to IRBM?<\/strong><\/summary>\n<p>Yes, an e-invoice can be canceled within 72 hours of its generation. This allows sellers a short window to rectify any mistakes by canceling the erroneous invoice and issuing a new one if needed.<span style=\"font-family: Verdana, BlinkMacSystemFont, -apple-system, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;\">\u00a0<\/span><\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"What information needs to be included in an e-invoice?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"To issue an e-invoice, you need to fill in 37 mandatory data fields and 18 other data fields (optional). Additionally, depending on the nature of the transaction, such as exports or imports, there might be an extra 17 fields required. These fields cover various categories, including address, business details, contact number, invoice details, parties involved, payment information, and product or service details.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Is it necessary to include annexures in e-invoices?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Yes, when dealing with specific transactions like exports and imports, you are required to include 17 additional data fields in the e-invoice annexure. This ensures that all necessary information is provided for these specialized transactions.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Is it possible to edit an e-invoice after it has been validated by IRBM?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"No, once an e-invoice has been validated by the Inland Revenue Board of Malaysia (IRBM), it cannot be edited. If any changes are necessary, the seller must cancel the original e-invoice and issue a new one. This process ensures that all invoices remain accurate and verifiable.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"What authority oversees the e-invoicing system in Malaysia?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"The Inland Revenue Board of Malaysia (IRBM) oversees and manages the e-invoicing system. It provides guidelines and technical support and conducts engagement sessions to help businesses transition to e-invoicing. For any queries or concerns, businesses can contact IRBM directly via the provided communication channels.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Can an e-invoice be canceled once submitted to IRBM?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Yes, an e-invoice can be canceled within 72 hours of its generation. This allows sellers a short window to rectify any mistakes by canceling the erroneous invoice and issuing a new one if needed.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Malaysia is moving toward a nationwide e-Invoicing framework introduced by the Inland Revenue Board of Malaysia (IRBM). To ensure a smooth transition, the mandate will be implemented in phases based on annual turnover thresholds. Beginning January 2026, businesses with an annual turnover or revenue of up to RM5 million will be required to issue and [&hellip;]<\/p>\n","protected":false},"author":18,"featured_media":960,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[54],"tags":[],"class_list":{"0":"post-955","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-accounting"},"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>A Complete Guide to e-Invoice Requirements in Malaysia 2026<\/title>\n<meta name=\"description\" content=\"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.\" \/>\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\/e-invoice-malaysia\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A Complete Guide to IRBM e-Invoice Malaysia 2026\" \/>\n<meta property=\"og:description\" content=\"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Malaysia\" \/>\n<meta property=\"article:published_time\" content=\"2024-07-06T05:11:19+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-10T04:53:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Holy Setiawan\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Holy Setiawan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"19 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\/e-invoice-malaysia\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\"},\"author\":{\"name\":\"Holy Setiawan\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/fd5093e89aa604ac7c4c66aab0609dbc\"},\"headline\":\"A Complete Guide to IRBM e-Invoice Malaysia 2026\",\"datePublished\":\"2024-07-06T05:11:19+00:00\",\"dateModified\":\"2026-03-10T04:53:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\"},\"wordCount\":3996,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp\",\"articleSection\":[\"Accounting\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\",\"name\":\"A Complete Guide to e-Invoice Requirements in Malaysia 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp\",\"datePublished\":\"2024-07-06T05:11:19+00:00\",\"dateModified\":\"2026-03-10T04:53:17+00:00\",\"description\":\"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp\",\"width\":1200,\"height\":675,\"caption\":\"IRBM e-invoice malaysia\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/my\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"A Complete Guide to IRBM e-Invoice Malaysia 2026\"}]},{\"@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\/fd5093e89aa604ac7c4c66aab0609dbc\",\"name\":\"Holy Setiawan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/182fb7c322dd42464c2b0f072e54f260?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/182fb7c322dd42464c2b0f072e54f260?s=96&d=mm&r=g\",\"caption\":\"Holy Setiawan\"},\"url\":\"https:\/\/www.hashmicro.com\/my\/blog\/author\/holy-setiawan\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"A Complete Guide to e-Invoice Requirements in Malaysia 2026","description":"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.","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\/e-invoice-malaysia\/","og_locale":"en_US","og_type":"article","og_title":"A Complete Guide to IRBM e-Invoice Malaysia 2026","og_description":"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.","og_url":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/","og_site_name":"HashMicro Malaysia","article_published_time":"2024-07-06T05:11:19+00:00","article_modified_time":"2026-03-10T04:53:17+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp","type":"image\/webp"}],"author":"Holy Setiawan","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Holy Setiawan","Est. reading time":"19 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/"},"author":{"name":"Holy Setiawan","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/fd5093e89aa604ac7c4c66aab0609dbc"},"headline":"A Complete Guide to IRBM e-Invoice Malaysia 2026","datePublished":"2024-07-06T05:11:19+00:00","dateModified":"2026-03-10T04:53:17+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/"},"wordCount":3996,"publisher":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp","articleSection":["Accounting"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/","url":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/","name":"A Complete Guide to e-Invoice Requirements in Malaysia 2026","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp","datePublished":"2024-07-06T05:11:19+00:00","dateModified":"2026-03-10T04:53:17+00:00","description":"Discover everything you need to know about e-invoice requirements in Malaysia for 2026 through this complete guideline.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#primaryimage","url":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp","contentUrl":"https:\/\/www.hashmicro.com\/my\/blog\/wp-content\/uploads\/2024\/06\/e-invoice-malaysia-hashmicro.webp","width":1200,"height":675,"caption":"IRBM e-invoice malaysia"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/my\/blog\/e-invoice-malaysia\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/my\/blog\/"},{"@type":"ListItem","position":2,"name":"A Complete Guide to IRBM e-Invoice Malaysia 2026"}]},{"@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\/fd5093e89aa604ac7c4c66aab0609dbc","name":"Holy Setiawan","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.hashmicro.com\/my\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/182fb7c322dd42464c2b0f072e54f260?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/182fb7c322dd42464c2b0f072e54f260?s=96&d=mm&r=g","caption":"Holy Setiawan"},"url":"https:\/\/www.hashmicro.com\/my\/blog\/author\/holy-setiawan\/"}]}},"order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/955","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\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/comments?post=955"}],"version-history":[{"count":30,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/955\/revisions"}],"predecessor-version":[{"id":17442,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/posts\/955\/revisions\/17442"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media\/960"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/media?parent=955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/categories?post=955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/my\/blog\/wp-json\/wp\/v2\/tags?post=955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}