{"id":142220,"date":"2025-01-01T16:03:32","date_gmt":"2025-01-01T09:03:32","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=142220"},"modified":"2026-03-26T16:39:45","modified_gmt":"2026-03-26T09:39:45","slug":"software-farmasi-terbaik","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/","title":{"rendered":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026"},"content":{"rendered":"<p><strong>Software farmasi<\/strong> adalah aplikasi yang dirancang untuk membantu manajemen operasional apotek atau perusahaan farmasi untuk mengelola persediaan obat, mengontrol stok, memantau transaksi penjualan, memastikan kepatuhan regulasi, serta mengelola data pelanggan dan resep.<\/p>\n<p>Industri farmasi Indonesia telah menyaksikan tren penting: adopsi teknologi digital oleh apotek. Dengan perkiraan tambahan 17.2 juta pengguna, atau 36.93% di apotek online Indonesia hingga, terlihat jelas bahwa software farmasi dapat meningkatkan layanan.<\/p>\n<p>Namun, menemukan software yang tepat bisa menjadi tantangan.\u00a0Maka dari itu, artikel ini akan membimbing Anda untuk mengetahui pentingnya software farmasi dan cara jitu untuk memilihnya, sehingga Anda dapat mengambil keputusan yang tepat untuk bisnis farmasi Anda.<\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); border-radius: 25px 25px 25px 25px;\" width=\"100%\">\n<tbody>\n<tr>\n<td style=\"padding: 15px; border: none;\">\n<h3 style=\"margin-bottom: 10px;\"><span style=\"background-color: #990000; color: #ffffff; padding: 5px;\"><b>Key Takeaways<\/b><\/span><\/h3>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#aplikasi_farmasi\">Menggunakan software farmasi<\/a> yang tepat adalah kunci kesuksesan bisnis karena dapat meningkatkan efisiensi, mengurangi kesalahan, dan meningkatkan kepuasan pelanggan.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#modul\">Modul penting<\/a> untuk software farmasi terdiri atas inventori, akuntansi, CRM, rantai pasok, dan point of sale.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"#memilih\">Pilih software farmasi<\/a> yang skalabel, mudah digunakan, dan memiliki dukungan pelanggan yang baik.<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><a href=\"https:\/\/www.hashmicro.com\/id\/hash-core-erp\">HashMicro<\/a> adalah solusi software farmasi lengkap dengan fitur canggih dan dukungan pelanggan yang tanggap.<\/li>\n<\/ul>\n<div class=\"td-paragraph-padding-4\">\n<p><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:513,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0}\"><\/span><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:513,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0}\"><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><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:6657,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0,&quot;14&quot;:{&quot;1&quot;:2,&quot;2&quot;:0},&quot;15&quot;:&quot;Arial, sans-serif&quot;}\">\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 Software Farmasi?<\/strong><\/h2>\n<p>Software farmasi adalah sistem digital yang dirancang untuk membantu apotek dan bisnis kesehatan mengelola proses operasional secara lebih efisien. Aplikasi ini biasanya mencakup pencatatan obat, pengelolaan resep, hingga pelacakan stok secara real time.<\/p>\n<p>Fungsi spesifik aplikasi farmasi mencakup pengawasan inventaris obat agar tidak terjadi kekosongan atau kedaluwarsa serta memastikan ketersediaan yang tepat. Selain itu, software ini membantu memproses resep dokter dengan akurat, mendukung kepatuhan regulasi, dan mempercepat layanan pelanggan.<\/p>\n<p>Anda bisa menyimak tabel berikut untuk mengetahui software mana yang cocok untuk Anda.<\/p>\n    <style>\r\n      .shortlist {\r\n        border: 1px solid #afafaf;\r\n        border-radius: 6px;\r\n        margin-bottom: 16px;\r\n        max-width: 800px;\r\n        margin: 0 auto 16px;\r\n        background-color: #ffffff;\r\n      }\r\n\r\n      .shortlist a {\r\n        transition: all 0.2s ease;\r\n        text-decoration: none;\r\n      }\r\n\t\t\r\n\t\t.shortlist .td-icon-star,\r\n\t\t.shortlist .td-icon-star-half,\r\n\t\t.shortlist .td-icon-star-empty {\r\n\t\t\tvertical-align: middle;\r\n\t\t}\r\n\r\n      .shortlist-content {\r\n        display: flex;\r\n        width: 100%;\r\n        padding: 16px;\r\n        border-bottom: 1px solid #afafaf;\r\n      }\r\n\r\n      .shortlist-footer {\r\n        display: flex;\r\n        align-items: center;\r\n\t\tjustify-content: space-between;\r\n        padding: 8px 28px 8px 8px;\r\n        border-bottom-left-radius: 6px;\r\n        border-bottom-right-radius: 6px;\r\n      }\r\n\t\t\r\n\t\t.shortlist-footer .link-g2 {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tgap: 6px;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .image-g2 {\r\n\t\t\twidth: 24px;\r\n\t\t\theight: 24px;\r\n\t\t\tmargin-bottom: 0 !important;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .rating-text {\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tfont-size: 12px;\r\n\t\t\tfont-weight: 500;\r\n\t\t}\r\n\r\n      .shortlist-footer .link-section {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n      }\r\n\r\n      .shortlist-footer .text {\r\n        font-size: 16px;\r\n        margin-bottom: 0;\r\n        color: black !important;\r\n      }\r\n\r\n      .shortlist-footer .link-section svg path {\r\n        stroke: #ea1717;\r\n      }\r\n\r\n      .shortlist-divider {\r\n        width: 1px;\r\n        background-color: #afafaf;\r\n        margin: 0 8px;\r\n      }\r\n\r\n      .shortlist-company {\r\n        width: 30%;\r\n        display: flex;\r\n        flex-direction: column;\r\n      }\r\n\r\n      .shortlist-company img {\r\n        max-height: 32px;\r\n        height: auto;\r\n        object-fit: contain;\r\n        object-position: left;\r\n        margin-bottom: 4px;\r\n      }\r\n\r\n      .shortlist-company a {\r\n        font-size: 18px;\r\n        color: #ea1717;\r\n        font-weight: 600;\r\n      }\r\n\r\n      .shortlist-company a:hover {\r\n        color: #811313 !important;\r\n      }\r\n\r\n      .shortlist-best {\r\n        width: 45%;\r\n      }\r\n\r\n      .shortlist-best p {\r\n        font-size: 16px;\r\n      }\r\n\r\n      .shortlist-best .title {\r\n        color: #5f5f5f;\r\n        margin-bottom: 8px;\r\n      }\r\n\r\n      .shortlist .desc {\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button {\r\n        width: 25%;\r\n        display: flex;\r\n        flex-direction: column;\r\n        gap: 8px;\r\n        justify-content: center;\r\n        align-items: center;\r\n      }\r\n\r\n\/*       .shortlist-button div {\r\n        background-color: #b40000;\r\n        color: #ffffff;\r\n        padding: 4px 16px;\r\n        border-radius: 20px;\r\n        text-align: center;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n\t\tanimation: gradientMove2 3s infinite\r\n      } *\/\r\n\t\t\r\n\t\t.shortlist-button div {\r\n\t\t  position: relative;\r\n\t\t  background-color: #b40000;\r\n\t\t  color: #ffffff;\r\n\t\t  padding: 4px 16px;\r\n\t\t  border-radius: 20px;\r\n\t\t  text-align: center;\r\n\/* \t\t  display: flex; *\/\r\n\t\t\tdisplay: none;\r\n\t\t  align-items: center;\r\n\t\t  gap: 4px;\r\n\t\t  overflow: hidden; \/* ensures the shine doesn't leak outside *\/\r\n\t\t}\r\n\r\n\t\t\/* Create the white glossy animation overlay *\/\r\n\t\t.shortlist-button div::before {\r\n\t\t  content: '';\r\n\t\t  position: absolute;\r\n\t\t  top: 0;\r\n\/* \t\t  left: -75%; *\/\r\n\t\t  width: 50%;\r\n\t\t  height: 100%;\r\n\t\t  background: linear-gradient(\r\n\t\t\t120deg,\r\n\t\t\trgba(255, 255, 255, 0) 0%,\r\n\t\t\trgba(255, 255, 255, 0.6) 50%,\r\n\t\t\trgba(255, 255, 255, 0) 100%\r\n\t\t  );\r\n\t\t\topacity: 1;\r\n\t\t\ttransition: opacity 0.2s ease;\r\n\t\t left: 0;\r\n\t\t  animation: shineShortlist 2.5s infinite;\r\n\t\t  transform: skewX(-25deg) translateX(-150%);\r\n\t\t  will-change: transform;\r\n\t\t}\r\n\r\n\t\t\/* keyframes for the shine movement *\/\r\n\t\t@keyframes shineShortlist {\r\n\t\t  \t0% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(-150%);\r\n\t\t\t}\r\n\t\t\t100% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(200%);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n      .shortlist-button a {\r\n        padding: 8px 16px;\r\n        color: #ea1717;\r\n        border: 1px solid #ea1717;\r\n        border-radius: 6px;\r\n        font-size: 16px;\r\n        font-weight: 600;\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button a:hover {\r\n        color: #ffffff !important;\r\n        background-color: #ea1717;\r\n      }\r\n\t\t\r\n\t\t\r\n\t\t\r\n      @media (max-width: 768px) {\r\n        .shortlist-content {\r\n          flex-direction: column;\r\n          padding: 0;\r\n          border-bottom: none;\r\n        }\r\n\r\n        .shortlist-divider {\r\n          display: none;\r\n        }\r\n\r\n        .shortlist-company,\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          width: 100%;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          border-top: 1px solid #eaeaea;\r\n        }\r\n\r\n        .shortlist-footer {\r\n          border-top: 1px solid #eaeaea;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-button {\r\n          align-items: flex-start;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"shortlist\">\r\n      <div class=\"shortlist-content\">\r\n        <div class=\"shortlist-company\">\r\n          <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/hashmicro-resized.webp\" alt=\"HashMicro Logo\" height=\"32px\" width=\"200px\" \/>\r\n          <a href=\"#hashmicro\">Software ERP HashMicro<\/a>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-best\">\r\n          <p class=\"title\">Ideal Untuk<\/p>\r\n\t\t\t\t\t\t<div style=\"display: flex; gap: 10px\">\r\n\t\t\t\t<svg style=\"flex-shrink: 0;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\">\r\n                                    <path d=\"M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" fill=\"#E8F5EB\"><\/path>\r\n                                    <path d=\"M8.25 12L11.08 14.83L16.75 9.17001M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" stroke=\"#3C914D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n                                <\/svg>\r\n\t\t\t\t\t\t\t\r\n          <p class=\"desc\">Ideal untuk perusahaan apotek global yang butuh sistem apotek lengkap dan terintegrasi.<\/p>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-button\">\r\n          <div>\r\n            <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" height=\"15px\" width=\"15px\" viewBox=\"0 -960 960 960\" fill=\"#ffffff\">\r\n              <path style=\"flex-shrink: 0;\" d=\"m387-412 35-114-92-74h114l36-112 36 112h114l-93 74 35 114-92-71-93 71ZM240-40v-309q-38-42-59-96t-21-115q0-134 93-227t227-93q134 0 227 93t93 227q0 61-21 115t-59 96v309l-240-80-240 80Zm240-280q100 0 170-70t70-170q0-100-70-170t-170-70q-100 0-170 70t-70 170q0 100 70 170t170 70Z\" \/>\r\n            <\/svg>\r\n            <p class=\"best-deals-marker\" style=\"color: #ffffff; margin-bottom: 0; font-size: 14px; line-height: 1.5;\">Best Deals<\/p>\r\n          <\/div>\r\n          <a href=\"https:\/\/www.hashmicro.com\/id\/offer\/download-skema-harga-software-erp?medium=cta-button\">Tanya Harga<\/a>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"shortlist-footer\">\r\n\t\t  <a href=\"https:\/\/www.g2.com\/sellers\/hashmicro#profiles\" class=\"link-g2\" target=\"_blank\">\r\n\t\t\t  <p class=\"rating-text\">Reviews from<\/p>\r\n\t\t\t  <img decoding=\"async\" alt=\"g2 logo\" width=\"16\" height=\"16\" class=\"image-g2\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/g2-review-logo-resized.webp\" \/>\r\n\t\t\t  <div class=\"rating-stars-container\"><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><\/div>\r\n\t\t\t  <p class=\"rating-text\">\r\n\t\t\t\t4.8\/5\r\n\t\t\t  <\/p>\r\n\t\t  <\/a>\r\n\t\t  \r\n        <div class=\"link-section\">\r\n          <a href=\"#hashmicro\" class=\"text\">Ringkasan<\/a>\r\n\t\t\t<a href=\"#hashmicro\">\r\n          <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" alt=\"dropdown icon svg\">\r\n            <path d=\"M12 4L12 20M12 20L18 14M12 20L6 14\" stroke=\"#ea1717\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" alt=\"dropdown icon\"\/>\r\n          <\/svg>\r\n\t\t\t<\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    \n    <style>\r\n      .shortlist {\r\n        border: 1px solid #afafaf;\r\n        border-radius: 6px;\r\n        margin-bottom: 16px;\r\n        max-width: 800px;\r\n        margin: 0 auto 16px;\r\n        background-color: #ffffff;\r\n      }\r\n\r\n      .shortlist a {\r\n        transition: all 0.2s ease;\r\n        text-decoration: none;\r\n      }\r\n\t\t\r\n\t\t.shortlist .td-icon-star,\r\n\t\t.shortlist .td-icon-star-half,\r\n\t\t.shortlist .td-icon-star-empty {\r\n\t\t\tvertical-align: middle;\r\n\t\t}\r\n\r\n      .shortlist-content {\r\n        display: flex;\r\n        width: 100%;\r\n        padding: 16px;\r\n        border-bottom: 1px solid #afafaf;\r\n      }\r\n\r\n      .shortlist-footer {\r\n        display: flex;\r\n        align-items: center;\r\n\t\tjustify-content: space-between;\r\n        padding: 8px 28px 8px 8px;\r\n        border-bottom-left-radius: 6px;\r\n        border-bottom-right-radius: 6px;\r\n      }\r\n\t\t\r\n\t\t.shortlist-footer .link-g2 {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tgap: 6px;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .image-g2 {\r\n\t\t\twidth: 24px;\r\n\t\t\theight: 24px;\r\n\t\t\tmargin-bottom: 0 !important;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .rating-text {\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tfont-size: 12px;\r\n\t\t\tfont-weight: 500;\r\n\t\t}\r\n\r\n      .shortlist-footer .link-section {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n      }\r\n\r\n      .shortlist-footer .text {\r\n        font-size: 16px;\r\n        margin-bottom: 0;\r\n        color: black !important;\r\n      }\r\n\r\n      .shortlist-footer .link-section svg path {\r\n        stroke: #ea1717;\r\n      }\r\n\r\n      .shortlist-divider {\r\n        width: 1px;\r\n        background-color: #afafaf;\r\n        margin: 0 8px;\r\n      }\r\n\r\n      .shortlist-company {\r\n        width: 30%;\r\n        display: flex;\r\n        flex-direction: column;\r\n      }\r\n\r\n      .shortlist-company img {\r\n        max-height: 32px;\r\n        height: auto;\r\n        object-fit: contain;\r\n        object-position: left;\r\n        margin-bottom: 4px;\r\n      }\r\n\r\n      .shortlist-company a {\r\n        font-size: 18px;\r\n        color: #ea1717;\r\n        font-weight: 600;\r\n      }\r\n\r\n      .shortlist-company a:hover {\r\n        color: #811313 !important;\r\n      }\r\n\r\n      .shortlist-best {\r\n        width: 45%;\r\n      }\r\n\r\n      .shortlist-best p {\r\n        font-size: 16px;\r\n      }\r\n\r\n      .shortlist-best .title {\r\n        color: #5f5f5f;\r\n        margin-bottom: 8px;\r\n      }\r\n\r\n      .shortlist .desc {\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button {\r\n        width: 25%;\r\n        display: flex;\r\n        flex-direction: column;\r\n        gap: 8px;\r\n        justify-content: center;\r\n        align-items: center;\r\n      }\r\n\r\n\/*       .shortlist-button div {\r\n        background-color: #b40000;\r\n        color: #ffffff;\r\n        padding: 4px 16px;\r\n        border-radius: 20px;\r\n        text-align: center;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n\t\tanimation: gradientMove2 3s infinite\r\n      } *\/\r\n\t\t\r\n\t\t.shortlist-button div {\r\n\t\t  position: relative;\r\n\t\t  background-color: #b40000;\r\n\t\t  color: #ffffff;\r\n\t\t  padding: 4px 16px;\r\n\t\t  border-radius: 20px;\r\n\t\t  text-align: center;\r\n\/* \t\t  display: flex; *\/\r\n\t\t\tdisplay: none;\r\n\t\t  align-items: center;\r\n\t\t  gap: 4px;\r\n\t\t  overflow: hidden; \/* ensures the shine doesn't leak outside *\/\r\n\t\t}\r\n\r\n\t\t\/* Create the white glossy animation overlay *\/\r\n\t\t.shortlist-button div::before {\r\n\t\t  content: '';\r\n\t\t  position: absolute;\r\n\t\t  top: 0;\r\n\/* \t\t  left: -75%; *\/\r\n\t\t  width: 50%;\r\n\t\t  height: 100%;\r\n\t\t  background: linear-gradient(\r\n\t\t\t120deg,\r\n\t\t\trgba(255, 255, 255, 0) 0%,\r\n\t\t\trgba(255, 255, 255, 0.6) 50%,\r\n\t\t\trgba(255, 255, 255, 0) 100%\r\n\t\t  );\r\n\t\t\topacity: 1;\r\n\t\t\ttransition: opacity 0.2s ease;\r\n\t\t left: 0;\r\n\t\t  animation: shineShortlist 2.5s infinite;\r\n\t\t  transform: skewX(-25deg) translateX(-150%);\r\n\t\t  will-change: transform;\r\n\t\t}\r\n\r\n\t\t\/* keyframes for the shine movement *\/\r\n\t\t@keyframes shineShortlist {\r\n\t\t  \t0% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(-150%);\r\n\t\t\t}\r\n\t\t\t100% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(200%);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n      .shortlist-button a {\r\n        padding: 8px 16px;\r\n        color: #ea1717;\r\n        border: 1px solid #ea1717;\r\n        border-radius: 6px;\r\n        font-size: 16px;\r\n        font-weight: 600;\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button a:hover {\r\n        color: #ffffff !important;\r\n        background-color: #ea1717;\r\n      }\r\n\t\t\r\n\t\t\r\n\t\t\r\n      @media (max-width: 768px) {\r\n        .shortlist-content {\r\n          flex-direction: column;\r\n          padding: 0;\r\n          border-bottom: none;\r\n        }\r\n\r\n        .shortlist-divider {\r\n          display: none;\r\n        }\r\n\r\n        .shortlist-company,\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          width: 100%;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          border-top: 1px solid #eaeaea;\r\n        }\r\n\r\n        .shortlist-footer {\r\n          border-top: 1px solid #eaeaea;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-button {\r\n          align-items: flex-start;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"shortlist\">\r\n      <div class=\"shortlist-content\">\r\n        <div class=\"shortlist-company\">\r\n                    <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/netsuite-logo-1.webp\" alt=\"Netsuite\" height=\"32px\" width=\"200px\" \/>\r\n                              <a href=\"#netsuite\">Netsuite<\/a>\r\n                  <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-best\">\r\n          <p class=\"title\">Ideal Untuk<\/p>\r\n\t\t\t<div style=\"display: flex; gap: 10px\">\r\n\t\t\t\t<svg style=\"flex-shrink: 0;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\">\r\n                                    <path d=\"M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" fill=\"#E8F5EB\"><\/path>\r\n                                    <path d=\"M8.25 12L11.08 14.83L16.75 9.17001M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" stroke=\"#3C914D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n                                <\/svg>\r\n\t\t\t\t          <p class=\"desc\">Ideal untuk bisnis yang sedang berkembang.<\/p>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-button\">\r\n          <a href=\"#netsuite\">Lihat Harga<\/a>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"shortlist-footer\">\r\n\t\t  <a href=\"https:\/\/www.g2.com\/products\/netsuite\/reviews\" class=\"link-g2\" target=\"_blank\">\r\n\t\t\t  <p class=\"rating-text\">Reviews from<\/p>\r\n\t\t\t  <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"\" class=\"image-g2\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/g2-review-logo-resized.webp\" \/>\r\n\t\t\t  <div class=\"rating-stars-container\"><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star-half\"><\/i><\/div>\r\n\t\t\t  <p class=\"rating-text\">\r\n\t\t\t\t4.1\/5\r\n\t\t\t  <\/p>\r\n\t\t  <\/a>\r\n\t\t  \r\n        <div class=\"link-section\">\r\n          <a href=\"#netsuite\" class=\"text\">Ringkasan<\/a>\r\n\t\t\t<a href=\"#netsuite\">\r\n          <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n            <path d=\"M12 4L12 20M12 20L18 14M12 20L6 14\" stroke=\"#ea1717\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\r\n          <\/svg>\r\n\t\t\t<\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    \n    <style>\r\n      .shortlist {\r\n        border: 1px solid #afafaf;\r\n        border-radius: 6px;\r\n        margin-bottom: 16px;\r\n        max-width: 800px;\r\n        margin: 0 auto 16px;\r\n        background-color: #ffffff;\r\n      }\r\n\r\n      .shortlist a {\r\n        transition: all 0.2s ease;\r\n        text-decoration: none;\r\n      }\r\n\t\t\r\n\t\t.shortlist .td-icon-star,\r\n\t\t.shortlist .td-icon-star-half,\r\n\t\t.shortlist .td-icon-star-empty {\r\n\t\t\tvertical-align: middle;\r\n\t\t}\r\n\r\n      .shortlist-content {\r\n        display: flex;\r\n        width: 100%;\r\n        padding: 16px;\r\n        border-bottom: 1px solid #afafaf;\r\n      }\r\n\r\n      .shortlist-footer {\r\n        display: flex;\r\n        align-items: center;\r\n\t\tjustify-content: space-between;\r\n        padding: 8px 28px 8px 8px;\r\n        border-bottom-left-radius: 6px;\r\n        border-bottom-right-radius: 6px;\r\n      }\r\n\t\t\r\n\t\t.shortlist-footer .link-g2 {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tgap: 6px;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .image-g2 {\r\n\t\t\twidth: 24px;\r\n\t\t\theight: 24px;\r\n\t\t\tmargin-bottom: 0 !important;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .rating-text {\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tfont-size: 12px;\r\n\t\t\tfont-weight: 500;\r\n\t\t}\r\n\r\n      .shortlist-footer .link-section {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n      }\r\n\r\n      .shortlist-footer .text {\r\n        font-size: 16px;\r\n        margin-bottom: 0;\r\n        color: black !important;\r\n      }\r\n\r\n      .shortlist-footer .link-section svg path {\r\n        stroke: #ea1717;\r\n      }\r\n\r\n      .shortlist-divider {\r\n        width: 1px;\r\n        background-color: #afafaf;\r\n        margin: 0 8px;\r\n      }\r\n\r\n      .shortlist-company {\r\n        width: 30%;\r\n        display: flex;\r\n        flex-direction: column;\r\n      }\r\n\r\n      .shortlist-company img {\r\n        max-height: 32px;\r\n        height: auto;\r\n        object-fit: contain;\r\n        object-position: left;\r\n        margin-bottom: 4px;\r\n      }\r\n\r\n      .shortlist-company a {\r\n        font-size: 18px;\r\n        color: #ea1717;\r\n        font-weight: 600;\r\n      }\r\n\r\n      .shortlist-company a:hover {\r\n        color: #811313 !important;\r\n      }\r\n\r\n      .shortlist-best {\r\n        width: 45%;\r\n      }\r\n\r\n      .shortlist-best p {\r\n        font-size: 16px;\r\n      }\r\n\r\n      .shortlist-best .title {\r\n        color: #5f5f5f;\r\n        margin-bottom: 8px;\r\n      }\r\n\r\n      .shortlist .desc {\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button {\r\n        width: 25%;\r\n        display: flex;\r\n        flex-direction: column;\r\n        gap: 8px;\r\n        justify-content: center;\r\n        align-items: center;\r\n      }\r\n\r\n\/*       .shortlist-button div {\r\n        background-color: #b40000;\r\n        color: #ffffff;\r\n        padding: 4px 16px;\r\n        border-radius: 20px;\r\n        text-align: center;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n\t\tanimation: gradientMove2 3s infinite\r\n      } *\/\r\n\t\t\r\n\t\t.shortlist-button div {\r\n\t\t  position: relative;\r\n\t\t  background-color: #b40000;\r\n\t\t  color: #ffffff;\r\n\t\t  padding: 4px 16px;\r\n\t\t  border-radius: 20px;\r\n\t\t  text-align: center;\r\n\/* \t\t  display: flex; *\/\r\n\t\t\tdisplay: none;\r\n\t\t  align-items: center;\r\n\t\t  gap: 4px;\r\n\t\t  overflow: hidden; \/* ensures the shine doesn't leak outside *\/\r\n\t\t}\r\n\r\n\t\t\/* Create the white glossy animation overlay *\/\r\n\t\t.shortlist-button div::before {\r\n\t\t  content: '';\r\n\t\t  position: absolute;\r\n\t\t  top: 0;\r\n\/* \t\t  left: -75%; *\/\r\n\t\t  width: 50%;\r\n\t\t  height: 100%;\r\n\t\t  background: linear-gradient(\r\n\t\t\t120deg,\r\n\t\t\trgba(255, 255, 255, 0) 0%,\r\n\t\t\trgba(255, 255, 255, 0.6) 50%,\r\n\t\t\trgba(255, 255, 255, 0) 100%\r\n\t\t  );\r\n\t\t\topacity: 1;\r\n\t\t\ttransition: opacity 0.2s ease;\r\n\t\t left: 0;\r\n\t\t  animation: shineShortlist 2.5s infinite;\r\n\t\t  transform: skewX(-25deg) translateX(-150%);\r\n\t\t  will-change: transform;\r\n\t\t}\r\n\r\n\t\t\/* keyframes for the shine movement *\/\r\n\t\t@keyframes shineShortlist {\r\n\t\t  \t0% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(-150%);\r\n\t\t\t}\r\n\t\t\t100% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(200%);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n      .shortlist-button a {\r\n        padding: 8px 16px;\r\n        color: #ea1717;\r\n        border: 1px solid #ea1717;\r\n        border-radius: 6px;\r\n        font-size: 16px;\r\n        font-weight: 600;\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button a:hover {\r\n        color: #ffffff !important;\r\n        background-color: #ea1717;\r\n      }\r\n\t\t\r\n\t\t\r\n\t\t\r\n      @media (max-width: 768px) {\r\n        .shortlist-content {\r\n          flex-direction: column;\r\n          padding: 0;\r\n          border-bottom: none;\r\n        }\r\n\r\n        .shortlist-divider {\r\n          display: none;\r\n        }\r\n\r\n        .shortlist-company,\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          width: 100%;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          border-top: 1px solid #eaeaea;\r\n        }\r\n\r\n        .shortlist-footer {\r\n          border-top: 1px solid #eaeaea;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-button {\r\n          align-items: flex-start;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"shortlist\">\r\n      <div class=\"shortlist-content\">\r\n        <div class=\"shortlist-company\">\r\n                    <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/datascan-winpharm-logo.webp\" alt=\"WinPharm\" height=\"32px\" width=\"200px\" \/>\r\n                              <a href=\"#winpharm\">WinPharm<\/a>\r\n                  <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-best\">\r\n          <p class=\"title\">Ideal Untuk<\/p>\r\n\t\t\t<div style=\"display: flex; gap: 10px\">\r\n\t\t\t\t<svg style=\"flex-shrink: 0;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\">\r\n                                    <path d=\"M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" fill=\"#E8F5EB\"><\/path>\r\n                                    <path d=\"M8.25 12L11.08 14.83L16.75 9.17001M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" stroke=\"#3C914D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n                                <\/svg>\r\n\t\t\t\t          <p class=\"desc\">Ideal untuk bisnis apotek yang butuh software untuk memenuhi kebutuhan distribusi obat yang efektif.<\/p>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-button\">\r\n          <a href=\"#winpharm\">Lihat Harga<\/a>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"shortlist-footer\">\r\n\t\t  <a href=\"https:\/\/www.g2.com\/products\/datascan-winpharm\/reviews\" class=\"link-g2\" target=\"_blank\">\r\n\t\t\t  <p class=\"rating-text\">Reviews from<\/p>\r\n\t\t\t  <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"\" class=\"image-g2\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/g2-review-logo-resized.webp\" \/>\r\n\t\t\t  <div class=\"rating-stars-container\"><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><\/div>\r\n\t\t\t  <p class=\"rating-text\">\r\n\t\t\t\t4.9\/5\r\n\t\t\t  <\/p>\r\n\t\t  <\/a>\r\n\t\t  \r\n        <div class=\"link-section\">\r\n          <a href=\"#winpharm\" class=\"text\">Ringkasan<\/a>\r\n\t\t\t<a href=\"#winpharm\">\r\n          <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n            <path d=\"M12 4L12 20M12 20L18 14M12 20L6 14\" stroke=\"#ea1717\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\r\n          <\/svg>\r\n\t\t\t<\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    \n    <style>\r\n      .shortlist {\r\n        border: 1px solid #afafaf;\r\n        border-radius: 6px;\r\n        margin-bottom: 16px;\r\n        max-width: 800px;\r\n        margin: 0 auto 16px;\r\n        background-color: #ffffff;\r\n      }\r\n\r\n      .shortlist a {\r\n        transition: all 0.2s ease;\r\n        text-decoration: none;\r\n      }\r\n\t\t\r\n\t\t.shortlist .td-icon-star,\r\n\t\t.shortlist .td-icon-star-half,\r\n\t\t.shortlist .td-icon-star-empty {\r\n\t\t\tvertical-align: middle;\r\n\t\t}\r\n\r\n      .shortlist-content {\r\n        display: flex;\r\n        width: 100%;\r\n        padding: 16px;\r\n        border-bottom: 1px solid #afafaf;\r\n      }\r\n\r\n      .shortlist-footer {\r\n        display: flex;\r\n        align-items: center;\r\n\t\tjustify-content: space-between;\r\n        padding: 8px 28px 8px 8px;\r\n        border-bottom-left-radius: 6px;\r\n        border-bottom-right-radius: 6px;\r\n      }\r\n\t\t\r\n\t\t.shortlist-footer .link-g2 {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tgap: 6px;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .image-g2 {\r\n\t\t\twidth: 24px;\r\n\t\t\theight: 24px;\r\n\t\t\tmargin-bottom: 0 !important;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .rating-text {\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tfont-size: 12px;\r\n\t\t\tfont-weight: 500;\r\n\t\t}\r\n\r\n      .shortlist-footer .link-section {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n      }\r\n\r\n      .shortlist-footer .text {\r\n        font-size: 16px;\r\n        margin-bottom: 0;\r\n        color: black !important;\r\n      }\r\n\r\n      .shortlist-footer .link-section svg path {\r\n        stroke: #ea1717;\r\n      }\r\n\r\n      .shortlist-divider {\r\n        width: 1px;\r\n        background-color: #afafaf;\r\n        margin: 0 8px;\r\n      }\r\n\r\n      .shortlist-company {\r\n        width: 30%;\r\n        display: flex;\r\n        flex-direction: column;\r\n      }\r\n\r\n      .shortlist-company img {\r\n        max-height: 32px;\r\n        height: auto;\r\n        object-fit: contain;\r\n        object-position: left;\r\n        margin-bottom: 4px;\r\n      }\r\n\r\n      .shortlist-company a {\r\n        font-size: 18px;\r\n        color: #ea1717;\r\n        font-weight: 600;\r\n      }\r\n\r\n      .shortlist-company a:hover {\r\n        color: #811313 !important;\r\n      }\r\n\r\n      .shortlist-best {\r\n        width: 45%;\r\n      }\r\n\r\n      .shortlist-best p {\r\n        font-size: 16px;\r\n      }\r\n\r\n      .shortlist-best .title {\r\n        color: #5f5f5f;\r\n        margin-bottom: 8px;\r\n      }\r\n\r\n      .shortlist .desc {\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button {\r\n        width: 25%;\r\n        display: flex;\r\n        flex-direction: column;\r\n        gap: 8px;\r\n        justify-content: center;\r\n        align-items: center;\r\n      }\r\n\r\n\/*       .shortlist-button div {\r\n        background-color: #b40000;\r\n        color: #ffffff;\r\n        padding: 4px 16px;\r\n        border-radius: 20px;\r\n        text-align: center;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n\t\tanimation: gradientMove2 3s infinite\r\n      } *\/\r\n\t\t\r\n\t\t.shortlist-button div {\r\n\t\t  position: relative;\r\n\t\t  background-color: #b40000;\r\n\t\t  color: #ffffff;\r\n\t\t  padding: 4px 16px;\r\n\t\t  border-radius: 20px;\r\n\t\t  text-align: center;\r\n\/* \t\t  display: flex; *\/\r\n\t\t\tdisplay: none;\r\n\t\t  align-items: center;\r\n\t\t  gap: 4px;\r\n\t\t  overflow: hidden; \/* ensures the shine doesn't leak outside *\/\r\n\t\t}\r\n\r\n\t\t\/* Create the white glossy animation overlay *\/\r\n\t\t.shortlist-button div::before {\r\n\t\t  content: '';\r\n\t\t  position: absolute;\r\n\t\t  top: 0;\r\n\/* \t\t  left: -75%; *\/\r\n\t\t  width: 50%;\r\n\t\t  height: 100%;\r\n\t\t  background: linear-gradient(\r\n\t\t\t120deg,\r\n\t\t\trgba(255, 255, 255, 0) 0%,\r\n\t\t\trgba(255, 255, 255, 0.6) 50%,\r\n\t\t\trgba(255, 255, 255, 0) 100%\r\n\t\t  );\r\n\t\t\topacity: 1;\r\n\t\t\ttransition: opacity 0.2s ease;\r\n\t\t left: 0;\r\n\t\t  animation: shineShortlist 2.5s infinite;\r\n\t\t  transform: skewX(-25deg) translateX(-150%);\r\n\t\t  will-change: transform;\r\n\t\t}\r\n\r\n\t\t\/* keyframes for the shine movement *\/\r\n\t\t@keyframes shineShortlist {\r\n\t\t  \t0% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(-150%);\r\n\t\t\t}\r\n\t\t\t100% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(200%);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n      .shortlist-button a {\r\n        padding: 8px 16px;\r\n        color: #ea1717;\r\n        border: 1px solid #ea1717;\r\n        border-radius: 6px;\r\n        font-size: 16px;\r\n        font-weight: 600;\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button a:hover {\r\n        color: #ffffff !important;\r\n        background-color: #ea1717;\r\n      }\r\n\t\t\r\n\t\t\r\n\t\t\r\n      @media (max-width: 768px) {\r\n        .shortlist-content {\r\n          flex-direction: column;\r\n          padding: 0;\r\n          border-bottom: none;\r\n        }\r\n\r\n        .shortlist-divider {\r\n          display: none;\r\n        }\r\n\r\n        .shortlist-company,\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          width: 100%;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          border-top: 1px solid #eaeaea;\r\n        }\r\n\r\n        .shortlist-footer {\r\n          border-top: 1px solid #eaeaea;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-button {\r\n          align-items: flex-start;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"shortlist\">\r\n      <div class=\"shortlist-content\">\r\n        <div class=\"shortlist-company\">\r\n                    <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/gofrugal-retaileasy-logo.webp\" alt=\"GoFrugal\" height=\"32px\" width=\"200px\" \/>\r\n                              <a href=\"#gofrugal\">GoFrugal<\/a>\r\n                  <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-best\">\r\n          <p class=\"title\">Ideal Untuk<\/p>\r\n\t\t\t<div style=\"display: flex; gap: 10px\">\r\n\t\t\t\t<svg style=\"flex-shrink: 0;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\">\r\n                                    <path d=\"M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" fill=\"#E8F5EB\"><\/path>\r\n                                    <path d=\"M8.25 12L11.08 14.83L16.75 9.17001M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" stroke=\"#3C914D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n                                <\/svg>\r\n\t\t\t\t          <p class=\"desc\">Ideal untuk bisnis apotek yang membutuhkan aplikasi mobile.<\/p>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-button\">\r\n          <a href=\"#gofrugal\">Lihat Harga<\/a>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"shortlist-footer\">\r\n\t\t  <a href=\"https:\/\/www.g2.com\/products\/gofrugal-retaileasy\/reviews\" class=\"link-g2\" target=\"_blank\">\r\n\t\t\t  <p class=\"rating-text\">Reviews from<\/p>\r\n\t\t\t  <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"\" class=\"image-g2\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/g2-review-logo-resized.webp\" \/>\r\n\t\t\t  <div class=\"rating-stars-container\"><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star-empty\"><\/i><\/div>\r\n\t\t\t  <p class=\"rating-text\">\r\n\t\t\t\t3.8\/5\r\n\t\t\t  <\/p>\r\n\t\t  <\/a>\r\n\t\t  \r\n        <div class=\"link-section\">\r\n          <a href=\"#gofrugal\" class=\"text\">Ringkasan<\/a>\r\n\t\t\t<a href=\"#gofrugal\">\r\n          <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n            <path d=\"M12 4L12 20M12 20L18 14M12 20L6 14\" stroke=\"#ea1717\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\r\n          <\/svg>\r\n\t\t\t<\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    \n    <style>\r\n      .shortlist {\r\n        border: 1px solid #afafaf;\r\n        border-radius: 6px;\r\n        margin-bottom: 16px;\r\n        max-width: 800px;\r\n        margin: 0 auto 16px;\r\n        background-color: #ffffff;\r\n      }\r\n\r\n      .shortlist a {\r\n        transition: all 0.2s ease;\r\n        text-decoration: none;\r\n      }\r\n\t\t\r\n\t\t.shortlist .td-icon-star,\r\n\t\t.shortlist .td-icon-star-half,\r\n\t\t.shortlist .td-icon-star-empty {\r\n\t\t\tvertical-align: middle;\r\n\t\t}\r\n\r\n      .shortlist-content {\r\n        display: flex;\r\n        width: 100%;\r\n        padding: 16px;\r\n        border-bottom: 1px solid #afafaf;\r\n      }\r\n\r\n      .shortlist-footer {\r\n        display: flex;\r\n        align-items: center;\r\n\t\tjustify-content: space-between;\r\n        padding: 8px 28px 8px 8px;\r\n        border-bottom-left-radius: 6px;\r\n        border-bottom-right-radius: 6px;\r\n      }\r\n\t\t\r\n\t\t.shortlist-footer .link-g2 {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tgap: 6px;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .image-g2 {\r\n\t\t\twidth: 24px;\r\n\t\t\theight: 24px;\r\n\t\t\tmargin-bottom: 0 !important;\r\n\t\t}\r\n\t\t\r\n\t\t.shortlist-footer .rating-text {\r\n\t\t\tmargin-bottom: 0;\r\n\t\t\tfont-size: 12px;\r\n\t\t\tfont-weight: 500;\r\n\t\t}\r\n\r\n      .shortlist-footer .link-section {\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n      }\r\n\r\n      .shortlist-footer .text {\r\n        font-size: 16px;\r\n        margin-bottom: 0;\r\n        color: black !important;\r\n      }\r\n\r\n      .shortlist-footer .link-section svg path {\r\n        stroke: #ea1717;\r\n      }\r\n\r\n      .shortlist-divider {\r\n        width: 1px;\r\n        background-color: #afafaf;\r\n        margin: 0 8px;\r\n      }\r\n\r\n      .shortlist-company {\r\n        width: 30%;\r\n        display: flex;\r\n        flex-direction: column;\r\n      }\r\n\r\n      .shortlist-company img {\r\n        max-height: 32px;\r\n        height: auto;\r\n        object-fit: contain;\r\n        object-position: left;\r\n        margin-bottom: 4px;\r\n      }\r\n\r\n      .shortlist-company a {\r\n        font-size: 18px;\r\n        color: #ea1717;\r\n        font-weight: 600;\r\n      }\r\n\r\n      .shortlist-company a:hover {\r\n        color: #811313 !important;\r\n      }\r\n\r\n      .shortlist-best {\r\n        width: 45%;\r\n      }\r\n\r\n      .shortlist-best p {\r\n        font-size: 16px;\r\n      }\r\n\r\n      .shortlist-best .title {\r\n        color: #5f5f5f;\r\n        margin-bottom: 8px;\r\n      }\r\n\r\n      .shortlist .desc {\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button {\r\n        width: 25%;\r\n        display: flex;\r\n        flex-direction: column;\r\n        gap: 8px;\r\n        justify-content: center;\r\n        align-items: center;\r\n      }\r\n\r\n\/*       .shortlist-button div {\r\n        background-color: #b40000;\r\n        color: #ffffff;\r\n        padding: 4px 16px;\r\n        border-radius: 20px;\r\n        text-align: center;\r\n        display: flex;\r\n        align-items: center;\r\n        gap: 4px;\r\n\t\tanimation: gradientMove2 3s infinite\r\n      } *\/\r\n\t\t\r\n\t\t.shortlist-button div {\r\n\t\t  position: relative;\r\n\t\t  background-color: #b40000;\r\n\t\t  color: #ffffff;\r\n\t\t  padding: 4px 16px;\r\n\t\t  border-radius: 20px;\r\n\t\t  text-align: center;\r\n\/* \t\t  display: flex; *\/\r\n\t\t\tdisplay: none;\r\n\t\t  align-items: center;\r\n\t\t  gap: 4px;\r\n\t\t  overflow: hidden; \/* ensures the shine doesn't leak outside *\/\r\n\t\t}\r\n\r\n\t\t\/* Create the white glossy animation overlay *\/\r\n\t\t.shortlist-button div::before {\r\n\t\t  content: '';\r\n\t\t  position: absolute;\r\n\t\t  top: 0;\r\n\/* \t\t  left: -75%; *\/\r\n\t\t  width: 50%;\r\n\t\t  height: 100%;\r\n\t\t  background: linear-gradient(\r\n\t\t\t120deg,\r\n\t\t\trgba(255, 255, 255, 0) 0%,\r\n\t\t\trgba(255, 255, 255, 0.6) 50%,\r\n\t\t\trgba(255, 255, 255, 0) 100%\r\n\t\t  );\r\n\t\t\topacity: 1;\r\n\t\t\ttransition: opacity 0.2s ease;\r\n\t\t left: 0;\r\n\t\t  animation: shineShortlist 2.5s infinite;\r\n\t\t  transform: skewX(-25deg) translateX(-150%);\r\n\t\t  will-change: transform;\r\n\t\t}\r\n\r\n\t\t\/* keyframes for the shine movement *\/\r\n\t\t@keyframes shineShortlist {\r\n\t\t  \t0% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(-150%);\r\n\t\t\t}\r\n\t\t\t100% {\r\n\t\t\t\ttransform: skewX(-25deg) translateX(200%);\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n      .shortlist-button a {\r\n        padding: 8px 16px;\r\n        color: #ea1717;\r\n        border: 1px solid #ea1717;\r\n        border-radius: 6px;\r\n        font-size: 16px;\r\n        font-weight: 600;\r\n        margin-bottom: 0;\r\n      }\r\n\r\n      .shortlist-button a:hover {\r\n        color: #ffffff !important;\r\n        background-color: #ea1717;\r\n      }\r\n\t\t\r\n\t\t\r\n\t\t\r\n      @media (max-width: 768px) {\r\n        .shortlist-content {\r\n          flex-direction: column;\r\n          padding: 0;\r\n          border-bottom: none;\r\n        }\r\n\r\n        .shortlist-divider {\r\n          display: none;\r\n        }\r\n\r\n        .shortlist-company,\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          width: 100%;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-best,\r\n        .shortlist-button {\r\n          border-top: 1px solid #eaeaea;\r\n        }\r\n\r\n        .shortlist-footer {\r\n          border-top: 1px solid #eaeaea;\r\n          padding: 12px 16px;\r\n        }\r\n\r\n        .shortlist-button {\r\n          align-items: flex-start;\r\n        }\r\n      }\r\n    <\/style>\r\n\r\n    <div class=\"shortlist\">\r\n      <div class=\"shortlist-content\">\r\n        <div class=\"shortlist-company\">\r\n                    <img decoding=\"async\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/pioneerrx-logo.webp\" alt=\"PioneerRX\" height=\"32px\" width=\"200px\" \/>\r\n                              <a href=\"#pioneerrx\">PioneerRX<\/a>\r\n                  <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-best\">\r\n          <p class=\"title\">Ideal Untuk<\/p>\r\n\t\t\t<div style=\"display: flex; gap: 10px\">\r\n\t\t\t\t<svg style=\"flex-shrink: 0;\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"25\" height=\"24\" viewBox=\"0 0 25 24\" fill=\"none\">\r\n                                    <path d=\"M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" fill=\"#E8F5EB\"><\/path>\r\n                                    <path d=\"M8.25 12L11.08 14.83L16.75 9.17001M12.5 22C18 22 22.5 17.5 22.5 12C22.5 6.5 18 2 12.5 2C7 2 2.5 6.5 2.5 12C2.5 17.5 7 22 12.5 22Z\" stroke=\"#3C914D\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><\/path>\r\n                                <\/svg>\r\n\t\t\t\t          <p class=\"desc\">Ideal untuk apotek independen yang ingin mengoptimalkan alur kerja, layanan klinis, dan hubungan pasien<\/p>\r\n\t\t\t<\/div>\r\n        <\/div>\r\n        <div class=\"shortlist-divider\"><\/div>\r\n        <div class=\"shortlist-button\">\r\n          <a href=\"#pioneerrx\">Lihat Harga<\/a>\r\n        <\/div>\r\n      <\/div>\r\n      <div class=\"shortlist-footer\">\r\n\t\t  <a href=\"https:\/\/www.g2.com\/products\/pioneerrx\/reviews\" class=\"link-g2\" target=\"_blank\">\r\n\t\t\t  <p class=\"rating-text\">Reviews from<\/p>\r\n\t\t\t  <img decoding=\"async\" width=\"16\" height=\"16\" alt=\"\" class=\"image-g2\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/g2-review-logo-resized.webp\" \/>\r\n\t\t\t  <div class=\"rating-stars-container\"><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star\"><\/i><i class=\"td-icon-star-half\"><\/i><\/div>\r\n\t\t\t  <p class=\"rating-text\">\r\n\t\t\t\t4.1\/5\r\n\t\t\t  <\/p>\r\n\t\t  <\/a>\r\n\t\t  \r\n        <div class=\"link-section\">\r\n          <a href=\"#pioneerrx\" class=\"text\">Ringkasan<\/a>\r\n\t\t\t<a href=\"#pioneerrx\">\r\n          <svg width=\"16px\" height=\"16px\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n            <path d=\"M12 4L12 20M12 20L18 14M12 20L6 14\" stroke=\"#ea1717\" stroke-width=\"1.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" \/>\r\n          <\/svg>\r\n\t\t\t<\/a>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n    \n<h2><b>Masalah yang Sering Terjadi di Industri Farmasi<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Industri farmasi seringkali dihadapkan pada berbagai tantangan dan masalah yang memerlukan solusi yang tepat.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Berikut adalah beberapa masalah yang sering dihadapi oleh industri farmasi:<\/span><\/p>\n<ol>\n<li><strong>Manajemen Persediaan Tidak Efisien<\/strong><br \/>\nKesalahan pengelolaan stok dapat menunda produksi dan menambah biaya. Aplikasi farmasi membantu pemantauan stok real-time.<\/li>\n<li><strong>Kurangnya Integrasi Antar Departemen<\/strong><br \/>\nKoordinasi yang buruk antar departemen menghambat pengambilan keputusan. Sistem manajemen terintegrasi meningkatkan efisiensi dan koordinasi.<\/li>\n<li><strong>Manajemen Produksi Tidak Optimal<\/strong><br \/>\nProses produksi yang tidak efisien dapat merugikan perusahaan. Aplikasi ERP mengoptimalkan perencanaan, kontrol stok, dan kualitas produksi.<\/li>\n<li><strong>Kesulitan Pelacakan dan Validasi Produk<\/strong><br \/>\nPelacakan produk yang buruk mempengaruhi kepatuhan. Software apotek membantu melacak dan memvalidasi produk dengan akurat.<\/li>\n<li><strong>Kesulitan Memilih Vendor<\/strong><br \/>\nPemilihan vendor yang salah dapat mengganggu produksi. Memilih vendor yang tepat memastikan kualitas dan kelancaran pasokan.<\/li>\n<li><strong>Manajemen Penjualan Tidak Efektif<\/strong><br \/>\nPenjualan yang tidak tercatat dengan baik dapat mempengaruhi stok dan pendapatan. Sistem penjualan yang efisien meningkatkan pengelolaan stok dan pendapatan.<\/li>\n<\/ol>\n<p>Untuk mengatasi masalah-masalah dalam operasional apotek, Anda dapat menggunakan sistem apotek yang terintegrasi. Aplikasi farmasi ini membantu mengelola stok obat secara otomatis, memudahkan pelacakan resep, dan mencatat transaksi dengan akurat.<\/p>\n<h2><b>7 Rekomendasi Software Farmasi Terbaik di Indonesia<\/b><\/h2>\n<p>Anda sudah tahu pentingnya sistem yang efisien untuk bisnis farmasi. Memilih software farmasi yang sesuai bisa jadi membingungkan. Kami menyediakan ulasan untuk membantu Anda menemukan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/software-hrm-apotek\/\">solusi software farmasi<\/a> yang tepat untuk bisnis Anda. Berikut 7 rekomendasi software farmasi terbaik di Indonesia:<\/p>\n<h3><b>1. HashMicro<\/b><\/h3>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-188275\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro.webp\" alt=\"software farmasi\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-300x169.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-768x432.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-747x420.webp 747w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-150x84.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-696x392.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/01\/Dashboard-pharmacy-HashMicro-1068x601.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/sistem-erp\">HashMicro<\/a> menonjol sebagai pilihan utama untuk software farmasi di Indonesia, berkat kemampuannya yang komprehensif dalam mengintegrasikan berbagai aspek bisnis farmasi. Dari manajemen persediaan hingga keuangan, HashMicro menyediakan solusi terintegrasi untuk memenuhi kebutuhan unik industri farmasi.<\/p>\n<p>Dengan fokus pada ketepatan dan efisiensi, software ini mengatasi masalah pengelolaan persediaan obat yang manual dan inefisien, yang sering kali menjadi penghambat pertumbuhan dan inovasi dalam bisnis farmasi.<\/p>\n<p>HashMicro merupakan solusi end-to-end bisnis dengan modul terintegrasi, termasuk seluruh modul penting yang menunjang kebutuhan perusahaan. Dari manajemen inventory, akuntansi, CRM, manajemen supply chain (SCM), hingga berbagai macam modul lain siap meringankan pekerjaan perushaan,<\/p>\n<p>Keunggulan HashMicro terbukti dengan penghargaan \u201cBest Business Software\u201d dari CNBC Indonesia. Software ini tidak hanya meningkatkan visibilitas dan akurasi stok obat, tetapi juga mengotomatiskan proses produksi, demi memastikan operasional farmasi berjalan lancar dan efektif.<\/p>\n<p>HashMicro, sebagai software farmasi terdepan di Indonesia, menawarkan fitur-fitur canggih untuk memenuhi kebutuhan industri farmasi:<\/p>\n<ul>\n<li aria-level=\"1\"><b>Manajemen persediaan<\/b>: Memastikan visibilitas dan akurasi stok obat, menghindari kekurangan atau kelebihan persediaan.<\/li>\n<li aria-level=\"1\"><b>Integrasi barcode<\/b>: Memudahkan pelacakan produk dan bahan baku, mempercepat proses inventarisasi dan mengurangi kesalahan.<\/li>\n<li aria-level=\"1\"><b>Pendataan real-time<\/b>: Mode kiosk untuk pendataan real-time, memberikan informasi terkini tentang stok dan produksi.<\/li>\n<li aria-level=\"1\"><b>Pelacakan biaya<\/b>: Detail pelacakan biaya bahan, tenaga kerja, subkontraktor, dan overhead, membantu perusahaan dalam menghitung margin keuntungan dengan lebih akurat.<\/li>\n<li aria-level=\"1\"><b>Integrasi bisnis lengkap<\/b>: Integrasi mulus antara berbagai fungsi bisnis seperti akuntansi, penjualan, CRM, inventaris, dan pembelian.<\/li>\n<\/ul>\n<p>Jika Anda penasaran bagaimana software farmasi HashMicro membantu proses bisnis perusahaan farmasi dengan efektif, Anda dapat mendaftar demo gratis dengan mengklik banner di bawah ini!<\/p>\n<p><span data-sheets-root=\"1\" data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:6657,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0,&quot;14&quot;:{&quot;1&quot;:2,&quot;2&quot;:0},&quot;15&quot;:&quot;Arial, sans-serif&quot;}\">\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<h3><b><span id=\"netsuite\">2. NetSuite<\/span><\/b><\/h3>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/oracle-netsuite-erp\/\">NetSuite adalah<\/a> software ERP terintegrasi yang mendukung operasional bisnis farmasi di Indonesia dengan menyediakan fitur CRM, manajemen keuangan, dan e-commerce. Dikenal karena fleksibilitas dan skalabilitasnya, aplikasi farmasi ini membantu perusahaan farmasi mengelola siklus hidup pelanggan secara efisien.<\/p>\n<h3><b><span id=\"winpharm\">3. Winpharm<\/span><\/b><\/h3>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-142224 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm.webp\" alt=\"winpharm\" width=\"1200\" height=\"596\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-300x149.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-1024x509.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-768x381.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-846x420.webp 846w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-150x75.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-696x346.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-1068x530.webp 1068w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/winpharm-324x160.webp 324w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p>Winpharm menawarkan sistem distribusi dan kontrol obat untuk apotek rumah sakit, termasuk sistem EMAR (Electronic Medication Administration Record). Software farmasi ini memenuhi kebutuhan distribusi obat yang efektif dan memastikan kepatuhan terhadap regulasi.<\/p>\n<h3><b><span id=\"gofrugal\">4. GoFrugal<\/span><\/b><\/h3>\n<p>GoFrugal menyediakan software ERP untuk industri farmasi yang mencakup manajemen inventori yang kuat, manajemen pemasok yang efisien, dan program CRM serta loyalitas yang menarik. Dengan aplikasi mobile yang ramah pengguna, GoFrugal memfasilitasi digitalisasi dan efisiensi operasional untuk apotek.<\/p>\n<h3><b>5. PioneerRX<\/b><\/h3>\n<p>PioneerRX adalah software manajemen apotek yang dirancang untuk apotek yang ingin membuat perbedaan di komunitas mereka. Menawarkan fitur untuk meningkatkan kecepatan, kemudahan, fleksibilitas, dan hasil, aplikasi farmasi ini berfokus pada pelayanan pasien yang menguntungkan dan dispensasi obat.<\/p>\n<h3><b>6. Inofarma<\/b><\/h3>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-142225\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma.webp\" alt=\"inofarma software farmasi\" width=\"1366\" height=\"768\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma.webp 1366w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-300x169.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-768x432.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-747x420.webp 747w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-150x84.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-696x391.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/inofarma-1068x600.webp 1068w\" sizes=\"auto, (max-width: 1366px) 100vw, 1366px\" \/><\/p>\n<p>Inofarma adalah software manajemen farmasi yang menyediakan modul kasir dan aplikasi pendukung untuk memudahkan transaksi penjualan. Khusus untuk memenuhi kebutuhan apotek, Inofarma menawarkan fitur yang memudahkan pengecekan harga produk dan pengelolaan transaksi penjualan.<\/p>\n<h3><b>7. Farmacare.id<\/b><\/h3>\n<p>Farmacare.id menawarkan solusi pengadaan dan manajemen stok apotek yang simpel dan cerdas. Dengan teknologi web-app yang ringan, Farmacare.id memudahkan pengelolaan apotek tanpa memerlukan pelatihan pegawai yang panjang, memungkinkan pemantauan kondisi apotek secara real-time dari mana saja.<\/p>\n<p>Anda juga dapat membaca artikel lain tentang rekomendasi <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/software-apotek\/\">software apotek<\/a> terbaik sebagai alternatif lanjutan.<\/p>\n<h2><b>Mengapa Bisnis Anda Perlu Software Farmasi?<\/b><\/h2>\n<p><span id=\"aplikasi_farmasi\">Di era modern, software farmasi telah menjadi tulang punggung industri kesehatan. Dengan <a href=\"https:\/\/jurnal.ugm.ac.id\/jisph\/article\/download\/26041\/32510\" target=\"_blank\" rel=\"nofollow noopener\">biaya obat mencapai 40-50%<\/a> dari total operasional pelayanan kesehatan, manajemen pengelolaan obat yang efisien adalah kunci utama untuk menjaga keuntungan.<\/span><\/p>\n<p>Berikut adalah alasan mengapa bisnis farmasi Anda membutuhkan software farmasi:<\/p>\n<ol>\n<li><strong>Pentingnya Hubungan Pelanggan dalam Industri Farmasi<br \/>\n<\/strong>Dalam industri farmasi, hubungan yang baik dengan dokter, apoteker, dan tenaga kesehatan sangat krusial. <strong>Software farmasi<\/strong> membantu memantau interaksi dan preferensi pelanggan, memungkinkan perusahaan untuk memenuhi kebutuhan pelanggan dengan lebih baik dan meningkatkan kepuasan.<\/li>\n<li><strong>Manajemen Data Pelanggan yang Terorganisir<br \/>\n<\/strong>Software farmasi memungkinkan pengelolaan data pelanggan secara terpusat. Dengan informasi yang terstruktur dengan baik, perusahaan dapat membuat keputusan yang lebih tepat dan menyusun strategi pemasaran yang lebih efektif.<\/li>\n<li><strong>Personalisasi Layanan<br \/>\n<\/strong>Dengan software farmasi, perusahaan bisa memberikan layanan yang lebih personal dengan menyesuaikan informasi dan layanan berdasarkan riwayat atau kebutuhan khusus pelanggan, yang pada gilirannya meningkatkan kepuasan dan efektivitas pemasaran.<\/li>\n<li><strong>Efisiensi Operasional<br \/>\n<\/strong>Software farmasi membantu meningkatkan efisiensi operasional melalui otomatisasi proses seperti manajemen inventaris, distribusi, dan pemantauan pesanan, mengurangi kesalahan dan meningkatkan respons terhadap perubahan pasar.<\/li>\n<li><strong>Kepatuhan Terhadap Regulasi<br \/>\n<\/strong>Industri farmasi harus mematuhi regulasi ketat. Software farmasi memastikan bahwa data pelanggan dikelola dengan aman dan memenuhi persyaratan regulasi, termasuk privasi dan izin yang diperlukan.<\/li>\n<li><strong>Analisis dan Pelaporan<br \/>\n<\/strong>Software farmasi dilengkapi dengan alat analisis untuk mengevaluasi kinerja produk, tren pasar, dan perilaku pelanggan. Hal ini membantu perusahaan untuk membuat keputusan yang lebih baik dan menyesuaikan strategi untuk mencapai tujuan jangka panjang.<\/li>\n<\/ol>\n<p>Menawarkan manajemen persediaan yang akurat, memastikan kepatuhan regulasi, dan mengurangi kesalahan manusia. Perusahaan di Indonesia yang beralih ke software ERP farmasi mencatat peningkatan efisiensi yang berujung pada profit yang lebih besar.<\/p>\n<p>Sebaliknya, mengesampingkan teknologi ini bisa berakibat serius. Kesalahan stok, pelanggaran regulasi, dan tidak fleksibel terhadap dinamika pasar bisa merusak reputasi dan bahkan mengancam eksistensi bisnis. Jadi, berinvestasi dalam software farmasi bukan lagi sebuah pilihan, melainkan keharusan.<\/p>\n<h2><b>Modul-modul Penting dalam Software Farmasi<\/b><\/h2>\n<p><span id=\"modul\">Dalam software farmasi, terdapat modul-modul kunci yang esensial untuk menjaga kelancaran dan efisiensi operasional bisnis. Berikut adalah modul-modul utama untuk membantu perusahaan farmasi:<\/span><\/p>\n<h3><b>1. Manajemen inventory dan gudang<\/b><\/h3>\n<p>Perusahaan farmasi dapat mengelola stok obat secara efektif dengan kedua modul ini, sehingga obat yang dibutuhkan selalu tersedia tanpa kelebihan yang tidak perlu. Hasilnya, perusahaan dapat mengurangi biaya operasional dengan ketersediaan produk yang andal dan tata kelola gudang yang baik.<\/p>\n<p>Modul inventaris sangat penting untuk mengelola tingkat stok, melacak tanggal kedaluwarsa produk, dan mengoptimalkan pengisian inventaris.<\/p>\n<h3><b>2. Modul akuntansi<\/b><\/h3>\n<p>Modul keuangan menyediakan gambaran finansial yang jelas, memudahkan pengambilan keputusan yang berbasis data. Dengan demikian, perusahaan dapat mengelola keuangan dengan lebih efisien dan transparansi yang lebih besar, yang mengarah pada stabilitas finansial.<\/p>\n<p><a href=\"https:\/\/databoks.katadata.co.id\/datapublish\/2020\/09\/15\/perbandingan-pertumbuhan-laba-bersih-emiten-farmasi-selama-pandemi\" target=\"_blank\" rel=\"nofollow noopener\">Peningkatan laba bersih<\/a> PT Merck Indonesia Tbk yang signifikan, dari Rp 6,1 miliar menjadi Rp 32,1 miliar, menunjukkan efektivitas operasional yang telah dicapai. Penggunaan sistem akuntansi yang terintegrasi dengan aplikasi farmasi berperan dalam kesuksesan ini, memberikan kemampuan untuk mengelola keuangan dengan lebih efisien dan akurat.<\/p>\n<h3><b>3. Customer relationship management (CRM)<\/b><\/h3>\n<p>Modul CRM esensial untuk memahami dan memenuhi kebutuhan kesehatan pelanggan. Selain itu, modul CRM dapat terintegrasi dengan e-commerce, sehingga perusahaan mendapatkan informasi mengenai tren obat yang pelanggam cari.<\/p>\n<p>CRM yang efektif dapat meramalkan permintaan obat, menjamin ketersediaan, dan menunjukkan komitmen terhadap kesejahteraan pasien. Dengan demikian, <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/crm-pt-kalbe-farma\/\">CRM<\/a> berkontribusi pada kepercayaan dan loyalitas pelanggan, yang penting untuk respons cepat terhadap tren kesehatan dan kebutuhan mendesak.<\/p>\n<h3><b>4. Supply chain management (SCM)<\/b><\/h3>\n<p>SCM memastikan kelancaran distribusi obat dari produsen ke konsumen. Modul ini memastikan bahwa obat-obatan tersedia tepat waktu, sehingga memenuhi permintaan pasar dengan efektif dan mematuhi regulasi yang ada.<\/p>\n<p>Modul dalam aplikasi farmasi ini menyederhanakan proses end-to-end rantai pasokan, mulai dari procurement\/pengadaan, produksi di manufaktur, manajemen gudang dan inventaris, distribusi, hingga laporan dan analisis.<\/p>\n<p>Contoh konkret kegunaan modul SCM adalah APL Care yang berhasil <a href=\"https:\/\/pharmaboardroom.com\/articles\/indonesia-s-incredible-supply-chain-logistics\/\" target=\"_blank\" rel=\"nofollow noopener\">mengoptimalkan distribusi obat<\/a>, serta menangani kompleksitas penanganan logistik yang unik terjadi di negara kepulauan seperti Indonesia. Pengiriman yang efektif dan tepat waktu ke pasien di seluruh pulau menjadi prioritas utama perusahaan ini.<\/p>\n<h3><b>5. Point of sale (POS)<\/b><\/h3>\n<p>Modul Point of Sale (POS) dan Billing Solution menangani transaksi dan manajemen pelanggan, sehingga memudahkan proses penjualan, menghasilkan faktur yang akurat, dan menyimpan data pelanggan. Dengan demikian, apoteker dapat fokus pada pelayanan pasien, sekaligus memastikan transaksi yang efisien di konter.<\/p>\n<h2><b>Tips Memilih Software Farmasi untuk Optimalkan Bisnis Anda<\/b><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-142222\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih.webp\" alt=\"\" width=\"1200\" height=\"675\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-300x169.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-1024x576.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-768x432.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-747x420.webp 747w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-150x84.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-696x392.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/memilih-1068x601.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><span id=\"memilih\">Memilih software farmasi yang tepat adalah langkah krusial untuk mengoptimalkan bisnis farmasi Anda. Berikut adalah beberapa tips yang dapat membantu Anda dalam menentukan pilihan terbaik:<\/span><\/p>\n<ol>\n<li><b> Evaluasi Kebutuhan Bisnis Anda<\/b>: Pertama dan terpenting, tentukan kebutuhan spesifik bisnis Anda. Apakah Anda perlu solusi yang mendukung manajemen persediaan, ataukah fokus pada integrasi rantai pasok? Pahami proses operasional Anda dan identifikasi area yang memerlukan peningkatan.<\/li>\n<li><b> Analisis Fitur dan Fungsionalitas<\/b>: Periksa fitur-fitur yang ditawarkan oleh software. Pastikan solusi yang Anda pilih memiliki fitur manajemen persediaan, pelacakan biaya, dan integrasi bisnis yang lengkap. Fitur-fitur dalam aplikasi farmasi ini harus mendukung operasi harian Anda dan membantu Anda dalam pengambilan keputusan strategis.<\/li>\n<li><b> Pertimbangkan Skalabilitas<\/b>: Bisnis farmasi Anda akan berkembang, dan begitu juga kebutuhan teknologinya. Pilih software yang dapat tumbuh bersama bisnis Anda, dengan kemampuan untuk menambahkan modul atau fungsi baru sesuai kebutuhan.<\/li>\n<li><b> Kaji Kemudahan Penggunaan<\/b>: Software harus mudah digunakan oleh semua anggota tim Anda. Antarmuka yang intuitif dan proses pelatihan yang efektif akan memastikan transisi yang lancar ke sistem baru dan adopsi yang lebih cepat oleh staf.<\/li>\n<li><b> Tinjau Dukungan dan Pelatihan<\/b>: Dukungan pelanggan yang solid dan pelatihan yang komprehensif adalah kunci untuk memaksimalkan nilai dari investasi teknologi Anda. Pastikan vendor menawarkan dukungan yang responsif dan sumber daya pelatihan yang memadai.<\/li>\n<li><b> Pertimbangkan Integrasi dengan Sistem yang Ada<\/b>: Aplikasi farmasi yang Anda pilih harus dapat berintegrasi dengan sistem yang sudah ada di tempat Anda. Integrasi yang mulus akan meminimalkan gangguan operasional dan mempercepat proses implementasi.<\/li>\n<li><b> Lakukan Uji Coba<\/b>: Sebelum membuat keputusan akhir, lakukan uji coba untuk melihat bagaimana software berfungsi dalam lingkungan bisnis Anda. Ini akan memberikan gambaran yang lebih baik tentang bagaimana software dapat memenuhi kebutuhan spesifik Anda.<\/li>\n<\/ol>\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><b>Kesimpulan<\/b><\/h2>\n<p>Mengadopsi software farmasi yang tepat dapat meningkatkan efisiensi dan mengurangi kesalahan yang berpotensi merugikan bisnis Anda. Pilihan software yang sesuai adalah esensial untuk kelancaran dan keberhasilan bisnis farmasi.<\/p>\n<p>HashMicro menawarkan solusi farmasi yang lengkap dan dapat disesuaikan, dengan fitur seperti manajemen persediaan obat, pengelolaan pesanan, dan akuntansi farmasi, memastikan operasional bisnis Anda berjalan dengan lancar.<\/p>\n<p>Interface yang intuitif dan dukungan pelanggan yang tanggap memudahkan transisi ke aplikasi farmasi ini, membebaskan Anda dari kekhawatiran teknis dan memungkinkan Anda fokus pada penyediaan layanan farmasi yang berkualitas.<\/p>\n<p>Ingin merasakan manfaat dari software farmasi HashMicro? Daftar sekarang untuk <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/\">demo gratis<\/a> dan mulai transformasi operasional Anda!<\/p>\n<p><span data-sheets-root=\"1\"><a href=\"https:\/\/www.hashmicro.com\/id\/hash-hospital?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/04\/Hash-Hospital.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/04\/Hash-Hospital.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/04\/Hash-Hospital-2.webp\" alt=\"HashHospital\" 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><\/span><\/p>\n<h2><strong>Pertanyaan Seputar Software Farmasi<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Apa itu software farmasi dan mengapa penting untuk bisnis apotek?<\/strong><\/summary>\n<p>Software farmasi adalah aplikasi yang membantu manajemen operasional apotek atau perusahaan farmasi dalam mengelola persediaan obat, transaksi, kepatuhan regulasi, dan data pelanggan untuk meningkatkan efisiensi dan layanan.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa saja masalah utama yang sering dihadapi industri farmasi?<\/strong><\/summary>\n<p>Masalah yang sering muncul antara lain manajemen persediaan tidak efisien, kurang integrasi antar departemen, kesulitan pelacakan produk, pemilihan vendor yang salah, dan manajemen penjualan yang tidak efektif.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Bagaimana cara memilih software farmasi yang tepat?<\/strong><\/summary>\n<p>Evaluasi kebutuhan bisnis, analisa fitur, pertimbangkan skalabilitas dan kemudahan penggunaan, periksa dukungan pelanggan, integrasi dengan sistem yang ada, dan lakukan uji coba sebelum memutuskan.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa keunggulan HashMicro sebagai software farmasi di Indonesia?<\/strong><\/summary>\n<p>HashMicro menawarkan solusi lengkap dengan modul inventaris, akuntansi, CRM, SCM, dan POS, didukung fitur canggih seperti integrasi barcode, pelacakan real-time, dan layanan pelanggan responsif yang terbukti meningkatkan efisiensi bisnis farmasi.<\/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    {\n      \"@type\": \"Question\",\n      \"name\": \"Apa itu software farmasi dan mengapa penting untuk bisnis apotek?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Software farmasi adalah aplikasi yang membantu manajemen operasional apotek atau perusahaan farmasi dalam mengelola persediaan obat, transaksi, kepatuhan regulasi, dan data pelanggan untuk meningkatkan efisiensi dan layanan.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Apa saja masalah utama yang sering dihadapi industri farmasi?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Masalah yang sering muncul antara lain manajemen persediaan tidak efisien, kurang integrasi antar departemen, kesulitan pelacakan produk, pemilihan vendor yang salah, dan manajemen penjualan yang tidak efektif.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Bagaimana cara memilih software farmasi yang tepat?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Evaluasi kebutuhan bisnis, analisa fitur, pertimbangkan skalabilitas dan kemudahan penggunaan, periksa dukungan pelanggan, integrasi dengan sistem yang ada, dan lakukan uji coba sebelum memutuskan.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Apa keunggulan HashMicro sebagai software farmasi di Indonesia?\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"HashMicro menawarkan solusi lengkap dengan modul inventaris, akuntansi, CRM, SCM, dan POS, didukung fitur canggih seperti integrasi barcode, pelacakan real-time, dan layanan pelanggan responsif yang terbukti meningkatkan efisiensi bisnis farmasi.\"\n      }\n    }\n  ]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Software farmasi adalah aplikasi yang dirancang untuk membantu manajemen operasional apotek atau perusahaan farmasi untuk mengelola persediaan obat, mengontrol stok, memantau transaksi penjualan, memastikan kepatuhan regulasi, serta mengelola data pelanggan dan resep. Industri farmasi Indonesia telah menyaksikan tren penting: adopsi teknologi digital oleh apotek. Dengan perkiraan tambahan 17.2 juta pengguna, atau 36.93% di apotek online [&hellip;]<\/p>\n","protected":false},"author":162,"featured_media":142221,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[4684],"tags":[],"class_list":{"0":"post-142220","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-hospital"},"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>7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026<\/title>\n<meta name=\"description\" content=\"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.\" \/>\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\/software-farmasi-terbaik\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026\" \/>\n<meta property=\"og:description\" content=\"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\" \/>\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-01-01T09:03:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-26T09:39:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.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=\"Hendra Gunawan\" \/>\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=\"Hendra Gunawan\" \/>\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\/software-farmasi-terbaik\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\"},\"author\":{\"name\":\"Hendra Gunawan\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/7eb92f40eba8b038fa552ba13cd6d88a\"},\"headline\":\"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026\",\"datePublished\":\"2025-01-01T09:03:32+00:00\",\"dateModified\":\"2026-03-26T09:39:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\"},\"wordCount\":2386,\"publisher\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp\",\"articleSection\":[\"Hospital\"],\"inLanguage\":\"id\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\",\"name\":\"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp\",\"datePublished\":\"2025-01-01T09:03:32+00:00\",\"dateModified\":\"2026-03-26T09:39:45+00:00\",\"description\":\"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp\",\"width\":1200,\"height\":675,\"caption\":\"software farmasi\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/id\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026\"}]},{\"@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\/7eb92f40eba8b038fa552ba13cd6d88a\",\"name\":\"Hendra Gunawan\",\"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\/Hendra-Gunawan-96x96.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Hendra-Gunawan-96x96.webp\",\"caption\":\"Hendra Gunawan\"},\"description\":\"Hendra adalah ERP Specialist senior dengan pengalaman lebih dari 6 tahun dalam implementasi dan optimasi sistem ERP di berbagai industri. Ia berspesialisasi dalam menulis artikel seputar implementasi dan integrasi modul bisnis, sistem ERP untuk manajemen operasional, dan otomatisasi proses bisnis.\",\"sameAs\":[\"https:\/\/www.hashmicro.com\/id\/\"],\"jobTitle\":\"Hendra Gunawan - Senior Content Writer - ERP Specialist\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/author\/hendra-gunawan\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026","description":"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.","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\/software-farmasi-terbaik\/","og_locale":"id_ID","og_type":"article","og_title":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026","og_description":"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2025-01-01T09:03:32+00:00","article_modified_time":"2026-03-26T09:39:45+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp","type":"image\/webp"}],"author":"Hendra Gunawan","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Hendra Gunawan","Estimasi waktu membaca":"14 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/"},"author":{"name":"Hendra Gunawan","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/7eb92f40eba8b038fa552ba13cd6d88a"},"headline":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026","datePublished":"2025-01-01T09:03:32+00:00","dateModified":"2026-03-26T09:39:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/"},"wordCount":2386,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp","articleSection":["Hospital"],"inLanguage":"id"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/","name":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp","datePublished":"2025-01-01T09:03:32+00:00","dateModified":"2026-03-26T09:39:45+00:00","description":"7 Rekomendasi Software Farmasi Terbaik di Indonesia \u00b7 1. HashMicro \u00b7 2. NetSuite \u00b7 3. Winpharm \u00b7 4. GoFrugal \u00b7 5. PioneerRX \u00b7 6.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/06\/software.webp","width":1200,"height":675,"caption":"software farmasi"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/software-farmasi-terbaik\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"7 Rekomendasi Software Farmasi Terbaik di Indonesia 2026"}]},{"@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\/7eb92f40eba8b038fa552ba13cd6d88a","name":"Hendra Gunawan","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\/Hendra-Gunawan-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Hendra-Gunawan-96x96.webp","caption":"Hendra Gunawan"},"description":"Hendra adalah ERP Specialist senior dengan pengalaman lebih dari 6 tahun dalam implementasi dan optimasi sistem ERP di berbagai industri. Ia berspesialisasi dalam menulis artikel seputar implementasi dan integrasi modul bisnis, sistem ERP untuk manajemen operasional, dan otomatisasi proses bisnis.","sameAs":["https:\/\/www.hashmicro.com\/id\/"],"jobTitle":"Hendra Gunawan - Senior Content Writer - ERP Specialist","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/hendra-gunawan\/"}]}},"focus_keyword":"software farmasi","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/142220","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\/162"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=142220"}],"version-history":[{"count":17,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/142220\/revisions"}],"predecessor-version":[{"id":191437,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/142220\/revisions\/191437"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/142221"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=142220"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=142220"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=142220"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}