{"id":40555,"date":"2024-05-03T08:23:06","date_gmt":"2024-05-03T01:23:06","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=40555"},"modified":"2025-12-09T13:54:39","modified_gmt":"2025-12-09T06:54:39","slug":"self-service-dan-self-order","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/","title":{"rendered":"Apa Itu Self Service dan Self Order serta Kelebihannya untuk Bisnis Restoran Anda"},"content":{"rendered":"<p>Belakangan ini, layanan self service dan self order semakin populer di kalangan masyarakat. Kedua layanan ini hadir sebagai inovasi yang memanfaatkan teknologi untuk membuat proses lebih praktis. Bagi pemilik bisnis, hal ini menjadi peluang untuk meningkatkan efisiensi dan kepuasan pelanggan.<\/p>\n<p>Berbagai industri kini mengadopsi layanan self service dan self order untuk efisiensi, termasuk restoran. Dengan <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran?utm_source=blog\">Software POS Restaurant<\/a>, transaksi lebih mudah dikelola, proses dipercepat, dan pengalaman pelanggan jadi lebih baik.<\/p>\n<p>Self service bukan hanya diterapkan di restoran, tetapi juga di berbagai industri lain seperti retail dengan mesin kasir mandiri, perbankan lewat ATM dan mobile banking, hingga transportasi dengan check-in mandiri di bandara. Untuk memahami penerapannya, mari simak pembahasan dalam artikel ini!<\/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=\"#da\"><i><span style=\"font-weight: 400;\">Self service <\/span><\/i><\/a><span style=\"font-weight: 400;\">adalah layanan mandiri di mana pelanggan memilih, membayar, dan mengambil tanpa bantuan staf.<\/span><\/li>\n<li><a href=\"#jenis\">Beragam jenis self service<\/a> mencakup self banking, self checkout, self laundry, self check-in, dan self order di restoran.<\/li>\n<li aria-level=\"1\"><a href=\"#ha\">Beberapa kelebihan self service dan self order:<\/a> Pelanggan menjadi puas, pendapatan naik, kecurangan berkurang, prestise meningkat, kontak langsung minim.<\/li>\n<li><a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran\" rel=\"\">Sistem POS HashMicro<\/a> memiliki fitur-fitur yang mendukung efektivitas strategi anda. <\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n\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> <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\n<h2 id=\"1\"><b>A<\/b><b>pa itu <\/b><b><i>Self Service<\/i><\/b><b> dan <\/b><b><i>Self Order<\/i><\/b><b>?<\/b><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-167030\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service.webp\" alt=\"self service \" width=\"2048\" height=\"1109\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service.webp 2048w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-300x162.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-1536x832.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-776x420.webp 776w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-1068x578.webp 1068w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/self-service-1920x1040.webp 1920w\" sizes=\"auto, (max-width: 2048px) 100vw, 2048px\" \/><\/p>\n<p>Dalam bisnis restoran, self service adalah konsep layanan tanpa staf pelayan, di mana pelanggan menangani kebutuhannya sendiri. Contohnya mencakup pemesanan lewat QR code, pembayaran cashless, mengambil saus secara mandiri, serta mengembalikan tray atau membersihkan meja setelah makan.<\/p>\n<p>Sementara itu, self order adalah layanan yang memungkinkan pelanggan memesan dan membayar tanpa bantuan kasir. Penerapannya dapat berupa <span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/manfaat-e-menu-bagi-restoran-modern\/\">aplikasi menu restoran<\/a><\/span> pada tablet di meja, kiosk atau point of sale berukuran besar, serta pemesanan melalui QR code yang terhubung ke situs atau aplikasi.<\/p>\n<p>Singkatnya, keduanya sama-sama menekankan kemandirian pelanggan. Self service berfokus pada proses pelayanan, sedangkan self order berfokus pada proses pemesanan. Self order dapat dioptimalkan menggunakan <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Sistem POS Restoran<\/span><\/a> yang terintegrasi dengan Sistem E-Menu untuk mendukung layanan mandiri yang lebih praktis.<\/p>\n<p><b>Baca juga: <\/b><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/software-industri-fb-adalah\/\" target=\"_blank\" rel=\"noopener\"><b>F&amp;B Adalah | Keuntungan Software pada Industri F&amp;B<\/b><\/a><\/p>\n<h2><strong><span id=\"jenis\">Jenis-jenis Self Service<\/span><\/strong><\/h2>\n<p>Self service hadir dalam berbagai bentuk untuk mempermudah aktivitas sehari-hari. Setiap jenisnya dirancang agar pelanggan dapat menyelesaikan kebutuhan mereka secara mandiri, lebih cepat, dan lebih efisien. Berikut beberapa jenis yang paling umum:<\/p>\n<h3><strong>1. Self banking<\/strong><\/h3>\n<p>Termasuk ATM dan mesin setor tunai. Layanan ini memungkinkan nasabah melakukan transaksi dasar seperti tarik tunai, transfer, atau penyetoran tanpa bantuan teller. Hasilnya, proses lebih cepat dan antrean di bank berkurang.<\/p>\n<h3><strong>2. Self checkout di retail<\/strong><\/h3>\n<p>Mesin kasir mandiri memungkinkan pelanggan memindai barang, memilih metode pembayaran, dan menyelesaikan belanja sendiri. Sistem ini menghemat waktu dan meningkatkan kelancaran arus pelanggan, terutama saat jam sibuk.<\/p>\n<h3><strong>3. Self service laundry<\/strong><\/h3>\n<p>Laundry koin atau laundry otomatis menyediakan mesin cuci dan pengering yang bisa digunakan langsung oleh pelanggan. Jenis layanan ini populer karena fleksibel, praktis, dan mengurangi kebutuhan tenaga kerja.<\/p>\n<h3><strong>4. Self check-in transportasi<\/strong><\/h3>\n<p>Mesin check-in di bandara atau terminal memungkinkan penumpang mencetak boarding pass, memilih kursi, dan drop bagasi secara mandiri. Ini mempercepat proses perjalanan dan mengurangi antrean di counter.<\/p>\n<h3><strong>5. Self order di restoran<\/strong><\/h3>\n<p>Melalui kiosk atau aplikasi, pelanggan dapat memilih menu, menyesuaikan pesanan, dan melakukan pembayaran secara mandiri. Pendekatan tersebut membantu mempercepat alur pelayanan sekaligus mengurangi potensi kesalahan dalam pemesanan.<\/p>\n<h2><strong>Kelebihan dan Kekurangan Self Service<\/strong><\/h2>\n<p>Self service semakin populer karena dianggap mampu memberi kemudahan bagi pelanggan sekaligus efisiensi bagi bisnis. Namun, seperti inovasi lain, konsep ini tentu memiliki sisi positif dan negatif yang perlu dipertimbangkan sebelum diterapkan.<\/p>\n<table>\n<tbody>\n<tr>\n<td style=\"background-color: #990000; color: #ffffff; padding: 5px; text-align: center;\"><b>Kelebihan<\/b><\/td>\n<td style=\"background-color: #990000; color: #ffffff; padding: 5px; text-align: center;\"><b>Kekurangan<\/b><\/td>\n<\/tr>\n<tr>\n<td>Pelanggan lebih puas karena layanan cepat dan praktis.<\/td>\n<td>Tidak semua pelanggan terbiasa dengan sistem mandiri.<\/td>\n<\/tr>\n<tr>\n<td>Pendapatan bisnis meningkat lewat proses yang efisien.<\/td>\n<td>Biaya awal implementasi sistem bisa cukup tinggi.<\/td>\n<\/tr>\n<tr>\n<td>Human error berkurang karena proses lebih terotomatisasi.<\/td>\n<td>Risiko muncul jika sistem mengalami gangguan teknis.<\/td>\n<\/tr>\n<tr>\n<td>Citra bisnis lebih modern dan mengikuti tren teknologi.<\/td>\n<td>Kurangnya interaksi personal bisa mengurangi kehangatan layanan.<\/td>\n<\/tr>\n<tr>\n<td>Kontak langsung berkurang sehingga lebih higienis.<\/td>\n<td>Perlu edukasi pelanggan agar sistem mudah digunakan.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2><b>Mengapa Layanan\u00a0Self Service\u00a0dan\u00a0Self Order Penting?<\/b><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-167066 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting.webp\" alt=\"Mengapa Layanan\u00a0Self Service\u00a0dan\u00a0Self Order Penting\" width=\"2048\" height=\"1109\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting.webp 2048w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-300x162.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-1536x832.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-776x420.webp 776w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-1068x578.webp 1068w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Mengapa-Layanan-Self-Service-dan-Self-Order-Penting-1920x1040.webp 1920w\" sizes=\"auto, (max-width: 2048px) 100vw, 2048px\" \/><\/p>\n<p><span style=\"font-weight: 400;\"><span id=\"ha\">Hadirnya layanan <\/span><i><span style=\"font-weight: 400;\">self service <\/span><\/i><span style=\"font-weight: 400;\">dan<\/span><i><span style=\"font-weight: 400;\"> self order <\/span><\/i><span style=\"font-weight: 400;\">memberikan berbagai pengalaman baru yang menarik dan berkesan, baik bagi pelanggan maupun pemilik bisnis restoran. Pelanggan bisa memesan dengan lebih mudah dan cepat. <\/span><\/span><\/p>\n<p><span style=\"font-weight: 400;\">Sedangkan, sebagai pemilik bisnis restoran, Anda bisa menjalankan bisnis secara lebih efisien. Tentu bukan hanya itu saja kelebihan yang bisa Anda peroleh. Berikut beberapa kelebihan lain yang bisa Anda peroleh dengan menerapkan layanan <\/span><i><span style=\"font-weight: 400;\">self service <\/span><\/i><span style=\"font-weight: 400;\">dan <\/span><i><span style=\"font-weight: 400;\">self order<\/span><\/i><span style=\"font-weight: 400;\">.<\/span><\/p>\n<h3 id=\"a\"><strong>1. Kepuasan pelanggan bertambah<\/strong><\/h3>\n<p>Self service dan self order mempercepat alur transaksi karena pelanggan dapat mengurus pesanan sendiri tanpa menunggu staf. Proses yang lebih lancar dan antrean yang berkurang membuat pengalaman makan lebih nyaman, sehingga tingkat kepuasan pelanggan ikut meningkat.<\/p>\n<h3 id=\"b\"><strong>2. Meningkatkan pendapatan restoran<\/strong><\/h3>\n<p>Dengan layanan mandiri, restoran dapat melayani lebih banyak pelanggan tanpa menambah staf. Selain itu, area self service yang menampilkan pilihan menu secara jelas dapat mendorong pelanggan mengambil lebih banyak item, sehingga penjualan dan pendapatan ikut bertambah.<\/p>\n<h3 id=\"c\"><strong>3. Meminimalisir kecurangan kasir dan <i>human error<\/i><\/strong><\/h3>\n<p>Self service dan self order dapat menekan kecurangan kasir dan human error karena pesanan dan pembayaran dicatat otomatis melalui <span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/5-software-restoran-terbaik-di-indonesia\/\" rel=\"\">aplikasi kasir restoran<\/a><\/span>. Pelanggan memesan dan membayar sendiri, sehingga risiko salah input dan manipulasi transaksi jauh berkurang.<\/p>\n<h3 id=\"d\"><strong>4. Meningkatkan prestise restoran<\/strong><\/h3>\n<p>Pemanfaatan teknologi dalam self service dan self order dapat membuat restoran terlihat lebih modern dan mengikuti tren. Kesan high-tech tersebut meningkatkan citra bisnis dan dapat menarik lebih banyak pelanggan yang penasaran dengan pengalaman layanan mandiri.<\/p>\n<h3 id=\"e\"><strong>5. Mengurangi kontak langsung<\/strong><\/h3>\n<p>Self service dan self order membantu meminimalkan interaksi fisik antara pelanggan dan staf, terutama dengan dukungan <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Software POS Restaurant<\/span><\/a> yang memungkinkan transaksi berlangsung secara aman, cepat, dan sepenuhnya mandiri.<\/p>\n<p><span style=\"font-weight: 400;\"><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><\/span><\/p>\n<h2><strong>Bagaimana Cara Menerapkan <em>Self Service<\/em> dan <em>Self Order<\/em> yang Efisien?<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-166897 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien.webp\" alt=\"Bagaimana Cara Menerapkan Self Service dan Self Order yang Efisien?\" width=\"879\" height=\"474\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien.webp 879w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien-300x162.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien-768x414.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien-779x420.webp 779w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Bagaimana-Cara-Menerapkan-Self-Service-dan-Self-Order-yang-Efisien-696x375.webp 696w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/p>\n<p><span id=\"se\">Selamat datang di dunia digital, di mana teknologi memberi kita kekuatan untuk memberikan pengalaman berbelanja yang lebih cepat dan nyaman kepada pelanggan. Self service dan self order telah menjadi norma baru dalam industri ritel dan makanan &amp; minuman, memungkinkan pelanggan untuk memilih, memesan, dan membayar sendiri tanpa harus berinteraksi langsung dengan staf.<\/span><\/p>\n<p>Nah, bagaimana caranya menerapkan kedua konsep ini dengan efisien? Mari kita bahas.<\/p>\n<h3><strong>1. Tentukan Tujuan Anda<\/strong><\/h3>\n<p>Sebelum melangkah lebih jauh, tentukan tujuan utama Anda. Apakah Anda ingin meningkatkan kecepatan layanan? Atau mungkin Anda ingin mengurangi biaya tenaga kerja? Dengan mengetahui tujuan Anda, Anda akan dapat merancang sistem yang paling sesuai untuk bisnis Anda.<\/p>\n<h3><strong>2. Pilih Sistem POS yang Tepat<\/strong><\/h3>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/pos-retail-terbaik-di-indonesia\/\" target=\"_blank\" rel=\"noopener\">POS system terbaik dan terlengkap<\/a> adalah nadi dari operasi self service dan self order. Pilihlah sistem yang user-friendly, intuitif, dan dapat diintegrasikan dengan sistem lain di bisnis Anda. Keandalan adalah kunci; pastikan sistem Anda dapat berfungsi dengan lancar tanpa banyak hambatan.<\/p>\n<h3><strong>3. Desain Antarmuka yang Menarik dan Mudah Digunakan<\/strong><\/h3>\n<p>Antarmuka yang menarik dan mudah digunakan akan meningkatkan keinginan pelanggan untuk menggunakan sistem self service Anda. Pastikan semua instruksi jelas dan menggunakan visual yang menarik. Semakin mudah pelanggan memahami cara kerjanya, semakin cepat mereka akan beradaptasi.<\/p>\n<h3><strong>4. Letakkan di Lokasi yang Strategis<\/strong><\/h3>\n<p>Pemilihan lokasi sangat penting. Letakkan mesin atau kiosk di tempat yang mudah diakses dan terlihat oleh pelanggan saat mereka memasuki toko atau restoran Anda. Hal ini akan mengurangi kemungkinan mereka melewatkannya atau bingung harus ke mana.<\/p>\n<h3><strong>5. Edukasi Pelanggan Anda<\/strong><\/h3>\n<p>Walaupun teknologi ini mungkin terasa intuitif bagi Anda, beberapa pelanggan mungkin memerlukan bimbingan awal. Pastikan ada petunjuk yang jelas dan staf yang siap membantu pelanggan yang memerlukan bantuan.<\/p>\n<h3><strong>6. Lakukan Pemeliharaan dan Pembaruan Secara Berkala<\/strong><\/h3>\n<p>Teknologi terus berkembang. Untuk memastikan sistem Anda tetap relevan dan efisien, lakukan pemeliharaan dan pembaruan secara berkala. Dengan begitu, Anda tidak hanya menjaga sistem tetap berfungsi dengan baik tetapi juga memberikan pengalaman terbaik bagi pelanggan.<\/p>\n<h3><strong>7. Terima Masukan dan Lakukan Penyesuaian<\/strong><\/h3>\n<p>Dengarkan masukan dari pelanggan Anda. Mereka adalah pengguna terbesar dari sistem ini. Jika ada keluhan atau saran, pertimbangkan untuk membuat penyesuaian. Dengan mendengar masukan, Anda dapat meningkatkan efisiensi dan kepuasan pelanggan.<\/p>\n<h2><strong>Optimalkan Penerapan Self Service dan Self Order Anda dengan Software POS Restaurant Hashmicro<\/strong><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-173952\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1.webp\" alt=\"pos hashmicro\" width=\"1737\" height=\"1200\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1.webp 1737w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-300x207.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-1024x707.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-768x531.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-1536x1061.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-608x420.webp 608w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-150x104.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-218x150.webp 218w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-696x481.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-1068x738.webp 1068w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/pos-hashmicro-1-100x70.webp 100w\" sizes=\"auto, (max-width: 1737px) 100vw, 1737px\" \/><\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran\">Software POS Restaurant HashMicro<\/a> merupakan software terbaik di Indonesia yang dirancang khusus untuk bisnis kuliner. Software ini sudah terintegrasi dengan modul penting seperti CRM, akuntansi, inventaris, pembelian, dan sistem POS untuk mendukung efisiensi operasional restoran Anda.<\/p>\n<p>Fitur lengkap seperti transaksi, membership, loyalty program, meal combo, kitchen &amp; ordering station, serta sales report generation menjadikan HashMicro solusi ideal. Dengan dukungan ini, restoran Anda bisa lebih mudah mengoptimalkan layanan self service dan self order secara efektif.<\/p>\n<p>Berikut merupakan fitur utama dari Software POS Hashmicro:<\/p>\n<ul>\n<li><strong>Complete Transaction Features:<\/strong> Percepat proses transaksi dengan berbagai metode pembayaran dan pricelist, serta lakukan rekonsiliasi mesin kasir dengan mudah.<\/li>\n<li><strong>Membership Management:<\/strong> Kelola informasi pelanggan, buat segmentasi dan program promosi otomatis, serta permudah komunikasi.<\/li>\n<li><strong>Program &amp; Loyalty Management:<\/strong> Ciptakan loyalty program dan reward personal sesuai kategori tertentu yang terintegrasi otomatis dalam transaksi.<\/li>\n<li><strong>Meal Combo Management:<\/strong> Atur paket makanan mulai dari harga, variasi rasa, hingga pantau jejak penjualannya secara efektif.<\/li>\n<li><strong>Kitchen &amp; Ordering Station:<\/strong> Tampilkan pesanan ke kitchen display\/station secara otomatis untuk memantau status dan durasi memasak.<\/li>\n<li><strong>Sales Report Generation:<\/strong> Hasilkan laporan profit &amp; loss, margin, dan laporan penjualan tiap cabang dengan cepat dan akurat hanya dalam beberapa klik.<\/li>\n<\/ul>\n<p>&#8220;Integrasi Software POS HashMicro dengan sistem lain merupakan aspek strategis yang krusial. Perusahaan tidak harus melakukan transformasi total pada alur kerja, melainkan dapat menyatukan data keuangan secara bertahap untuk menjaga kesinambungan operasional.&#8221;<\/p>\n<p><strong>-Chelsea Gunawan, B.Acc., Business Dev Mgr<\/strong><\/p>\n<h2 id=\"3\"><b>Kesimpulan<\/b><\/h2>\n<p>Self service dan self order adalah inovasi layanan mandiri yang memungkinkan pelanggan memilih, memesan, hingga membayar tanpa bergantung pada staf. Konsep ini membuat proses lebih cepat, efisien, serta meningkatkan pengalaman pelanggan di era digital saat ini.<\/p>\n<p>Untuk itu, <a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos-restoran\">HashMicro<\/a> menghadirkan Software POS Restaurant yang dirancang khusus untuk mendukung layanan modern. Dilengkapi fitur transaksi lengkap, membership, loyalty program, meal combo, kitchen display, hingga laporan penjualan, software ini siap mengoptimalkan operasional restoran Anda.<\/p>\n<p>Segera coba <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/?medium=web-form-header\">demo gratis<\/a> dari Software POS Restaurant HashMicro dan rasakan langsung manfaatnya. Mulai dari transaksi lebih cepat, layanan self order yang praktis, hingga efisiensi pengelolaan bisnis restoran yang membuat Anda lebih unggul dalam persaingan!<\/p>\n<a href=\"https:\/\/www.hashmicro.com\/id\/sistem-pos?medium=moneysite-banner\" target=\"_blank\"><img decoding=\"async\" loading=\"lazy\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/25-Software-POS-Desktop.webp\" data-desktop-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/25-Software-POS-Desktop.webp\" data-mobile-src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/02\/25-POS-Software-Mobile.webp\" alt=\"POS\" class=\"responsive-image-banner\"><\/a>\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script>\n<script>  window._mfq = window._mfq || [];\r\n  (function() {\r\n    var mf = document.createElement(\"script\");\r\n    mf.type = \"text\/javascript\"; mf.defer = true;\r\n    mf.src = \"\/\/cdn.mouseflow.com\/projects\/5e05f34e-ba01-471c-b61c-6edd2d7e05ed.js\";\r\n    document.getElementsByTagName(\"head\")[0].appendChild(mf);\r\n  })();<\/script>\n<h2><strong>Pertanyaan Seputar Self Service<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Apa fungsi self service?<\/strong><\/summary>\n<p>Self-service memungkinkan pelanggan untuk melakukan tugas atau transaksi dengan cepat dan efisien. Mereka tidak perlu menunggu antrian atau menghabiskan waktu berinteraksi dengan petugas. Dengan adanya self-service, pelanggan dapat menghemat waktu dan energi dalam proses pelayanan.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa yang dimaksud dengan french service?<\/strong><\/summary>\n<p>French service : tipe pelayanan yang bersifat formal dan eksklusif di mana chef menyiapkan makanan secara langsung di hadapan para tamu. English service : jenis layanan keluarga di mana pelayan mengantarkan makanan ke meja, kemudian tuan rumah akan berkontribusi untuk menyiapkan dan membagikan hidangan ke tamu lainnya.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa yang dimaksud dengan table service?<\/strong><\/summary>\n<p>Table service merupakan jenis pelayanan restoran di mana tamu dipersilakan untuk duduk dan memesan hidangan ke pelayan. Kemudian, pelayan akan menyajikan hidangan tersebut di hadapan para tamu. Saat melakukan table service, seorang pelayan harus fokus dan mampu mengingat pesanan dari setiap pengujung.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apakah di mcd self service?<\/strong><\/summary>\n<p>Karena McDonald&#8217;s sekarang menggunakan metode self-service, jadi untuk pengambilan makanan menggunakan order number yang nantinya dipanggil untuk mengambil pesanan yang telah dipesan.<\/p>\n<\/details>\n<\/li>\n<\/ul>\n<p><script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [{\n    \"@type\": \"Question\",\n    \"name\": \"Apa itu self service dan contohnya?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Self-service contohnya adalah ketika pelanggan masuk ke restoran, maka mereka bisa mencari sendiri meja yang kosong untuk ditempati. Begitupun dengan pemesanan melalui tablet, sejatinya juga bagian dari self-service. Di sebuah restoran junk food, pelanggan juga biasa mengambil sendiri saos dan sambal.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Kenapa harus self service?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Kelebihan dari self service adalah bertambahnya kepuasan pelanggan. Sebab, jenis pelayanan ini mempermudah pelanggan dalam bertransaksi. Tidak ada lagi pelanggan yang merasa kurang puas karena lama menunggu pelayanan atau mengantre untuk melakukan pembayaran.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Apa itu self service restaurant?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Sering dikenal dengan istilah prasmanan, buffet atau self service merupakan jenis layanan yang sangat praktis dan cepat. Di sini, seluruh hidangan telah ditata dan diatur di atas meja hidang. Para tamu diperbolehkan untuk memilih sendiri makanan sesuai selera dan porsi yang diinginkan.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Belakangan ini, layanan self service dan self order semakin populer di kalangan masyarakat. Kedua layanan ini hadir sebagai inovasi yang memanfaatkan teknologi untuk membuat proses lebih praktis. Bagi pemilik bisnis, hal ini menjadi peluang untuk meningkatkan efisiensi dan kepuasan pelanggan. Berbagai industri kini mengadopsi layanan self service dan self order untuk efisiensi, termasuk restoran. Dengan [&hellip;]<\/p>\n","protected":false},"author":165,"featured_media":179009,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[4699],"tags":[],"class_list":{"0":"post-40555","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-pos-restaurant"},"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>Self Service dan Self Order serta Kelebihannya Bagi Bisnis<\/title>\n<meta name=\"description\" content=\"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan\" \/>\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\/self-service-dan-self-order\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apa Itu Self Service dan Self Order serta Kelebihannya untuk Bisnis Restoran Anda\" \/>\n<meta property=\"og:description\" content=\"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/\" \/>\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=\"2024-05-03T01:23:06+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-09T06:54:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.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=\"Novi Herawati\" \/>\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=\"Novi Herawati\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"11 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/\",\"name\":\"Self Service dan Self Order serta Kelebihannya Bagi Bisnis\",\"isPartOf\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp\",\"datePublished\":\"2024-05-03T01:23:06+00:00\",\"dateModified\":\"2025-12-09T06:54:39+00:00\",\"description\":\"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan\",\"breadcrumb\":{\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage\",\"url\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp\",\"contentUrl\":\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp\",\"width\":1200,\"height\":675,\"caption\":\"Self Service hashmicro\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.hashmicro.com\/id\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apa Itu Self Service dan Self Order serta Kelebihannya untuk Bisnis Restoran Anda\"}]},{\"@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\"]}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Self Service dan Self Order serta Kelebihannya Bagi Bisnis","description":"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan","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\/self-service-dan-self-order\/","og_locale":"id_ID","og_type":"article","og_title":"Apa Itu Self Service dan Self Order serta Kelebihannya untuk Bisnis Restoran Anda","og_description":"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2024-05-03T01:23:06+00:00","article_modified_time":"2025-12-09T06:54:39+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp","type":"image\/webp"}],"author":"Novi Herawati","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Novi Herawati","Estimasi waktu membaca":"11 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/","name":"Self Service dan Self Order serta Kelebihannya Bagi Bisnis","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp","datePublished":"2024-05-03T01:23:06+00:00","dateModified":"2025-12-09T06:54:39+00:00","description":"Apa itu self service dan self order? Belakangan ini, kedua istilah tersebut mulai familiar dalam industri bisnis. Self service adalah layanan","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/05\/Self-Service-hashmicro-1.webp","width":1200,"height":675,"caption":"Self Service hashmicro"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/self-service-dan-self-order\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Apa Itu Self Service dan Self Order serta Kelebihannya untuk Bisnis Restoran Anda"}]},{"@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"]}]}},"focus_keyword":"Self Service","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/40555","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\/165"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=40555"}],"version-history":[{"count":16,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/40555\/revisions"}],"predecessor-version":[{"id":179671,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/40555\/revisions\/179671"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/179009"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=40555"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=40555"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=40555"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}