{"id":176939,"date":"2025-11-19T00:00:00","date_gmt":"2025-11-18T17:00:00","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=176939"},"modified":"2025-11-24T08:40:28","modified_gmt":"2025-11-24T01:40:28","slug":"merchant-discount-rate","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/","title":{"rendered":"Strategi Jitu dalam Mengelola Merchant Discount Rate"},"content":{"rendered":"<p>Setiap transaksi non-tunai memotong profit Anda melalui biaya tersembunyi yang disebut Merchant Discount Rate (MDR). Tanpa pemahaman yang tepat, biaya ini dapat menggerus keuntungan bisnis Anda secara signifikan.<\/p>\n<p>Mengabaikan MDR dapat menyebabkan kesalahan penetapan harga dan analisis profitabilitas yang tidak akurat. Untungnya, pengelolaan biaya ini menjadi lebih mudah dengan bantuan <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos\">Software POS HashMicro<\/a> yang canggih.<\/p>\n<p>Artikel ini akan mengupas tuntas cara kerja MDR hingga strategi jitu untuk mengelolanya. Mari kita dalami bagaimana Anda bisa mengubah biaya ini menjadi peluang efisiensi untuk keuntungan maksimal.<\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 25px 25px 25px 25px;\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px; border: none;\">\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li style=\"list-style-type: none;\">\n<ul>\n<li aria-level=\"1\"><a href=\"#mdr\"><strong>Merchant Discount Rate (MDR)<\/strong><\/a> adalah biaya persentase yang dipotong dari setiap transaksi non-tunai untuk memastikan proses pembayaran digital berjalan aman dan efisien.<\/li>\n<li aria-level=\"1\"><a href=\"#transaksi\"><strong>Transaksi MDR melibatkan<\/strong> <\/a>pelanggan, merchant, bank penerbit, bank pengakuisisi, dan jaringan kartu yang bekerja sama memastikan pembayaran non-tunai diproses cepat dan aman.<\/li>\n<li><a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos\"><strong>HashMicro POS<\/strong><\/a> membantu meminimalkan dampak MDR dengan pencatatan otomatis dan analitik margin yang akurat sehingga Anda tetap bisa menjaga profit dari setiap transaksi.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p style=\"text-align: center;\">\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span data-sheets-root=\"1\"><div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tDaftar Isi:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Daftar Isi<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n\r\n<style>\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor:#000;\r\n\t\tmargin-bottom: 10px;\r\n\t\ttransition:all 0.2s ease-in-out;\r\n\t\tfont-size:15px\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#list_toc_float li a{margin-bottom:0px}\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width:768px){\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t \/* custom scrollbar style *\/\r\n::-webkit-scrollbar {\r\n    width: 7px;\r\n}\r\n::-webkit-scrollbar-track {\r\n    background: #d7a2a4;\r\n}\r\n::-webkit-scrollbar-thumb {\r\n    background: #b1252d;\r\n    border-radius: 15px;\r\n}\t\t\r\n\r\n<\/style>\r\n\r\n<script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\t\/\/ Fungsi untuk menangani klik pada semua elemen <a> dengan href yang dimulai dengan #\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst targetId = this.getAttribute('href').substring(1);\r\n\t\t\tconst targetElement = document.getElementById(targetId);\r\n\r\n\t\t\tif (targetElement) {\r\n\t\t\t\tconst headerHeight = document.querySelector('#toc .header').offsetHeight;\r\n\t\t\t\tconst navbarHeight = document.getElementById('tdi_34') ? document.getElementById('tdi_34').offsetHeight : 0;\r\n\t\t\t\tconst windowHeight = window.innerHeight;\r\n\t\t\t\tconst targetOffset = targetElement.offsetTop;\r\n\t\t\t\tconst scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight) - navbarHeight - 40;\r\n\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: scrollTo,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua elemen <a> di toc-list dan list-toc\r\n\t\tconst titleLinks = document.querySelectorAll('#toc-list a, #list_toc a');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n<\/script>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\n\/\/ document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/   const toc = document.querySelector('#toc');\r\n\/\/   const footer = document.querySelector('.td-footer-template-wrap');\r\n\/\/   const tocParent = toc.parentElement;\r\n\/\/   const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n\/\/   const tocHeight = toc.offsetHeight;\r\n\/\/   const triggerPoint = divTop + tocHeight + 700;\r\n\/\/   const footerHeight = footer.offsetHeight;\r\n\/\/   const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n\/\/   const phtoc = document.querySelector('#placeholder-toc');\r\n\/\/   const headers = document.querySelectorAll('.td-post-content h2');\r\n\/\/   const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\/\/ \tconst panel2 = document.querySelector(\"#toc .list\");\r\n\/\/ \tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n\/\/   let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n\/\/   \/\/ Function to handle scroll and add\/remove .sticky class\r\n\/\/   function handleScroll() {\r\n\/\/     const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n\/\/     let currentHeader = '';\r\n\r\n\/\/     \/\/ Highlight user progress as the heading comes\r\n\/\/     headers.forEach(header => {\r\n\/\/ \t\tconst headerTop = header.offsetTop;\r\n\/\/ \t\tconst headerHeight = header.clientHeight;\r\n\/\/ \/\/ \t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \/\/ \t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \/\/ \t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\/\/ \/\/ \t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \/\/ \t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\/\/ \/\/ \t\t\tif(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t\ttocTitle.textContent = 'Daftar Isi';\r\n\/\/ \/\/ \t\t\t}\r\n\/\/ \/\/ \t\t}\r\n\/\/ \t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\ttocTitle.textContent = 'Daftar Isi'; \/\/ Selalu pertahankan judul ini di mobile\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \t\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \t\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \t\t\t\tcurrentHeader = currentHeaderId;\r\n\/\/ \t\t\t}\r\n\/\/ \t\t}\r\n\/\/ \t});\r\n\r\n\/\/     navLinks.forEach(link => {\r\n\/\/       link.classList.remove('active');\r\n\/\/       if(currentHeader != '') {\r\n\/\/ \t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\/\/ \t\t\t  link.classList.add('active');\r\n\/\/ \t\t  }\r\n\/\/ \t  }\r\n\/\/     });\r\n\/\/ \/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/ \/\/         toc.style.display = 'block';\r\n\/\/ \/\/ \t}else{\r\n\/\/ \/\/         toc.style.display = 'none';\r\n\/\/ \/\/ \t}\r\n\/\/     \/\/ Update TOC title if sticky\r\n\/\/     if (windowTop > triggerPoint) {\r\n\/\/       if (!toc.classList.contains('sticky')) {\r\n\/\/         phtoc.style.display = \"block\";\r\n\/\/         toc.classList.add('sticky');\r\n\/\/         toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/         toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/         toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\tpanel2.style.height = '0px';\r\n\/\/ \t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t  if(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar Isi'; \/\/ Reset title\r\n\/\/        \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\/\/ \t\t  }\r\n\/\/       }\r\n\/\/       if (currentHeader) {\r\n\/\/ \/\/         console.log(\"activeLink:\", activeLink);\r\n\/\/         if (activeLink) {\r\n\/\/ \/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n\/\/           tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n\/\/         }\r\n\/\/       }\r\n\/\/     } else {\r\n\/\/       toc.classList.remove('sticky');\r\n\/\/       phtoc.style.display = \"none\";\r\n\/\/       toc.style.width = 'unset'; \/\/ Reset to original width\r\n\/\/       toc.style.backgroundColor = \"#FFF\";\r\n\/\/       tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\/\/ \t\ticon.style.transform = \"rotate(180deg)\";\r\n\/\/     }\r\n\/\/   }\r\n\r\n\/\/     \/\/ Attach the scroll event listener to the window\r\n\/\/     window.addEventListener('scroll', handleScroll);\r\n\r\n\/\/     \/\/ Initial call to handleScroll to set the correct state on load\r\n\/\/     handleScroll();\r\n\/\/ });\r\n\t\r\n\/\/ \t\/\/ Open toggle TOC\r\n\/\/ \t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/ \t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\/\/ \t\tvar toc = document.querySelector(\"#toc\");\r\n\/\/ \t\tvar icon = document.querySelector(\".toc-icon\");\r\n\/\/ \t\tconst tocTitle = document.querySelector('#toc-title');\r\n\/\/ \t\tconst tocs = document.querySelector('#toc.sticky');\r\n\/\/  \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\/\/ \t\t  tocHeader.addEventListener(\"click\", function() {\r\n\/\/ \t\t\tvar panel = this.nextElementSibling;\r\n\/\/ \t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\/\/ \t\t\t\tif(window.innerWidth > 768){\r\n\/\/ \t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\/\/ \t\t\t} else {\r\n\/\/ \t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '24px';\r\n\/\/ \t\t\t \tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/ \t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t}\r\n\/\/ \t\t  });\r\n\r\n\/\/ \t\t  \/\/ Close TOC when a link inside it is clicked\r\n\/\/ \t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\/\/ \t\t  tocLinks.forEach(function(link) {\r\n\/\/ \t\t\tlink.addEventListener(\"click\", function() {\r\n\/\/ \t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t});\r\n\/\/ \t\t  });\r\n\/\/ \t\t});\r\n\r\n\/\/ START new JS for ToC improvements\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 1750;\r\n\tconsole.log(triggerPoint)\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight*3;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n  \r\n  const panel2 = document.querySelector(\"#toc .list\");\r\n  const icon = document.querySelector(\".toc-icon\");\r\n  const tocTitle = document.querySelector('#toc-title');\r\n\r\n  let activeLink = null;\r\n  let userClosedTOC = false; \/\/ Flag user menutup TOC\r\n\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Update TOC title sesuai header yang terlihat\r\n    headers.forEach(header => {\r\n      const headerTop = header.offsetTop;\r\n      const headerHeight = header.clientHeight;\r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n      } else {\r\n        if (window.scrollY >= (headerTop - headerHeight + 1750)) {\r\n          const currentHeaderId = header.getAttribute('id');\r\n          const currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n          tocTitle.textContent = currentHeaderText;\r\n          currentHeader = currentHeaderId;\r\n        }\r\n      }\r\n    });\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader && link.getAttribute('href').includes(currentHeader)) {\r\n        link.classList.add('active');\r\n      }\r\n    });\r\n\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`;\r\n        toc.style.backgroundColor = \"#FFF\";\r\n        \/\/ Saat sticky, TOC otomatis tertutup\r\n        panel2.style.height = '0px';\r\n        icon.style.transform = \"rotate(180deg)\";\r\n        userClosedTOC = true; \/\/ Set flag supaya tidak terbuka saat scroll\r\n      }\r\n      \r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n        toc.style.width = '150px';\r\n      }\r\n\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset';\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Daftar isi'; \r\n\r\n      \/\/ Kembalikan panel jika user belum menutup manual\r\n      if(!userClosedTOC) {\r\n        panel2.style.height = panel2.scrollHeight + \"px\";\r\n        icon.style.transform = \"rotate(0deg)\";\r\n      }\r\n    }\r\n  }\r\n\r\n  window.addEventListener('scroll', handleScroll);\r\n  handleScroll();\r\n\r\n  \/\/ Toggle TOC saat user klik\r\n  const tocHeader = document.querySelector(\"#toc .header\");\r\n  tocHeader.addEventListener(\"click\", function() {\r\n    const panel = panel2;\r\n    if (panel.style.height !== '0px') {\r\n      panel.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    } else {\r\n      panel.style.height = panel.scrollHeight + \"px\";\r\n      icon.style.transform = \"rotate(0deg)\";\r\n      userClosedTOC = false;\r\n    }\r\n  });\r\n\r\n  \/\/ Close TOC saat link diklik\r\n  document.querySelectorAll(\"#toc .list a\").forEach(link => {\r\n    link.addEventListener(\"click\", function() {\r\n      panel2.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    });\r\n  });\r\n});\r\n\/\/ END new JS for ToC improvements\r\n\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } \r\n\t\t  else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener(\"DOMContentLoaded\", function() {\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        \/\/ Mengambil semua elemen h2 dan h3\r\n\t\tconst elements = document.querySelectorAll('.td-post-content h2');\r\n\r\n\t\t\tfunction newFormatId(text) {\r\n\t\t\t\tif(text.toLowerCase() === \"key takeaways\") {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tconst result = text.toLowerCase()\r\n\t\t\t\t.trim()\r\n\t\t\t\t.replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n\t\t\t\t.replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n\t\t\t\treturn result;\r\n\t\t\t}\r\n\t\r\n\t\telements.forEach(element => {\r\n\t\t\tif (element.tagName === 'H2') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h2\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n\t\t\t\theadings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n\t\t\t} else if (element.tagName === 'H3') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h3\r\n\t\t\t\tif (headings.length > 0) {\r\n\t\t\t\t\theadings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n       \/\/ Membuat list HTML dari objek headings\r\n\t\tconst ul = document.getElementById('list_toc');\r\n\t\tlet currentUl = ul;\r\n\t\theadings.forEach(heading => {\r\n\t\t\tconst li = document.createElement('li');\r\n\t\t\tconst a = document.createElement('a');\r\n\t\t\ta.textContent = heading.title;\r\n\t\t\ta.href = `#${heading.id}`; \/\/ Gunakan ID yang baru dihasilkan\r\n\t\t\tli.appendChild(a);\r\n\r\n\t\t\tif (heading.level === 'h2') {\r\n\t\t\t\tcurrentUl = li;\r\n\t\t\t\tul.appendChild(li);\r\n\t\t\t} else if (heading.level === 'h3') {\r\n\t\t\t\tif (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n\t\t\t\t\tconst nestedUl = document.createElement('ul');\r\n\t\t\t\t\tcurrentUl.appendChild(nestedUl);\r\n\t\t\t\t\tcurrentUl = nestedUl;\r\n\t\t\t\t}\r\n\t\t\t\tcurrentUl.appendChild(li);\r\n\t\t\t}\r\n\r\n\t\t\tcreateNestedList(li, heading.children);\r\n\t\t});\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc'\r\n\t\tconst ulFloat = document.getElementById('list_toc');\r\n\r\n\t\t\/\/ Dapatkan isi (child elements) dari ul dengan id 'list_toc'\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\r\n\t\t\/\/ Tambahkan isi yang telah didapatkan dari 'list_toc' ke ul dengan id 'list_toc_float'\r\n\t\tulToc.append(...clonedChildren);\r\n\r\n\r\n        \/\/ Fungsi untuk mengambil tinggi navbar\r\n\t\tfunction getNavbarHeight() {\r\n\t\t\tconst navbar = document.getElementById('tdi_34');\r\n\t\t\treturn navbar ? navbar.offsetHeight : 0;\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menambahkan offset posisi scroll\r\n\t\tfunction scrollToElementWithOffset(elementId) {\r\n\t\t\tconst element = document.getElementById(elementId);\r\n\t\t\tif (element) {\r\n\t\t\t\tconst offset = getNavbarHeight();\r\n\t\t\t\tconst elementPosition = element.getBoundingClientRect().top;\r\n\t\t\t\tconst offsetPosition = elementPosition - offset - 40;\r\n\r\n\t\t\t\twindow.scrollBy({\r\n\t\t\t\t\ttop: offsetPosition,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menangani klik pada tautan judul\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst href = event.target.getAttribute('href').substr(1);\r\n\t\t\tscrollToElementWithOffset(href);\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua tautan judul\r\n\t\tconst titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t\t\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/p>\n<p><span data-sheets-root=\"1\">\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><\/span><\/p>\n<h2><strong>Apa Itu Merchant Discount Rate (MDR)?<\/strong><\/h2>\n<p>Merchant Discount Rate (MDR) adalah biaya yang dikenakan kepada pemilik usaha (merchant) oleh bank atau penyedia layanan pembayaran untuk setiap transaksi non-tunai. Biaya ini dihitung sebagai persentase dari nilai transaksi untuk menutupi biaya infrastruktur, keamanan, dan layanan dalam ekosistem pembayaran digital.<\/p>\n<p>MDR merupakan komponen fundamental dalam setiap transaksi elektronik, baik yang menggunakan kartu debit, kartu kredit, maupun dompet digital melalui QRIS. Biaya ini secara otomatis dipotong dari jumlah transaksi sebelum dana disetorkan ke rekening Anda. Karena sifatnya yang langsung mengurangi pendapatan, memahami besarannya menjadi sangat penting untuk perhitungan harga jual produk.<\/p>\n<p>Keberadaan MDR sering disalahpahami sebagai keuntungan sepihak bagi bank, padahal fungsinya jauh lebih kompleks. Biaya ini didistribusikan ke beberapa pihak yang terlibat untuk memastikan setiap transaksi berjalan lancar, cepat, dan aman. Tanpa mekanisme MDR, ekosistem pembayaran non-tunai yang nyaman bagi pelanggan tidak akan dapat beroperasi secara efisien.<\/p>\n<h2><strong>Siapa Saja Pihak yang Terlibat dalam Transaksi MDR?<\/strong><\/h2>\n<p>Transaksi MDR melibatkan beberapa pihak utama, yaitu pelanggan (cardholder), pedagang (merchant), bank pengakuisisi (acquirer), bank penerbit (issuer), dan jaringan kartu (card network).<span id=\"transaksi\"><\/span><\/p>\n<p>Setiap kali pelanggan melakukan pembayaran non-tunai, sebuah proses kompleks terjadi di belakang layar yang melibatkan kolaborasi berbagai institusi. Proses ini memastikan otorisasi, transfer dana, dan penyelesaian transaksi berjalan mulus dalam hitungan detik. Memahami peran masing-masing pihak akan memberikan Anda gambaran yang lebih jelas tentang mengapa biaya MDR diperlukan.<\/p>\n<h3><strong>1. Pelanggan (Cardholder)<\/strong><\/h3>\n<p>Pelanggan adalah individu yang memiliki kartu pembayaran dan menggunakannya untuk melakukan pembelian barang atau jasa dari merchant. Mereka adalah pemicu utama dari seluruh alur transaksi. Kenyamanan dan keamanan yang mereka rasakan sebagian besar difasilitasi oleh infrastruktur yang didanai melalui MDR.<\/p>\n<h3><strong>2. Pedagang (Merchant)<\/strong><\/h3>\n<p>Sebagai pedagang, Anda adalah pihak yang menerima pembayaran non-tunai dari pelanggan sebagai imbalan atas produk atau layanan. Anda menyediakan fasilitas pembayaran seperti mesin EDC atau kode QRIS. Dalam ekosistem ini, Anda adalah pihak yang menanggung biaya MDR dari setiap pendapatan transaksi.<\/p>\n<h3><strong>3. Bank Penerbit (Issuer Bank)<\/strong><\/h3>\n<p>Bank penerbit adalah lembaga keuangan yang menerbitkan kartu pembayaran kepada pelanggan, seperti kartu debit atau kredit. Peran utama mereka adalah melakukan otorisasi transaksi dengan memverifikasi ketersediaan dana atau batas kredit pelanggan. Bank penerbit menanggung risiko terbesar, sehingga mereka menerima porsi terbesar dari biaya MDR yang dikenal sebagai <em>interchange fee<\/em>.<\/p>\n<h3><strong>4. Bank Pengakuisisi (Acquirer Bank)<\/strong><\/h3>\n<p>Bank pengakuisisi adalah bank yang bekerja sama dengan Anda sebagai merchant untuk memproses transaksi elektronik. Mereka bertanggung jawab menerima data transaksi, meneruskannya ke jaringan kartu, dan menyetorkan dana ke rekening bisnis Anda. Bank ini juga mendapatkan sebagian kecil dari MDR sebagai margin keuntungan atas layanan mereka.<\/p>\n<h3><strong>5. Jaringan Kartu (Card Network)<\/strong><\/h3>\n<p>Jaringan kartu seperti Visa, Mastercard, atau Gerbang Pembayaran Nasional (GPN) bertindak sebagai perantara yang menghubungkan bank penerbit dan bank pengakuisisi. Mereka menetapkan aturan main, standar keamanan, dan menyediakan infrastruktur teknologi. Untuk layanan ini, mereka memungut biaya kecil yang disebut <em>assessment fee<\/em>.<\/p>\n<h2><strong>Bagaimana Cara Kerja Merchant Discount Rate?<\/strong><\/h2>\n<p>Cara kerja MDR dimulai saat pelanggan membayar, di mana bank pengakuisisi menarik dana penuh dari bank penerbit. Setelah itu, biaya MDR didistribusikan ke pihak terkait sebelum sisa dana bersih disetorkan ke rekening merchant dalam 1-3 hari kerja.<\/p>\n<p>Proses kerja MDR adalah alur sirkulasi dana dan informasi yang terstruktur untuk memastikan setiap pihak mendapatkan haknya. Ketika pelanggan menggesek kartu, data transaksi tidak langsung masuk ke rekening Anda. Sebaliknya, data tersebut memulai perjalanan melalui jaringan pembayaran yang rumit untuk otorisasi, kliring, dan penyelesaian.<\/p>\n<p>Alur finansial di balik MDR dimulai dengan proses otorisasi, di mana permintaan transaksi dikirim dari mesin EDC ke bank penerbit. Setelah disetujui, dana sebesar nilai transaksi penuh akan ditransfer dari bank penerbit ke bank pengakuisisi. Dari jumlah tersebut, bank pengakuisisi akan memotong total biaya MDR sebelum mentransfer sisa dana bersih ke rekening bisnis Anda.<\/p>\n<h2><strong>Komponen dan Cara Menghitung Merchant Discount Rate<\/strong><\/h2>\n<p><strong>Quick Answer:<\/strong> Merchant Discount Rate dihitung dengan rumus: <strong>Nilai Transaksi x Persentase MDR (%)<\/strong>. Total persentase MDR terdiri dari tiga komponen utama: <em>Interchange Fee<\/em>, <em>Assessment Fee<\/em>, dan <em>Acquirer&#8217;s Markup<\/em>.<\/p>\n<p>Meskipun terlihat sebagai satu potongan tunggal, persentase MDR merupakan gabungan dari beberapa jenis biaya. Memahami komponen-komponen ini penting karena dapat membantu Anda saat bernegosiasi dengan penyedia layanan. Struktur biaya ini memastikan setiap lembaga yang berperan dalam keamanan dan kelancaran transaksi menerima kompensasi yang sesuai.<\/p>\n<h3><strong>1. Biaya interchange (Interchange Fee)<\/strong><\/h3>\n<p>Ini adalah komponen terbesar dari MDR, biasanya mencakup 70-80% dari total biaya. Biaya ini dibayarkan oleh bank pengakuisisi kepada bank penerbit kartu sebagai kompensasi atas risiko yang mereka tanggung. Besaran <em>interchange fee<\/em> ditetapkan oleh jaringan kartu dan bervariasi tergantung pada jenis kartu serta kategori industri.<\/p>\n<h3><strong>2. Biaya penilaian (Assessment Fee)<\/strong><\/h3>\n<p>Biaya ini dipungut oleh jaringan kartu seperti Visa atau Mastercard sebagai imbalan atas penggunaan infrastruktur mereka. <em>Assessment fee<\/em> biasanya merupakan persentase yang sangat kecil dari nilai transaksi. Namun, nilainya menjadi signifikan karena volume transaksi global yang sangat besar.<\/p>\n<h3><strong>3. Margin bank pengakuisisi (Acquirer&#8217;s Markup)<\/strong><\/h3>\n<p>Ini adalah bagian keuntungan yang diambil oleh bank pengakuisisi atau penyedia layanan pembayaran Anda. Margin ini merupakan biaya untuk layanan yang mereka sediakan, seperti penyediaan mesin EDC dan layanan pelanggan. Besaran margin inilah yang paling mungkin untuk dinegosiasikan, terutama jika bisnis Anda memiliki volume transaksi tinggi.<\/p>\n<h3><strong>4. Rumus dan contoh simulasi perhitungan<\/strong><\/h3>\n<p>Untuk menghitung biaya MDR, Anda hanya perlu mengalikan total nilai transaksi dengan persentase MDR yang disepakati. Sebagai contoh, sebuah restoran memiliki tarif MDR 2% untuk transaksi kartu kredit. Jika pelanggan membayar tagihan sebesar Rp 500.000, maka perhitungannya adalah: <strong>Rp 500.000 x 2% = Rp 10.000<\/strong>.<\/p>\n<h2><strong>Regulasi MDR di Indonesia Berdasarkan Ketentuan Bank Indonesia<\/strong><\/h2>\n<p><strong>Quick Answer:<\/strong> Di Indonesia, besaran Merchant Discount Rate untuk transaksi QRIS diatur secara ketat oleh Bank Indonesia (BI) melalui Peraturan Anggota Dewan Gubernur (PADG). Regulasi ini bertujuan menciptakan ekosistem pembayaran digital yang efisien, aman, dan adil bagi semua pihak.<\/p>\n<p>Sebagai otoritas sistem pembayaran, Bank Indonesia memainkan peran sentral dalam menetapkan standar dan batas atas tarif MDR. Langkah ini diambil untuk melindungi merchant, terutama UMKM, dari pengenaan biaya yang tidak wajar. Regulasi ini memastikan bahwa biaya yang dikenakan tetap wajar dan transparan, sehingga tidak memberatkan operasional bisnis.<\/p>\n<p>Salah satu intervensi regulasi paling signifikan adalah penetapan tarif MDR untuk QRIS (Quick Response Code Indonesian Standard). Berdasarkan <a href=\"https:\/\/www.bi.go.id\/id\/publikasi\/ruang-media\/news-release\/Pages\/sp_2517123.aspx\" target=\"_blank\" rel=\"noopener\">ketentuan terbaru BI<\/a>, tarif MDR untuk kategori Usaha Mikro (UMI) ditetapkan sebesar 0,3%, jauh lebih rendah dari tarif transaksi kartu. Kebijakan tarif berjenjang ini dirancang untuk mendukung inklusi keuangan dan memberikan insentif bagi usaha kecil.<\/p>\n<h2><strong>Faktor-Faktor yang Mempengaruhi Besaran MDR<\/strong><\/h2>\n<p><strong>Quick Answer:<\/strong> Besaran MDR tidak seragam dan dipengaruhi oleh beberapa faktor kunci, antara lain jenis metode pembayaran, volume transaksi, kategori industri bisnis (MCC), dan tipe transaksi.<\/p>\n<p>Persentase MDR yang Anda bayarkan bersifat dinamis dan ditentukan oleh profil risiko serta karakteristik transaksi bisnis Anda. Penyedia layanan pembayaran akan menganalisis berbagai faktor ini untuk menentukan tarif yang sesuai. Memahami faktor-faktor ini dapat memberikan Anda posisi tawar yang lebih baik saat bernegosiasi.<\/p>\n<h3><strong>1. Jenis metode pembayaran<\/strong><\/h3>\n<p>Metode pembayaran memiliki tingkat risiko yang berbeda, yang secara langsung memengaruhi besaran MDR. Transaksi kartu kredit umumnya memiliki MDR tertinggi karena risiko gagal bayar dari pelanggan. Sebaliknya, transaksi kartu debit dan QRIS memiliki MDR lebih rendah karena risikonya yang minim.<\/p>\n<h3><strong>2. Volume dan nilai transaksi<\/strong><\/h3>\n<p>Prinsip ekonomi skala juga berlaku pada MDR, di mana volume transaksi yang tinggi seringkali memberikan kekuatan negosiasi. Bisnis dengan volume transaksi bulanan besar berpeluang mendapatkan tarif MDR yang lebih rendah. Penyedia layanan bersedia memberikan diskon karena total pendapatan biaya dari satu merchant besar tetap signifikan.<\/p>\n<h3><strong>3. Kategori industri bisnis (Merchant Category Code\/MCC)<\/strong><\/h3>\n<p>Setiap bisnis diklasifikasikan ke dalam kategori tertentu menggunakan Merchant Category Code (MCC). Kategori ini memiliki profil risiko yang berbeda-beda; misalnya, industri dengan tingkat <em>chargeback<\/em> tinggi dianggap lebih berisiko. Semakin tinggi risiko yang terkait dengan industri Anda, semakin tinggi pula tarif MDR yang mungkin dikenakan.<\/p>\n<h3><strong>4. Tipe transaksi (Online vs. Offline)<\/strong><\/h3>\n<p>Cara transaksi dilakukan juga menjadi faktor penentu, di mana transaksi <em>offline<\/em> atau <em>card-present<\/em> dianggap lebih aman. Transaksi ini melibatkan verifikasi fisik dan PIN sehingga risikonya lebih rendah. Sebaliknya, transaksi <em>online<\/em> atau <em>card-not-present<\/em> memiliki risiko penipuan yang lebih tinggi, sehingga seringkali dikenakan MDR yang sedikit lebih tinggi.<\/p>\n<h2><strong>Analisis Dampak MDR terhadap Profitabilitas Bisnis<\/strong><\/h2>\n<p><strong>Quick Answer:<\/strong> Merchant Discount Rate secara langsung mengurangi pendapatan bersih dari setiap transaksi non-tunai, yang pada akhirnya berdampak pada margin keuntungan (profit margin) bisnis Anda.<\/p>\n<p>Bagi banyak pemilik bisnis, MDR seringkali dianggap sebagai <em>biaya tak terlihat<\/em> yang baru disadari dampaknya saat rekonsiliasi keuangan. Padahal, biaya ini secara konstan menggerus pendapatan Anda dari setiap penjualan non-tunai. Mengabaikan dampak MDR dapat menyebabkan kesalahan dalam penetapan harga jual dan perhitungan profitabilitas.<\/p>\n<p>Untuk menganalisis dampak ini secara akurat, perusahaan memerlukan sistem yang mampu melacak biaya transaksi secara otomatis. Integrasi antara sistem penjualan dan akuntansi menjadi kunci untuk visibilitas penuh terhadap biaya ini. Penggunaan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/pos-retail-terbaik-di-indonesia\/\">software pos terbaik<\/a> yang terhubung dengan akuntansi dapat secara otomatis mencatat pendapatan kotor dan memisahkan biaya MDR sebagai pengeluaran.<\/p>\n<h2><strong>Strategi Cerdas Mengelola dan Mengoptimalkan Biaya MDR<\/strong><\/h2>\n<p>Strategi mengelola biaya MDR meliputi memahami rincian biaya, menegosiasikan tarif, mendorong metode pembayaran berbiaya rendah, dan memanfaatkan teknologi untuk analisis.<\/p>\n<p>Meskipun MDR adalah biaya yang tidak dapat dihindari, bukan berarti Anda tidak bisa mengelolanya secara proaktif. Dengan pendekatan yang tepat, Anda dapat meminimalkan dampaknya terhadap profitabilitas. Mengoptimalkan biaya MDR memerlukan kombinasi antara negosiasi, strategi operasional, dan pemanfaatan teknologi.<\/p>\n<h3><strong>1. Pahami struktur biaya Anda<\/strong><\/h3>\n<p>Langkah pertama adalah meminta rincian lengkap mengenai struktur biaya MDR dari penyedia layanan Anda. Jangan hanya menerima satu angka persentase, tanyakan rincian komponennya. Memahami ini akan memberi Anda wawasan tentang bagian mana dari biaya tersebut yang berpotensi untuk dinegosiasikan.<\/p>\n<h3><strong>2. Negosiasikan tarif dengan penyedia layanan<\/strong><\/h3>\n<p>Jika bisnis Anda menunjukkan pertumbuhan volume transaksi yang konsisten, jangan ragu untuk membuka kembali negosiasi tarif MDR. Gunakan data volume transaksi bulanan Anda sebagai alat tawar untuk meminta penurunan margin. Bandingkan juga penawaran dari penyedia lain untuk memastikan Anda mendapatkan tarif yang paling kompetitif.<\/p>\n<h3><strong>3. Dorong penggunaan metode pembayaran berbiaya rendah<\/strong><\/h3>\n<p>Edukasi pelanggan Anda tentang berbagai pilihan pembayaran dan berikan insentif halus untuk menggunakan metode yang biayanya lebih rendah. Misalnya, jika Anda Usaha Mikro, mempromosikan pembayaran melalui QRIS akan jauh lebih hemat. Anda dapat menempatkan display QRIS di posisi yang lebih strategis di kasir untuk mendorong penggunaannya.<\/p>\n<h3><strong>4. Manfaatkan teknologi untuk analisis biaya<\/strong><\/h3>\n<p>Gunakan sistem terintegrasi untuk menganalisis biaya transaksi secara detail. Sebuah <a href=\"https:\/\/www.hashmicro.com\/id\/pos?ref\/bisnis-franchise\">software pos<\/a> yang komprehensif dapat menghasilkan laporan yang membandingkan total penjualan dengan biaya MDR. Analisis ini membantu Anda mengidentifikasi metode pembayaran mana yang paling membebani biaya.<\/p>\n<h2><strong>Optimalkan Manajemen Bisnis Anda dengan Solusi POS dari HashMicro<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-173834\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro.webp\" alt=\"Optimalkan Manajemen Bisnis Anda dengan Solusi POS dari HashMicro\" width=\"1548\" height=\"1261\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro.webp 1548w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-300x244.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1024x834.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-768x626.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1536x1251.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-516x420.webp 516w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-150x122.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-696x567.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1068x870.webp 1068w\" sizes=\"auto, (max-width: 1548px) 100vw, 1548px\" \/>HashMicro menyediakan sistem ERP terintegrasi yang dirancang khusus untuk mengotomatisasi dan menyederhanakan proses bisnis, termasuk pengelolaan transaksi dan analisis biaya. Dengan solusi yang komprehensif, perusahaan dapat mengatasi tantangan seperti pelacakan biaya MDR yang rumit, rekonsiliasi manual yang memakan waktu, dan kurangnya visibilitas terhadap profitabilitas per transaksi.<\/p>\n<p>Melalui modul <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos\">Software POS HashMicro<\/a> dan Software Akuntansi yang canggih, perusahaan dapat memproses transaksi lebih cepat, mengurangi human error, serta mendapatkan data keuangan yang akurat secara real-time. Sistem ini dilengkapi dengan fitur pelaporan otomatis, integrasi multi-pembayaran, dan dashboard analitik untuk memastikan setiap biaya transaksi tercatat dan dianalisis dengan baik.<\/p>\n<p>Sistem HashMicro dirancang dengan integrasi penuh antar modul, sehingga data dari penjualan, inventaris, dan akuntansi dapat saling terhubung. Hal ini memberikan visibilitas yang lebih baik terhadap seluruh operasional bisnis dan memastikan setiap keputusan didasarkan pada informasi yang akurat dan terkini, termasuk dalam mengelola dampak MDR.<\/p>\n<p>Fitur Unggulan HashMicro untuk Pengelolaan Transaksi:<\/p>\n<ul>\n<li><strong>Real-Time Reporting:<\/strong> Menyediakan laporan penjualan dan biaya secara real-time, termasuk rincian potongan MDR per transaksi, untuk analisis profitabilitas yang akurat.<\/li>\n<li><strong>Fully Integrated with Accounting:<\/strong> Mengotomatiskan pencatatan setiap transaksi penjualan dan biaya MDR ke dalam buku besar, menghilangkan kebutuhan rekonsiliasi manual.<\/li>\n<li><strong>Omni-Channel Integration:<\/strong> Mendukung berbagai metode pembayaran digital termasuk kartu kredit, debit, dan QRIS, dengan pencatatan biaya yang terperinci untuk setiap kanal.<\/li>\n<li><strong>Centralized Multi-branch POS:<\/strong> Mengelola transaksi dan menganalisis data MDR dari seluruh cabang bisnis Anda dalam satu platform terpusat untuk kemudahan kontrol.<\/li>\n<li><strong>Settlement with Auto Reconciliation to Banks:<\/strong> Mempercepat proses penyelesaian dana dan rekonsiliasi otomatis dengan bank, memastikan arus kas yang lebih lancar dan akurat.<\/li>\n<\/ul>\n<p>Dengan HashMicro, perusahaan Anda dapat meningkatkan efisiensi operasional, transparansi data, dan otomatisasi proses keuangan yang lebih baik. Untuk melihat bagaimana solusi kami dapat membantu bisnis Anda mengelola biaya transaksi secara nyata, jangan ragu untuk mencoba <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/\" target=\"_blank\" rel=\"noopener\">demo gratis<\/a> kami sekarang juga.<\/p>\n<style>\r\n.cta-in-article-image .desktop-banner{\r\n    display: none;\r\n    text-align: center;\r\n}\r\n.cta-in-article-image .desktop-mobile{\r\n    display: block;\r\n    text-align: center;\r\n    width: 100%;\r\n}\r\n\t.cta-in-article a {\r\n\t\tfont-size: 0px !important;\r\n\t\tcolor: #fff; \r\n\t\tpadding: 0px !important; \r\n\t\tborder-radius: 0px !important; \r\n\t\tdisplay: block !important; \r\n\t\ttext-decoration: none; \r\n\t}\r\n\t\r\n\t.cta-in-article {\r\n\t\tmargin: 0px !important;\r\n\t\tpadding: 0px !important;\r\n\t\tbox-shadow: none !important;\r\n\t}\r\n\t\r\n@media (min-width: 650px) {\r\n    .cta-in-article-image .desktop-banner {\r\n        display: block!important;\r\n    }\r\n}\r\n@media (min-width: 650px) {\r\n   .cta-in-article-image .desktop-mobile {\r\n        display: none!important;\r\n    }\r\n}\r\n<\/style>\r\n<div class=\"cta-in-article-image\">\r\n\t<a href=\"https:\/\/www.hashmicro.com\/id\/offer\/download-skema-harga-software-erp?blog&utm_source=blog&medium=banner-article\" target=\"_blank\" rel=\"noopener\">\r\n\t\t<div id=\"desktop-banner-container\">\r\n\t\t\t<div class=\"desktop-banner\">\r\n\t\t\t\t<img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/02.Skema-Harga-web-resized.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t\t<div id=\"mobile-banner-container\">\r\n\t\t\t<div class=\"desktop-mobile\">\r\n\t\t\t\t<img decoding=\"async\" width=\"372\" height=\"465\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/02.-Skema-Harga-Mobile-372px.webp\" alt=\"download skema harga software erp\">\r\n\t\t\t<\/div>\r\n\t\t<\/div>\r\n\t<\/a>\r\n<\/div>\n<h2><strong>Kesimpulan<\/strong><\/h2>\n<p>Merchant Discount Rate (MDR) adalah komponen krusial dalam ekosistem pembayaran digital yang wajib Anda pahami. Pengelolaan yang tepat tidak hanya melindungi margin keuntungan tetapi juga membangun fondasi keuangan yang kuat.<\/p>\n<p>Untuk mengoptimalkan biaya ini, manfaatkan teknologi canggih seperti <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos\">Software POS HashMicro<\/a>. Sistem ini membantu melacak dan menganalisis setiap potongan biaya secara otomatis dan akurat.<\/p>\n<p>Dengan begitu, Anda dapat membuat keputusan strategis yang lebih baik untuk efisiensi operasional bisnis. Coba <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\">demo gratis<\/a> kami untuk melihat bagaimana solusi ini dapat membantu Anda.<\/p>\n<h2><strong>Pertanyaan Tentang Merchant Discount Rate<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Apakah MDR legal dan siapa yang mengaturnya?<\/strong><\/summary>\n<p>Ya, MDR adalah praktik legal yang diatur secara resmi oleh Bank Indonesia. BI menetapkan batas atas tarif MDR, terutama untuk QRIS, untuk memastikan keadilan dalam ekosistem pembayaran.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Siapa yang sebenarnya membayar biaya MDR?<\/strong><\/summary>\n<p>Biaya MDR selalu dibebankan kepada merchant atau pemilik bisnis. Biaya ini dipotong dari nilai transaksi sebelum dana disetorkan ke rekening merchant, sehingga pelanggan tidak membayar MDR secara langsung.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Bolehkah saya membebankan biaya MDR kepada pelanggan (surcharge)?<\/strong><\/summary>\n<p>Menurut peraturan Bank Indonesia, merchant dilarang mengenakan biaya tambahan (surcharge) kepada pelanggan untuk transaksi non-tunai. Seluruh biaya MDR harus menjadi tanggungan merchant sebagai biaya operasional.<\/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\": \"Apakah MDR legal dan siapa yang mengaturnya?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Ya, MDR adalah praktik legal yang diatur secara resmi oleh Bank Indonesia. BI menetapkan batas atas tarif MDR, terutama untuk QRIS, untuk memastikan keadilan dalam ekosistem pembayaran.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Siapa yang sebenarnya membayar biaya MDR?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Biaya MDR selalu dibebankan kepada merchant atau pemilik bisnis. Biaya ini dipotong dari nilai transaksi sebelum dana disetorkan ke rekening merchant, sehingga pelanggan tidak membayar MDR secara langsung.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Bolehkah saya membebankan biaya MDR kepada pelanggan (surcharge)?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Menurut peraturan Bank Indonesia, merchant dilarang mengenakan biaya tambahan (surcharge) kepada pelanggan untuk transaksi non-tunai. Seluruh biaya MDR harus menjadi tanggungan merchant sebagai biaya operasional.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Setiap transaksi non-tunai memotong profit Anda melalui biaya tersembunyi yang disebut Merchant Discount Rate (MDR). Tanpa pemahaman yang tepat, biaya ini dapat menggerus keuntungan bisnis Anda secara signifikan. Mengabaikan MDR dapat menyebabkan kesalahan penetapan harga dan analisis profitabilitas yang tidak akurat. Untungnya, pengelolaan biaya ini menjadi lebih mudah dengan bantuan Software POS HashMicro yang canggih. [&hellip;]<\/p>\n","protected":false},"author":221,"featured_media":177066,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[7],"tags":[],"class_list":{"0":"post-176939","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-pos"},"acf":{"post_reviewer":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.1 (Yoast SEO v25.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Strategi Jitu dalam Mengelola Merchant Discount Rate<\/title>\n<meta name=\"description\" content=\"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Strategi Jitu dalam Mengelola Merchant Discount Rate\" \/>\n<meta property=\"og:description\" content=\"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\" \/>\n<meta property=\"og:site_name\" content=\"HashMicro Indonesia\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/hashmicro\" \/>\n<meta property=\"article:published_time\" content=\"2025-11-18T17:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-11-24T01:40:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.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=\"Oscar Renatha\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:site\" content=\"@hashmicro\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Oscar Renatha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\"},\"author\":{\"name\":\"Oscar Renatha\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/499b4ccbd39a4544e629ce4d1bf64382\"},\"headline\":\"Strategi Jitu dalam Mengelola Merchant Discount Rate\",\"datePublished\":\"2025-11-18T17:00:00+00:00\",\"dateModified\":\"2025-11-24T01:40:28+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\"},\"wordCount\":2315,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp\",\"articleSection\":[\"POS\"],\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\",\"name\":\"Strategi Jitu dalam Mengelola Merchant Discount Rate\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp\",\"datePublished\":\"2025-11-18T17:00:00+00:00\",\"dateModified\":\"2025-11-24T01:40:28+00:00\",\"description\":\"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp\",\"width\":1200,\"height\":675,\"caption\":\"merchant discount rate mdr\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/id\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Strategi Jitu dalam Mengelola Merchant Discount Rate\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/\",\"name\":\"HashMicro Indonesia\",\"description\":\"Blog Software Manajemen Bisnis Indonesia #1\",\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.hashmicro.com\/id\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\",\"name\":\"HashMicro Indonesia\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp\",\"width\":924,\"height\":121,\"caption\":\"HashMicro Indonesia\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/hashmicro\",\"https:\/\/x.com\/hashmicro\",\"https:\/\/www.linkedin.com\/company\/hashmicro\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/499b4ccbd39a4544e629ce4d1bf64382\",\"name\":\"Oscar Renatha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Oscar-96x96.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Oscar-96x96.webp\",\"caption\":\"Oscar Renatha\"},\"description\":\"Berpengalaman selama 3 tahun dalam industri SaaS khususnya bidang POS, Oscar berfokus pada penulisan artikel terkait integrasi POS dengan modul lain, manajemen transaksi penjualan, multi-store management, dan strategi penjualan yang dapat membantu para pelaku bisnis meningkatkan pertumbuhan bisnis mereka.\",\"sameAs\":[\"https:\/\/www.hashmicro.com\/id\/\"],\"gender\":\"Laki-laki\",\"knowsAbout\":[\"POS\",\"penjualan\",\"strategi penjualan\"],\"knowsLanguage\":[\"Inggris\",\"Indonesia\"],\"jobTitle\":\"Content Writer\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/author\/oscar-renatha\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Strategi Jitu dalam Mengelola Merchant Discount Rate","description":"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/","og_locale":"id_ID","og_type":"article","og_title":"Strategi Jitu dalam Mengelola Merchant Discount Rate","og_description":"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2025-11-18T17:00:00+00:00","article_modified_time":"2025-11-24T01:40:28+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp","type":"image\/webp"}],"author":"Oscar Renatha","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Oscar Renatha","Estimasi waktu membaca":"14 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/"},"author":{"name":"Oscar Renatha","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/499b4ccbd39a4544e629ce4d1bf64382"},"headline":"Strategi Jitu dalam Mengelola Merchant Discount Rate","datePublished":"2025-11-18T17:00:00+00:00","dateModified":"2025-11-24T01:40:28+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/"},"wordCount":2315,"commentCount":0,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp","articleSection":["POS"],"inLanguage":"id","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/","name":"Strategi Jitu dalam Mengelola Merchant Discount Rate","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp","datePublished":"2025-11-18T17:00:00+00:00","dateModified":"2025-11-24T01:40:28+00:00","description":"Pelajari strategi jitu mengelola biaya Merchant Discount Rate (MDR) untuk optimalkan profitabilitas bisnis Anda.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/05\/merchant-discount-rate-mdr.webp","width":1200,"height":675,"caption":"merchant discount rate mdr"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/merchant-discount-rate\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Strategi Jitu dalam Mengelola Merchant Discount Rate"}]},{"@type":"WebSite","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website","url":"https:\/\/www.hashmicro.com\/id\/blog\/","name":"HashMicro Indonesia","description":"Blog Software Manajemen Bisnis Indonesia #1","publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.hashmicro.com\/id\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Organization","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization","name":"HashMicro Indonesia","url":"https:\/\/www.hashmicro.com\/id\/blog\/","logo":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/11\/hashmicro-logo-blog.webp","width":924,"height":121,"caption":"HashMicro Indonesia"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/hashmicro","https:\/\/x.com\/hashmicro","https:\/\/www.linkedin.com\/company\/hashmicro"]},{"@type":"Person","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/499b4ccbd39a4544e629ce4d1bf64382","name":"Oscar Renatha","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/image\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Oscar-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Oscar-96x96.webp","caption":"Oscar Renatha"},"description":"Berpengalaman selama 3 tahun dalam industri SaaS khususnya bidang POS, Oscar berfokus pada penulisan artikel terkait integrasi POS dengan modul lain, manajemen transaksi penjualan, multi-store management, dan strategi penjualan yang dapat membantu para pelaku bisnis meningkatkan pertumbuhan bisnis mereka.","sameAs":["https:\/\/www.hashmicro.com\/id\/"],"gender":"Laki-laki","knowsAbout":["POS","penjualan","strategi penjualan"],"knowsLanguage":["Inggris","Indonesia"],"jobTitle":"Content Writer","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/oscar-renatha\/"}]}},"focus_keyword":"merchant discount rate","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/176939","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/users\/221"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=176939"}],"version-history":[{"count":5,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/176939\/revisions"}],"predecessor-version":[{"id":177323,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/176939\/revisions\/177323"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/177066"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=176939"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=176939"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=176939"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}