{"id":151470,"date":"2024-12-10T14:55:32","date_gmt":"2024-12-10T07:55:32","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=151470"},"modified":"2026-02-26T12:05:45","modified_gmt":"2026-02-26T05:05:45","slug":"sistem-penggajian","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/","title":{"rendered":"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami"},"content":{"rendered":"<p>Sistem penggajian bukan sekadar membayar gaji di akhir bulan. Di baliknya ada proses menghitung komponen gaji dari absensi, tunjangan, hingga potongan, lalu memastikan semuanya sesuai kebijakan perusahaan dan tercatat rapi.<\/p>\n<p>Sayangnya, banyak perusahaan masih tersendat di tahap yang terlihat sepele ini seperti pembayaran telat, data tidak sinkron, atau perhitungan yang meleset. Dampaknya bisa cepat terasa yaitu kepercayaan karyawan menurun, reputasi perusahaan ikut terpukul, dan biaya koreksi jadi membengkak.<\/p>\n<p>Supaya prosesnya lebih terkendali, perusahaan perlu memahami komponen penting dalam penggajian sekaligus pendekatan modern yang membuat perhitungan lebih akurat, alur lebih cepat, dan hasilnya mudah diaudit.<\/p>\n<table style=\"border-collapse: collapse; background-color: #fffacd; 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;\"><a href=\"#sistem\">Sistem penggajian<\/a> adalah proses mengelola penghitungan dan pembayaran gaji karyawan dalam perusahaan.<\/li>\n<li style=\"font-weight: 400;\"><a href=\"#prosedur\">Prosedur penggajian karyawan<\/a> adalah serangkaian langkah yang memastikan pembayaran gaji dilakukan tepat waktu.<\/li>\n<li>Sistem penggajian <a href=\"#data\">membutuhkan data konstan<\/a> seperti gaji pokok dan tunjangan tetap, serta data variabel seperti kehadiran, lembur, bonus, dan potongan tidak tetap.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span style=\"text-align: center;\"><div id=\"toc_group_article\" style=''>\r\n\t<p style='font-size:25px;font-weight:bold; margin-bottom:0px'>\r\n\t\tDaftar Isi:\r\n\t<\/p>\r\n\t<ul id=\"list_toc\" class='list_toc'><\/ul>\r\n<\/div>\r\n\r\n<div id=\"placeholder-toc\"><\/div>\r\n<div id=\"toc\">\r\n    <div class=\"header\">\r\n\t<span class=\"toc-title\" id=\"toc-title\">Daftar Isi<\/span>\t\r\n\t <i class=\"toc-icon\">\r\n        <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"30\" height=\"30\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#000\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"header-icon\">\r\n          <path d=\"m6 9 6 6 6-6\" \/>\r\n        <\/svg>\r\n      <\/i>\r\n\t<\/div>\r\n    <div class=\"list\">\r\n      <ul id=\"toc-list\"><\/ul>\r\n    <\/div>\r\n <\/div>\r\n\r\n<style>\r\n\/* Simple styling for the TOC *\/\r\n\t\r\n\t#toc ul li:last-child {\r\n    padding-bottom: 16px; \/* Adjust the value as needed *\/\r\n}\r\n\r\n.td-fix-index {\r\n\t transform: unset !important;\r\n     -webkit-transform: unset !important; \r\n}\r\n.footer-contact .td-fix-index {\r\n\t transform: translateZ(0) !important;\r\n     -webkit-transform: translateZ(0) !important; \r\n}\r\n\t.tdb_single_content .tdb-block-inner.td-fix-index{\r\n\t\tposition: static;\r\n\t}\r\n\t\r\n\r\n\r\n\t\r\n#toc {\r\n  background-color: #FFF;\r\n\tpadding: 17px 24px 0px 24px !important;\r\n  margin-bottom: 20px;\r\n\/*   border: 1px solid #9C171E; *\/\r\n  border-radius: 6px;\r\n\tdisplay: none;\r\n  max-width: 100%;\r\n  transition: .4s ease height;\r\n\tmargin-left: 0;\r\n\toverflow: hidden;\r\n}\r\n\r\n#toc .header{\r\n  display: flex;\r\n  align-items: center;\r\n  justify-content: space-between;\r\n\tbackground-color: transparent;\r\n}\r\n\t\r\n\t#toc.sticky .header{\r\n\t\tpadding: 4px 0;\r\n\t}\r\n\t\r\n.header p{\r\n  font-size: 18px !important;\r\n  font-weight: 600 !important;\r\n  color: #393939;\r\n   margin-bottom: 0;\r\n  \/* margin-top: 20px; *\/\r\n}\r\n\r\n.toc-icon{\r\n  float: right;\r\n\/*   visibility: hidden; *\/\r\n}\r\n\r\n\t.toc-title{\r\n\t\tmargin-right: auto;\r\n\/* \t\tpadding-left: 20px; *\/\r\n\t\tfont-weight: 600;\r\n\t\talign-self: center;\t}\t\r\n\r\n#toc ul {\r\n  list-style-type: none;\r\n  padding-left: 0;\r\n}\r\n\t\r\n#toc.sticky ul{\r\n\toverflow-y: auto;\r\n\tmax-height: 250px;\r\n\tmargin-top: 0px;\r\n\tpadding-top: 20px;\r\n\/* \tborder-top: 1px solid #d3d3d3; *\/\r\n}\r\n\t\r\n#toc ul li {\r\n\/*   margin-bottom: 10px; *\/\r\n  margin-bottom: 10px;\r\n\tmargin-left: 0;\r\n\ttransition: .2s ease;\r\n\tcursor: pointer;\r\n}\r\n\t\r\n\t#toc.sticky ul li {\r\n\t  margin-right: 10px;\r\n\t}\r\n\t\r\n.td-post-content #toc-list li a:hover, .td-post-content #toc-list a.active{\r\n\tbackground-color: #FFF;\r\n\/* \tpadding: 8px 16px 8px 16px; *\/\r\n\tpadding: 4px 16px 4px 16px;\r\n\tborder-radius: 6px;\r\n\tcolor: #9c171e !important;\r\n\tfont-weight: 600 !important;\r\n}\r\n\t\r\n\t.td-post-content #toc-list li:hover a, .td-post-content #toc-list a.active{\r\n\t\tcolor: #9C171E !important;\r\n\t\tfont-weight: 600 !important;\r\n\t}\r\n\t\r\n.td-post-content #toc-list a.active{\r\n\tfont-weight: bold !important;\r\n\tcolor: #9C171E !important;\r\n}\r\n\t\r\n#toc a, .td-post-content #toc-list a {\r\n  text-decoration: none;\r\n  color: #ea1717 !important;\r\n  transition: .2s ease;\r\n\tfont-weight: 400 !important;\r\n\tdisplay: block;\r\n\t\r\n\tpadding: 4px 16px 4px 0;\r\n}\r\n\r\n#toc.sticky {\r\n  position: fixed;\r\n\/*   top: 73px; *\/\r\n\tbottom: 0;\r\n  z-index: 100; \r\n  box-shadow: 0 2px 5px rgba(0,0,0,0.1); \r\n\twidth: 100%; \r\n\tbackground-color: #FFF;\r\n\/* \tbackground-color: #FFF1F1; *\/\r\n\tborder-bottom: 1px solid #ea1717;\r\n\/*   border: 1px solid #393939; *\/\r\n  box-shadow: 0px 0px 14px 0px #00000040;\r\n  cursor: pointer;\r\n\tanimation: fadein .3s ease;\r\n\tpadding: 12px 16px !important;\r\n}\r\n\t\r\n\t.fadein{\r\n\t\tanimation: fadein .3s ease;\r\n\t}\r\n\t\r\n\t.fadeout{\r\n\t\tanimation: fadeout .3s ease;\r\n\t}\r\n\t\r\n\t\r\n\t@keyframes fadein{\r\n\t\t0% {\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@keyframes fadeout{\r\n\t\t0% {\r\n\t\t\topacity: 1;\r\n\t\t}\r\n\t\t100%{\r\n\t\t\topacity: 0;\r\n\t\t}\r\n\t}\r\n\r\n\t\r\n#toc.sticky .header p{\r\n\tmargin-bottom: 10px;\r\n\tmargin-top: 10px;\r\n}\r\n\r\n#toc.sticky .toc-icon{\r\n  visibility: visible;\r\n\/* \ttransition: 0.4s ease; *\/\r\n}\r\n\t\r\n\t.toc-icon{\r\n\t\talign-items: center;\r\n    \tdisplay: flex;\r\n\t}\r\n\t\r\n\tsvg.header-icon{\r\n\/* \t\tbackground-color: #9c171e; *\/\r\n\t\tbackground-color: #FFF;\r\n\t\tborder-radius: 30px;\r\n\t\tpadding: 5px;\r\n\t}\r\n\r\n#toc.sticky .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\t\r\n\t#toc .list{\r\n\/*   max-height: 0; *\/\r\n  transition: height 0.4s ease;\r\n}\r\n\r\n#toc .header.active .toc-icon{\r\n\ttransform: rotate(0deg); \r\n\topacity: 1;\r\n}\r\n\r\n\t#toc .header.active + .list {\r\n\t  max-height: 200px; \/* Adjust this value as needed *\/\r\n\t  opacity: 1;\r\n\t}\r\n\t\r\n\t#placeholder-toc{\r\n\/* \t\tdisplay: none; *\/\r\n\t}\r\n\t\r\n\t@media (min-width: 768px) and (max-width: 991px){\r\n\t\t#toc.sticky{\r\n\/* \t\t\ttop: 104px; *\/\r\n\t\t\tbottom: 0px;\r\n\t\t}\r\n\t\t\r\n\t\t#toc{\r\n\t\t\twidth: unset !important;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width: 767px){\r\n\t\t#toc{\r\n\t\t\twidth: 100% !important;\r\n\t\t\tdisplay: inline-block;\r\n\t\t}\r\n\t\t\r\n\t\t#toc.sticky{\r\n\t\t\twidth: 90% !important;\r\n\/* \t\t\ttop: 81px; *\/\r\n\t\t\tbottom: 60px;\r\n\t\t\tmargin-left: auto;\r\n\t\t\tmargin-right: auto;\r\n\t\t\tpadding: 0 16px;\r\n\t\t\tright: 5%;\r\n\t\t}\r\n\t}\r\n\t\r\n\t<\/style>\r\n\r\n<style>\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc > li > ul {padding-left: 20px;margin-bottom: 0;}\r\n\t#list_toc{height:max-content;transition:ease-in-out}\r\n\t#list_toc li {margin-bottom: 0;margin-top: 5px;}\r\n\t#list_toc_float li.active > a {color:#b1252d;background: #ffe1e3;}\r\n\t#list_toc_float li a {padding:3px 7px}\r\n\t#list_toc_float li a {\r\n\t\tdisplay: block;\r\n\t\tcolor:#000;\r\n\t\tmargin-bottom: 10px;\r\n\t\ttransition:all 0.2s ease-in-out;\r\n\t\tfont-size:15px\r\n\t}\r\n\t#list_toc_float li{list-style:none;list-style-position:inside; margin-left:0;}\r\n\t#list_toc_float a:hover{color:#b1252d;}\r\n\t\r\n\t#list_toc_float li a{margin-bottom:0px}\r\n\t#toc_group_float{\r\n\t\tline-height: 24px;\r\n\t\tmax-height: calc(100vh - 100px);\r\n\t\toverflow: auto;\r\n\t\tz-index: 99;\r\n\t\tdisplay:none!important;\r\n\t\tbackground:#fff;\r\n\t\ttransition:all 0.5s linear\r\n\t}\r\n\t\r\n\t@media (min-width:1019px){\r\n\t\t#toc_group_float {\r\n\t\t\tdisplay:block!important;\r\n\t\t\t}\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t@media (max-width:768px){\r\n\t\t#toc_group_article {\r\n\t\t\tdisplay:none;\r\n\t\t}\r\n\t}\r\n\t\r\n\t \/* custom scrollbar style *\/\r\n::-webkit-scrollbar {\r\n    width: 7px;\r\n}\r\n::-webkit-scrollbar-track {\r\n    background: #d7a2a4;\r\n}\r\n::-webkit-scrollbar-thumb {\r\n    background: #b1252d;\r\n    border-radius: 15px;\r\n}\t\t\r\n\r\n<\/style>\r\n\r\n<script>\r\n\tdocument.addEventListener('DOMContentLoaded', function() {\r\n\t\t\/\/ Fungsi untuk menangani klik pada semua elemen <a> dengan href yang dimulai dengan #\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst targetId = this.getAttribute('href').substring(1);\r\n\t\t\tconst targetElement = document.getElementById(targetId);\r\n\r\n\t\t\tif (targetElement) {\r\n\t\t\t\tconst headerHeight = document.querySelector('#toc .header').offsetHeight;\r\n\t\t\t\tconst navbarHeight = document.getElementById('tdi_34') ? document.getElementById('tdi_34').offsetHeight : 0;\r\n\t\t\t\tconst windowHeight = window.innerHeight;\r\n\t\t\t\tconst targetOffset = targetElement.offsetTop;\r\n\t\t\t\tconst scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight) - navbarHeight - 40;\r\n\r\n\t\t\t\twindow.scrollTo({\r\n\t\t\t\t\ttop: scrollTo,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua elemen <a> di toc-list dan list-toc\r\n\t\tconst titleLinks = document.querySelectorAll('#toc-list a, #list_toc a');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t});\r\n<\/script>\r\n\r\n<!-- ToC List for mobile -->\r\n<script>\r\n \/\/ Generate TOC based on headings\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  \/\/ Get the element that will contain the TOC\r\n  const tocList = document.getElementById('toc-list');\r\n\r\n  \/\/ Get the element with the ID 'article-left'\r\n  const article = document.querySelector('.td-post-content');\r\n\r\n  \/\/ Find all h2 elements within 'myarticle'\r\n  const headers = article.getElementsByTagName('h2');\r\n\r\n  \/\/ Loop through the h2 elements and create a list item for each one\r\n  for (let i = 0; i < headers.length; i++) {\r\n    const header = headers[i];\r\n    const headerText = header.textContent;\r\n\/\/     const headerId = 'header-' + i;\r\n    const headerId = headerText\r\n    .toLowerCase()\r\n    .trim()\r\n    .replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n    .replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n    \/\/ Set an ID for the header if it doesn't have one\r\n    header.setAttribute('id', headerId);\r\n\r\n    \/\/ Create a list item for the TOC\r\n    const listItem = document.createElement('li');\r\n\r\n    \/\/ Create a link for the list item\r\n    const link = document.createElement('a');\r\n    link.setAttribute('href', '#' + headerId);\r\n    link.textContent = headerText;\r\n\r\n    \/\/ Append the link to the list item\r\n    listItem.appendChild(link);\r\n\r\n    \/\/ Append the list item to the TOC list\r\n    tocList.appendChild(listItem);\r\n  }\r\n});\r\n\r\n\/\/ Keep height and placement of content using placeholder in place of TOC\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const placeholderToc = document.querySelector('#placeholder-toc');\r\n\r\n  function setPlaceholderHeight() {\r\n    placeholderToc.style.height = `${toc.offsetHeight}px`;\r\n  }\r\n\r\n  \/\/ Set the initial height of the placeholder\r\n  setPlaceholderHeight();\r\n\r\n  \/\/ Update the height on window resize\r\n  window.addEventListener('resize', setPlaceholderHeight);\r\n});\r\n  const tocTitle = document.querySelector('#toc-title'); \/\/ Assuming header-faq is the element for TOC title\r\n\r\n\/\/ Sticky TOC and update heading\r\n\/\/ document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/   const toc = document.querySelector('#toc');\r\n\/\/   const footer = document.querySelector('.td-footer-template-wrap');\r\n\/\/   const tocParent = toc.parentElement;\r\n\/\/   const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n\/\/   const tocHeight = toc.offsetHeight;\r\n\/\/   const triggerPoint = divTop + tocHeight + 700;\r\n\/\/   const footerHeight = footer.offsetHeight;\r\n\/\/   const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight - footerHeight - footerHeight;\r\n\/\/   const phtoc = document.querySelector('#placeholder-toc');\r\n\/\/   const headers = document.querySelectorAll('.td-post-content h2');\r\n\/\/   const navLinks = document.querySelectorAll('#toc-list a');\r\n\t\r\n\/\/ \tconst panel2 = document.querySelector(\"#toc .list\");\r\n\/\/ \tvar icon = document.querySelector(\".toc-icon\");\r\n\r\n\/\/   let activeLink = null; \/\/ Declare activeLink outside the loop\r\n\t\r\n\/\/   \/\/ Function to handle scroll and add\/remove .sticky class\r\n\/\/   function handleScroll() {\r\n\/\/     const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n\/\/     let currentHeader = '';\r\n\r\n\/\/     \/\/ Highlight user progress as the heading comes\r\n\/\/     headers.forEach(header => {\r\n\/\/ \t\tconst headerTop = header.offsetTop;\r\n\/\/ \t\tconst headerHeight = header.clientHeight;\r\n\/\/ \/\/ \t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \/\/ \t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \/\/ \t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \/\/ \t\t\tconsole.log(\"current header text:\", currentHeaderText);\r\n\/\/ \/\/ \t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \/\/ \t\t\tcurrentHeader = currentHeaderId;\r\n\t\t\t\r\n\/\/ \/\/ \t\t\tif(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t\ttocTitle.textContent = 'Daftar Isi';\r\n\/\/ \/\/ \t\t\t}\r\n\/\/ \/\/ \t\t}\r\n\/\/ \t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\ttocTitle.textContent = 'Daftar Isi'; \/\/ Selalu pertahankan judul ini di mobile\r\n\/\/ \t\t} else {\r\n\/\/ \t\t\tif (window.scrollY >= (headerTop - headerHeight + 700)) {\r\n\/\/ \t\t\t\tconst currentHeaderId = header.getAttribute('id');\r\n\/\/ \t\t\t\tconst currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n\/\/ \t\t\t\ttocTitle.textContent = currentHeaderText;\r\n\/\/ \t\t\t\tcurrentHeader = currentHeaderId;\r\n\/\/ \t\t\t}\r\n\/\/ \t\t}\r\n\/\/ \t});\r\n\r\n\/\/     navLinks.forEach(link => {\r\n\/\/       link.classList.remove('active');\r\n\/\/       if(currentHeader != '') {\r\n\/\/ \t\t  if (link.getAttribute('href').includes(currentHeader)) {\r\n\/\/ \t\t\t  link.classList.add('active');\r\n\/\/ \t\t  }\r\n\/\/ \t  }\r\n\/\/     });\r\n\/\/ \/\/     if (windowTop < triggerFooterPoint) {\r\n\/\/ \/\/         toc.style.display = 'block';\r\n\/\/ \/\/ \t}else{\r\n\/\/ \/\/         toc.style.display = 'none';\r\n\/\/ \/\/ \t}\r\n\/\/     \/\/ Update TOC title if sticky\r\n\/\/     if (windowTop > triggerPoint) {\r\n\/\/       if (!toc.classList.contains('sticky')) {\r\n\/\/         phtoc.style.display = \"block\";\r\n\/\/         toc.classList.add('sticky');\r\n\/\/         toc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/         toc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/         toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\tpanel2.style.height = '0px';\r\n\/\/ \t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t  if(window.innerWidth < 767){\r\n\/\/ \/\/ \t\t\t  const tocs = document.querySelector('#toc.sticky');\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar Isi'; \/\/ Reset title\r\n\/\/        \t\t  toc.style.width = '150px'; \/\/ Set width to match the parent element\r\n\/\/ \t\t  }\r\n\/\/       }\r\n\/\/       if (currentHeader) {\r\n\/\/ \/\/         console.log(\"activeLink:\", activeLink);\r\n\/\/         if (activeLink) {\r\n\/\/ \/\/           tocTitle.textContent = activeLink.textContent; \/\/ Update TOC title\r\n\/\/           tocTitle.textContent = activeLink ? activeLink.textContent : \"\"; \/\/ Update title only if activeLink exists\r\n\/\/         }\r\n\/\/       }\r\n\/\/     } else {\r\n\/\/       toc.classList.remove('sticky');\r\n\/\/       phtoc.style.display = \"none\";\r\n\/\/       toc.style.width = 'unset'; \/\/ Reset to original width\r\n\/\/       toc.style.backgroundColor = \"#FFF\";\r\n\/\/       tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\tpanel2.style.height = panel2.scrollHeight + \"px\";\r\n\/\/ \t\ticon.style.transform = \"rotate(180deg)\";\r\n\/\/     }\r\n\/\/   }\r\n\r\n\/\/     \/\/ Attach the scroll event listener to the window\r\n\/\/     window.addEventListener('scroll', handleScroll);\r\n\r\n\/\/     \/\/ Initial call to handleScroll to set the correct state on load\r\n\/\/     handleScroll();\r\n\/\/ });\r\n\t\r\n\/\/ \t\/\/ Open toggle TOC\r\n\/\/ \t  document.addEventListener(\"DOMContentLoaded\", function() {\r\n\/\/ \t\tvar tocHeader = document.querySelector(\"#toc .header\");\r\n\/\/ \t\tvar toc = document.querySelector(\"#toc\");\r\n\/\/ \t\tvar icon = document.querySelector(\".toc-icon\");\r\n\/\/ \t\tconst tocTitle = document.querySelector('#toc-title');\r\n\/\/ \t\tconst tocs = document.querySelector('#toc.sticky');\r\n\/\/  \t\tconst tocParent = toc.parentElement;\t\t  \r\n\r\n\/\/ \t\t  tocHeader.addEventListener(\"click\", function() {\r\n\/\/ \t\t\tvar panel = this.nextElementSibling;\r\n\/\/ \t\t\tif (panel.style.height !== '0px') { \/\/ Check if height is not 0px\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \/\/ \t\t\t\ttoc.style.paddingBottom = '6px'; \r\n\/\/ \t\t\t\tif(window.innerWidth > 768){\r\n\/\/ \t\t\t\t\tif(!toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = \"unset\";\r\n\/\/ \/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t\tif (toc.classList.contains('sticky')){\r\n\/\/ \t\t\t\t\t\ttoc.style.width = '${tocParent.offsetWidth}px';\r\n\/\/ \t\t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t\t}\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = \"unset\"; \/\/ Reset width\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t\ttoc.style.backgroundColor = \"#FFF1F1\";\r\n\/\/ \t\t\t} else {\r\n\/\/ \t\t\t  panel.style.height = panel.scrollHeight + \"px\";\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(0deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t  tocTitle.textContent = 'Daftar isi'; \/\/ Reset title\r\n\/\/ \t\t\t\ttoc.style.paddingBottom = '24px';\r\n\/\/ \t\t\t \tif(window.innerWidth < 767){\r\n\/\/ \t\t\t\t\ttoc.style.width = `${tocParent.offsetWidth}px`; \/\/ Set width to match the parent element\r\n\/\/ \t\t\t\t\ttoc.setAttribute('style', 'width: ' + tocParent.offsetWidth + 'px !important;');\r\n\/\/ \t\t\t\t}\r\n\/\/ \t\t\t}\r\n\/\/ \t\t  });\r\n\r\n\/\/ \t\t  \/\/ Close TOC when a link inside it is clicked\r\n\/\/ \t\t  var tocLinks = document.querySelectorAll(\"#toc .list a\");\r\n\/\/ \t\t  tocLinks.forEach(function(link) {\r\n\/\/ \t\t\tlink.addEventListener(\"click\", function() {\r\n\/\/ \t\t\t  var panel = document.querySelector(\"#toc .list\");\r\n\/\/ \t\t\t  panel.style.height = '0px'; \/\/ Set height to 0 for full collapse\r\n\/\/ \t\t\t  icon.style.transform = \"rotate(180deg)\";\r\n\/\/ \t\t\t  toc.style.backgroundColor = \"#FFF\";\r\n\/\/ \t\t\t});\r\n\/\/ \t\t  });\r\n\/\/ \t\t});\r\n\r\n\/\/ START new JS for ToC improvements\r\ndocument.addEventListener(\"DOMContentLoaded\", function() {\r\n  const toc = document.querySelector('#toc');\r\n  const footer = document.querySelector('.td-footer-template-wrap');\r\n  const tocParent = toc.parentElement;\r\n  const divTop = tocParent.getBoundingClientRect().top + window.pageYOffset;\r\n  const tocHeight = toc.offsetHeight;\r\n  const triggerPoint = divTop + tocHeight + 1750;\r\n\tconsole.log(triggerPoint)\r\n  const footerHeight = footer.offsetHeight;\r\n  const triggerFooterPoint = footer.getBoundingClientRect().top + window.pageYOffset - footerHeight*3;\r\n  const phtoc = document.querySelector('#placeholder-toc');\r\n  const headers = document.querySelectorAll('.td-post-content h2');\r\n  const navLinks = document.querySelectorAll('#toc-list a');\r\n  \r\n  const panel2 = document.querySelector(\"#toc .list\");\r\n  const icon = document.querySelector(\".toc-icon\");\r\n  const tocTitle = document.querySelector('#toc-title');\r\n\r\n  let activeLink = null;\r\n  let userClosedTOC = false; \/\/ Flag user menutup TOC\r\n\r\n  function handleScroll() {\r\n    const windowTop = window.pageYOffset || document.documentElement.scrollTop;\r\n    let currentHeader = '';\r\n\r\n    \/\/ Update TOC title sesuai header yang terlihat\r\n    headers.forEach(header => {\r\n      const headerTop = header.offsetTop;\r\n      const headerHeight = header.clientHeight;\r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n      } else {\r\n        if (window.scrollY >= (headerTop - headerHeight + 1750)) {\r\n          const currentHeaderId = header.getAttribute('id');\r\n          const currentHeaderText = document.getElementById(currentHeaderId).textContent;\r\n          tocTitle.textContent = currentHeaderText;\r\n          currentHeader = currentHeaderId;\r\n        }\r\n      }\r\n    });\r\n\r\n    navLinks.forEach(link => {\r\n      link.classList.remove('active');\r\n      if(currentHeader && link.getAttribute('href').includes(currentHeader)) {\r\n        link.classList.add('active');\r\n      }\r\n    });\r\n\r\n    if (windowTop > triggerPoint) {\r\n      if (!toc.classList.contains('sticky')) {\r\n        phtoc.style.display = \"block\";\r\n        toc.classList.add('sticky');\r\n        toc.style.width = `${tocParent.offsetWidth}px`;\r\n        toc.style.backgroundColor = \"#FFF\";\r\n        \/\/ Saat sticky, TOC otomatis tertutup\r\n        panel2.style.height = '0px';\r\n        icon.style.transform = \"rotate(180deg)\";\r\n        userClosedTOC = true; \/\/ Set flag supaya tidak terbuka saat scroll\r\n      }\r\n      \r\n      if(window.innerWidth < 767){\r\n        tocTitle.textContent = 'Daftar Isi'; \r\n        toc.style.width = '150px';\r\n      }\r\n\r\n    } else {\r\n      toc.classList.remove('sticky');\r\n      phtoc.style.display = \"none\";\r\n      toc.style.width = 'unset';\r\n      toc.style.backgroundColor = \"#FFF\";\r\n      tocTitle.textContent = 'Daftar isi'; \r\n\r\n      \/\/ Kembalikan panel jika user belum menutup manual\r\n      if(!userClosedTOC) {\r\n        panel2.style.height = panel2.scrollHeight + \"px\";\r\n        icon.style.transform = \"rotate(0deg)\";\r\n      }\r\n    }\r\n  }\r\n\r\n  window.addEventListener('scroll', handleScroll);\r\n  handleScroll();\r\n\r\n  \/\/ Toggle TOC saat user klik\r\n  const tocHeader = document.querySelector(\"#toc .header\");\r\n  tocHeader.addEventListener(\"click\", function() {\r\n    const panel = panel2;\r\n    if (panel.style.height !== '0px') {\r\n      panel.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    } else {\r\n      panel.style.height = panel.scrollHeight + \"px\";\r\n      icon.style.transform = \"rotate(0deg)\";\r\n      userClosedTOC = false;\r\n    }\r\n  });\r\n\r\n  \/\/ Close TOC saat link diklik\r\n  document.querySelectorAll(\"#toc .list a\").forEach(link => {\r\n    link.addEventListener(\"click\", function() {\r\n      panel2.style.height = '0px';\r\n      icon.style.transform = \"rotate(180deg)\";\r\n      userClosedTOC = true;\r\n    });\r\n  });\r\n});\r\n\/\/ END new JS for ToC improvements\r\n\r\n\t\r\n\/\/ \tmake the heading at the center of the viewport\r\n\/\/ \tdocument.addEventListener('DOMContentLoaded', function() {\r\n\/\/     \/\/ Add click event listener to all links in the TOC list\r\n\/\/     document.querySelectorAll('#toc-list a').forEach(anchor => {\r\n\/\/         anchor.addEventListener('click', function (e) {\r\n\/\/             e.preventDefault(); \/\/ Prevent the default behavior of jumping to the anchor\r\n\/\/ \/\/ \t\t\tconsole.log(\"prevent default\");\r\n\/\/             const targetId = this.getAttribute('href').substring(1); \/\/ Get the ID of the target element\r\n\/\/             const targetElement = document.getElementById(targetId); \/\/ Get the target element\r\n\r\n\/\/             if (targetElement) {\r\n\/\/                 const headerHeight = document.querySelector('#toc .header').offsetHeight; \/\/ Get the height of the fixed header\r\n\/\/                 const windowHeight = window.innerHeight; \/\/ Get the height of the viewport\r\n\/\/                 const targetOffset = targetElement.offsetTop; \/\/ Get the top offset of the target element\r\n\/\/                 const scrollTo = targetOffset + (windowHeight \/ 2) + (headerHeight); \/\/ Calculate the scroll position to center the target element\r\n\r\n\/\/                 \/\/ Scroll to the calculated position smoothly\r\n\/\/                 window.scrollTo({\r\n\/\/                     top: scrollTo,\r\n\/\/                     behavior: 'smooth'\r\n\/\/                 });\r\n\/\/             }\r\n\/\/         });\r\n\/\/     });\r\n\/\/ });\r\n<\/script>\r\n\r\n<script>\r\n    \/\/ Scrollspy function to highlight the active TOC item based on the scroll position\r\n  function scrollSpy(tocClass) {\r\n    const scrollPosition = window.scrollY;\r\n\r\n    \/\/ Find the active h2 and h3 headings based on their position in the corresponding TOC\r\n    let activeH2 = null;\r\n    let activeH3 = null;\r\n\r\n    const tocItems = document.querySelectorAll(`.${tocClass} li`);\r\n    tocItems.forEach(item => {\r\n      const a = item.querySelector('a');\r\n      if (!a) return;\r\n      const href = a.getAttribute('href');\r\n      const targetId = href.substring(1); \/\/ Remove the '#' from the href to get the target ID\r\n      const targetElement = document.getElementById(targetId);\r\n      if (!targetElement) return;\r\n\r\n      const targetTop = targetElement.getBoundingClientRect().top + scrollPosition;\r\n      const nextItem = item.nextElementSibling;\r\n      const nextTop = nextItem ? nextItem.getBoundingClientRect().top + scrollPosition : Infinity;\r\n\r\n      if (targetTop <= scrollPosition + 150) {\r\n        if (a.parentElement.parentElement === tocItems) {\r\n          \/\/ The h2 heading is at the root level of the TOC\r\n          activeH2 = { id: targetId, level: 'h2' };\r\n        } \r\n\t\t  else {\r\n          \/\/ The h3 heading is nested under an h2 heading\r\n          const parentH2 = a.parentElement.parentElement.previousElementSibling;\r\n          if (parentH2) {\r\n            const h2Link = parentH2.querySelector('a');\r\n            if (h2Link) {\r\n              const h2Href = h2Link.getAttribute('href');\r\n              const h2Id = h2Href.substring(1);\r\n              activeH2 = { id: h2Id, level: 'h2' };\r\n            }\r\n          }\r\n          activeH3 = { id: targetId, level: 'h3' };\r\n        }\r\n      }\r\n\r\n      if (targetTop > scrollPosition + 150 && nextTop > scrollPosition + 150 && !activeH3) {\r\n        \/\/ Reset the activeH2 when there are no more active h3 headings\r\n        activeH2 = null;\r\n      }\r\n    });\r\n\r\n    \/\/ Update the active state for the TOC items\r\n    tocItems.forEach(item => {\r\n      item.classList.remove('active');\r\n      const a = item.querySelector('a');\r\n      if (a) {\r\n        const href = a.getAttribute('href');\r\n        const targetId = href.substring(1);\r\n        if ((activeH2 && activeH2.id === targetId) || (activeH3 && activeH3.id === targetId)) {\r\n          item.classList.add('active');\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  \/\/ Call scrollSpy for each TOC on window scroll\r\n  const tocClasses = ['list_toc', 'list_toc_float']; \/\/ Add other TOC class names here if you have more than two instances\r\n  tocClasses.forEach(tocClass => {\r\n    window.addEventListener('scroll', () => scrollSpy(tocClass));\r\n  });\r\n<\/script>\r\n\r\n<!-- ToC List for desktop side bar, diganti jadi inject by php, di code snippet \"Sidebar Accordion\" -->\r\n<!-- <script>\r\n\tdocument.addEventListener(\"DOMContentLoaded\", function() {\r\n\r\n        \/\/ Fungsi untuk membuat nested list\r\n        function createNestedList(parentNode, children) {\r\n            if (children.length === 0) return;\r\n\r\n            const nestedUl = document.createElement('ul');\r\n            children.forEach(child => {\r\n                const nestedLi = document.createElement('li');\r\n                const nestedA = document.createElement('a');\r\n                nestedA.textContent = child.title;\r\n                nestedA.href = `#${child.id}`;\r\n                nestedLi.appendChild(nestedA);\r\n                nestedUl.appendChild(nestedLi);\r\n\r\n                if (child.children.length > 0) {\r\n                    createNestedList(nestedLi, child.children);\r\n                }\r\n            });\r\n\r\n            parentNode.appendChild(nestedUl);\r\n        }\r\n\r\n        \/\/ Membuat objek untuk menyimpan daftar h2 dan h3 beserta judulnya\r\n        const headings = [];\r\n\r\n           \/\/ Mengambil semua elemen h2 dan h3\r\n        \/\/ Mengambil semua elemen h2 dan h3\r\n\t\tconst elements = document.querySelectorAll('.td-post-content h2');\r\n\r\n\t\t\tfunction newFormatId(text) {\r\n\t\t\t\tif(text.toLowerCase() === \"key takeaways\") {\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t\t\r\n\t\t\t\tconst result = text.toLowerCase()\r\n\t\t\t\t.trim()\r\n\t\t\t\t.replace(\/[^\\w\\s-]\/g, '')  \/\/ hapus tanda baca\r\n\t\t\t\t.replace(\/\\s+\/g, '-'); \/\/ ganti spasi jadi \"-\"\r\n\r\n\t\t\t\treturn result;\r\n\t\t\t}\r\n\t\r\n\t\telements.forEach(element => {\r\n\t\t\tif (element.tagName === 'H2') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h2\r\n\t\t\t\tif (element.textContent.toLowerCase() === \"key takeaways\") {return;} \/\/ Kalau Key Takeaways, jangan dimasukin\r\n\t\t\t\theadings.push({ level: 'h2', id: id, title: element.textContent, children: [] });\r\n\t\t\t} else if (element.tagName === 'H3') {\r\n\t\t\t\tconst id = newFormatId(element.textContent); \/\/ Hasilkan ID baru\r\n\t\t\t\telement.id = id; \/\/ Tetapkan ID ke elemen h3\r\n\t\t\t\tif (headings.length > 0) {\r\n\t\t\t\t\theadings[headings.length - 1].children.push({ level: 'h3', id: id, title: element.textContent, children: [] });\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t});\r\n       \/\/ Membuat list HTML dari objek headings\r\n\t\tconst ul = document.getElementById('list_toc');\r\n\t\tlet currentUl = ul;\r\n\t\theadings.forEach(heading => {\r\n\t\t\tconst li = document.createElement('li');\r\n\t\t\tconst a = document.createElement('a');\r\n\t\t\ta.textContent = heading.title;\r\n\t\t\ta.href = `#${heading.id}`; \/\/ Gunakan ID yang baru dihasilkan\r\n\t\t\tli.appendChild(a);\r\n\r\n\t\t\tif (heading.level === 'h2') {\r\n\t\t\t\tcurrentUl = li;\r\n\t\t\t\tul.appendChild(li);\r\n\t\t\t} else if (heading.level === 'h3') {\r\n\t\t\t\tif (!currentUl.lastElementChild || currentUl.lastElementChild.tagName !== 'UL') {\r\n\t\t\t\t\tconst nestedUl = document.createElement('ul');\r\n\t\t\t\t\tcurrentUl.appendChild(nestedUl);\r\n\t\t\t\t\tcurrentUl = nestedUl;\r\n\t\t\t\t}\r\n\t\t\t\tcurrentUl.appendChild(li);\r\n\t\t\t}\r\n\r\n\t\t\tcreateNestedList(li, heading.children);\r\n\t\t});\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc'\r\n\t\tconst ulFloat = document.getElementById('list_toc');\r\n\r\n\t\t\/\/ Dapatkan isi (child elements) dari ul dengan id 'list_toc'\r\n\t\tconst clonedChildren = ulFloat.cloneNode(true).children;\r\n\r\n\t\t\/\/ Dapatkan elemen ul dengan id 'list_toc_float'\r\n\t\tconst ulToc = document.getElementById('list_toc_float');\r\n\r\n\t\t\/\/ Tambahkan isi yang telah didapatkan dari 'list_toc' ke ul dengan id 'list_toc_float'\r\n\t\tulToc.append(...clonedChildren);\r\n\r\n\r\n        \/\/ Fungsi untuk mengambil tinggi navbar\r\n\t\tfunction getNavbarHeight() {\r\n\t\t\tconst navbar = document.getElementById('tdi_34');\r\n\t\t\treturn navbar ? navbar.offsetHeight : 0;\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menambahkan offset posisi scroll\r\n\t\tfunction scrollToElementWithOffset(elementId) {\r\n\t\t\tconst element = document.getElementById(elementId);\r\n\t\t\tif (element) {\r\n\t\t\t\tconst offset = getNavbarHeight();\r\n\t\t\t\tconst elementPosition = element.getBoundingClientRect().top;\r\n\t\t\t\tconst offsetPosition = elementPosition - offset - 40;\r\n\r\n\t\t\t\twindow.scrollBy({\r\n\t\t\t\t\ttop: offsetPosition,\r\n\t\t\t\t\tbehavior: 'smooth'\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t\/\/ Fungsi untuk menangani klik pada tautan judul\r\n\t\tfunction handleTitleClick(event) {\r\n\t\t\tevent.preventDefault();\r\n\t\t\tconst href = event.target.getAttribute('href').substr(1);\r\n\t\t\tscrollToElementWithOffset(href);\r\n\t\t}\r\n\r\n\t\t\/\/ Tambahkan event listener untuk semua tautan judul\r\n\t\tconst titleLinks = document.querySelectorAll('a[href^=\"#\"]');\r\n\t\ttitleLinks.forEach(link => {\r\n\t\t\tlink.addEventListener('click', handleTitleClick);\r\n\t\t});\r\n\t\t\r\n\t});\r\n    <\/script> -->\r\n<\/span><\/p>\n<h2><b>Apa itu Sistem Penggajian?<\/b><\/h2>\n<p><strong>Sistem penggajian<\/strong> adalah proses perusahaan dalam menghitung dan membayar gaji karyawan sesuai regulasi. Sistem ini bekerja dengan mencatat data, menghitung komponen gaji, dan mengotomatiskan pembayaran.<\/p>\n<p><span style=\"font-weight: 400;\">Dalam perkembangannya, sistem gaji berjalan dengan dukungan<\/span> <span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/payroll-management\/\">payroll management<\/a><\/span> ataupun payroll outsourcing. Ini bermanfaat untuk perusahaan dalam hal menjaga transparansi perhitungan gaji, kepatuhan pajak, dan kemudahan audit.<\/p>\n<h2><strong>Data yang Dibutuhkan Sistem Penggajian Karyawan<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Dalam sistem penggajian karyawan, terdapat dua jenis data utama yang digunakan, yaitu:<\/span><\/p>\n<h3><strong>1. Data konstan<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Data konstan adalah data yang bersifat tetap dan tidak berubah dalam setiap periode penggajian, kecuali ada pembaruan kebijakan perusahaan atau perubahan status karyawan. Contoh data konstan dalam sistem penggajian meliputi:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Gaji pokok<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/jenis-tunjangan-karyawan\/\">Tunjangan<\/a> tetap (misalnya tunjangan jabatan atau keluarga)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Nomor rekening bank karyawan<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Tarif pajak dan potongan tetap (PPh 21, BPJS Kesehatan, BPJS Ketenagakerjaan)<\/span><\/li>\n<\/ul>\n<h3><strong>2. Data variabel<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Data variabel adalah data yang dapat berubah setiap periode penggajian tergantung pada kondisi atau aktivitas karyawan. Contoh data variabel dalam sistem penggajian meliputi:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Kehadiran karyawan (jumlah hari kerja, cuti, dan ketidakhadiran)<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Lembur dan insentif tambahan<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Bonus atau komisi yang diberikan berdasarkan kinerja<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Potongan yang bersifat tidak tetap (misalnya cicilan pinjaman karyawan)<\/span><\/li>\n<\/ul>\n<h2><b>Prosedur Penggajian Karyawan<\/b><\/h2>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan.webp\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-168324\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan.webp\" alt=\"sistem penggajian karyawan\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-300x163.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-775x420.webp 775w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Prosedur-Penggajian-Karyawan-1068x580.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Prosedur penggajian karyawan dibagi menjadi tiga tahap utama, yaitu <strong>pra-penggajian<\/strong>, <strong>penggajian aktual<\/strong>, dan <strong>pasca-penggajian<\/strong>. Berikut adalah penjelasannya:<\/span><\/p>\n<h3><strong>1. Pra-penggajian<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Tahap ini <strong>mencakup penetapan kebijakan gaji, tunjangan, dan pemotongan<\/strong> sesuai aturan perusahaan. Data seperti kehadiran, lembur, dan revisi gaji dikumpulkan dari berbagai departemen untuk memastikan akurasi.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Setelah data terkumpul, dilakukan validasi untuk memverifikasi keabsahannya. Langkah ini memastikan hanya karyawan aktif yang masuk daftar penggajian.\u00a0\u00a0<\/span><\/p>\n<h3><strong>2. Penggajian aktual<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Pada tahap ini, <strong>data divalidasi dan dimasukkan ke dalam sistem<\/strong> untuk menghitung gaji kotor. Komponen seperti pajak, BPJS, dan potongan lain diperhitungkan untuk mendapatkan gaji bersih yang akan diterima karyawan.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Setelah semua data akurat, siklus penggajian atau pembayaran gaji terjadi melalui transfer bank atau metode lain sesuai kebijakan perusahaan.\u00a0<\/span><\/p>\n<h3><strong>3. Pasca-penggajian<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Tahap akhir melibatkan <strong>pembuatan laporan penggajian<\/strong> untuk keperluan internal, pajak, dan kepatuhan hukum. Laporan ini memberikan transparansi dan memudahkan audit perusahaan di kemudian hari.<span id=\"metode\"><\/span><\/span><\/p>\n<p><span style=\"font-weight: 400;\">Semua catatan penggajian disimpan secara rapi sebagai arsip resmi. Penyimpanan yang baik memastikan perusahaan memiliki data lengkap untuk evaluasi, pelacakan, atau kebutuhan hukum di masa mendatang.\u00a0\u00a0<\/span><\/p>\n<h3><strong>4. Pelaporan<\/strong><\/h3>\n<p>Tahap pelaporan penggajian merupakan bagian akhir dari prosedur payroll yang sangat penting bagi perusahaan. Setelah semua proses perhitungan gaji, potongan, dan tunjangan selesai, bagian keuangan atau HR perlu membuat laporan resmi yang merangkum seluruh aktivitas penggajian dalam periode tertentu.<\/p>\n<p>Laporan ini berfungsi sebagai bukti administrasi, alat analisis keuangan, dan dokumen audit yang harus tersimpan dengan rapi dan akurat. Tahapan-tahapan ini dapat diintegrasikan dalam satu platform yaitu <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/software-payroll-terbaik\/\">software payroll dengan laporan gaji real-time<\/a>.<\/p>\n<h2><b>Metode Penggajian Karyawan<\/b><\/h2>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-168588 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan.webp\" alt=\"metode penggajian karyawan\" width=\"1200\" height=\"650\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan.webp 1200w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-300x163.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-1024x555.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-768x416.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-775x420.webp 775w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-150x81.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-696x377.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/metode-penggajian-karyawan-1068x580.webp 1068w\" sizes=\"auto, (max-width: 1200px) 100vw, 1200px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Memilih metode penggajian yang tepat penting untuk memastikan proses penggajian berjalan efisien. Berikut adalah tiga metode penggajian karyawan yang sering perusahaan gunakan di Indonesia:<\/span><\/p>\n<h3><strong>1. Metode penggajian berbasis Excel<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Metode ini <strong>menggunakan software Excel<\/strong> untuk menghitung gaji karyawan. Data seperti jam kerja, tunjangan, dan potongan dimasukkan secara manual, lalu dihitung menggunakan formula, cocok untuk perusahaan kecil dengan jumlah karyawan terbatas.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Namun, metode ini rentan terhadap kesalahan manual seperti input data yang salah. Selain itu, seiring pertumbuhan jumlah karyawan, sistem ini menjadi kurang efisien karena membutuhkan waktu lebih lama dan lebih banyak tenaga kerja untuk pengolahan data.\u00a0\u00a0<\/span><\/p>\n<h3><strong>2. Metode gaji outsourcing<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Dalam metode ini, perusahaan <strong>menyerahkan proses penggajian kepada pihak ketiga<\/strong> yang mengelola data, perhitungan, hingga pembayaran gaji. Metode ini menghemat waktu dan sumber daya internal perusahaan.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Meskipun efisien, <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/payroll-outsourcing\/\">payroll outsourcing<\/a> dapat menimbulkan risiko seperti kurangnya kontrol atas data karyawan. Selain itu, perusahaan perlu memastikan transparansi dan keandalan mitra outsourcing agar tidak terjadi kesalahan dalam penggajian.\u00a0\u00a0<\/span><\/p>\n<h3><strong>3. Metode otomatis dengan aplikasi penggajian karyawan<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Aplikasi penggajian <strong>mengotomatisasi proses perhitungan gaji, pajak, dan tunjangan, serta pembuatan slip gaji<\/strong>. Solusi ini sangat cocok untuk perusahaan yang ingin meningkatkan efisiensi dan akurasi dalam proses penggajian karyawan.\u00a0\u00a0<\/span><\/p>\n<p>Keunggulannya meliputi integrasi mudah dengan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/apa-itu-hris-pengertian-fungsi-hrm-software\/\">sistem HRIS<\/a> dan akurasi tinggi dalam perhitungan. Untuk standarisasi data SDM lintas modul, padukan proses payroll dengan software hris agar absensi, cuti, lembur, dan komponen pajak tersinkron otomatis.<\/p>\n<p><span style=\"font-weight: 400;\">Klik banner di bawah ini untuk melihat skema harganya.<span id=\"skala\"><\/span><\/span><\/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>Regulasi dan Kepatuhan Penggajian di Indonesia<\/strong><\/h2>\n<p>Penggajian yang rapi bukan cuma soal akurasi hitung, tetapi juga soal kepatuhan. Karena itu, perusahaan perlu memastikan komponen upah, THR, pajak, dan keamanan data sudah mengikuti aturan yang berlaku supaya risiko komplain, koreksi berulang, atau audit yang bisa ditekan.<\/p>\n<p><strong>Checklist kepatuhan payroll yang paling sering relevan di perusahaan:<\/strong><\/p>\n<h3><strong>1. Komponen upah dan struktur gaji<\/strong><\/h3>\n<p>Pastikan <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/struktur-gaji\/\">struktur upah di perusahaan jelas<\/a> (mis. upah tanpa tunjangan \/ upah pokok + tunjangan tetap \/ termasuk tunjangan tidak tetap). Jika menggunakan skema upah pokok + tunjangan tetap, porsi upah pokok minimal 75% dari total.<\/p>\n<h3><strong>2. THR keagamaan<\/strong><\/h3>\n<p>THR wajib dibayarkan paling lambat 7 hari sebelum hari raya keagamaan. Ini penting dimasukkan ke timeline payroll tahunan, termasuk cut-off data dan alur approval.<\/p>\n<h3><strong>3. PPh 21 (Tarif Efektif Rata-rata\/TER)<\/strong><\/h3>\n<p>Sejak 1 Januari 2024, pemotongan PPh 21 menggunakan pendekatan tarif efektif sesuai ketentuan terbaru. Artinya, perusahaan perlu memastikan mapping komponen penghasilan, pengaturan kategori TER, dan pembaruan SOP payroll pajak sudah tepat.<\/p>\n<h3><strong>4. Keamanan data payroll (UU PDP)<\/strong><\/h3>\n<p>Data payroll termasuk data yang sensitif secara praktik (penghasilan, identitas, rekening). Karena itu, pengendali data wajib memastikan keamanan data pribadi yang diproses melalui langkah teknis dan organisatoris misalnya kontrol akses, audit log, dan kebijakan retensi data.<\/p>\n<h2><b>Skala Sistem Penggajian di Indonesia<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Sistem penggajian di Indonesia umumnya terbagi menjadi tiga skala, yaitu skala tunggal, skala ganda, dan skala gabungan. Berikut adalah penjelasan lengkapnya:<\/span><\/p>\n<h3><strong>1. Skala tunggal<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Skala tunggal menetapkan gaji <strong>berdasarkan golongan dan masa kerja<\/strong> tanpa memperhitungkan tanggung jawab atau beban kerja. Semua karyawan dengan golongan dan masa kerja yang sama menerima gaji setara.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Namun, skala ini kurang fleksibel dalam mengakomodasi perbedaan tanggung jawab dan kontribusi individu. Akibatnya, karyawan dengan beban kerja lebih besar sering merasa kurang dihargai, yang dapat memengaruhi motivasi dan produktivitas.<\/span><\/p>\n<h3><strong>2. Skala ganda<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Skala ganda mempertimbangkan <strong>faktor tambahan seperti tanggung jawab, beban kerja, dan prestasi karyawan<\/strong>. Selain golongan dan masa kerja, perusahaan menetapkan gaji berdasarkan tingkat kesulitan pekerjaan dan kontribusi individu.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Metode ini membutuhkan evaluasi karyawan yang mendalam untuk menentukan besaran gaji. Walaupun lebih kompleks, skala ini meningkatkan kepuasan karyawan karena memberikan penghargaan yang sesuai dengan kinerja dan tanggung jawab mereka.\u00a0\u00a0<\/span><\/p>\n<h3><strong>3. Skala gabungan<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Skala gabungan adalah <strong>kombinasi dari elemen skala tunggal dan ganda<\/strong> untuk menciptakan keseimbangan. Gaji pokok ditentukan berdasarkan golongan dan masa kerja, sementara tunjangan tambahan diberikan sesuai tanggung jawab, prestasi, atau kinerja karyawan.\u00a0\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Skala ini cocok untuk perusahaan yang ingin mengadopsi pendekatan fleksibel namun tetap terstruktur.<\/span><\/p>\n<h2><strong>Payroll Risk Map Risiko Penggajian yang Paling Sering Terjadi<\/strong><\/h2>\n<p>Kesalahan payroll umumnya tidak muncul sebagai satu masalah besar sejak awal, tetapi berawal dari detail yang terlewat misalnya data yang tidak konsisten, aturan yang tidak terdokumentasi, atau alur persetujuan yang tidak jelas. Jika dibiarkan, dampaknya dapat meluas menjadi koreksi berulang, keluhan karyawan, hingga risiko kepatuhan.<\/p>\n<p>Untuk membantu perusahaan mengidentifikasi titik rawan sejak dini, berikut Payroll Risk Map yang merangkum risiko penggajian paling umum beserta dampak, penyebab, dan langkah mitigasi yang dapat diterapkan.<\/p>\n<p><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/potensi-masalah-dan-solusi-pencegahannya\/\" rel=\"attachment wp-att-186767\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-186767 size-full\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349.webp\" alt=\"Potensi masalah dan solusi pencegahannya\" width=\"1674\" height=\"1018\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349.webp 1674w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-300x182.webp 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-1024x623.webp 1024w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-768x467.webp 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-1536x934.webp 1536w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-691x420.webp 691w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-150x91.webp 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-696x423.webp 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/Potensi-masalah-dan-solusi-pencegahannya-e1769068122349-1068x649.webp 1068w\" sizes=\"auto, (max-width: 1674px) 100vw, 1674px\" \/><\/a><\/p>\n<h2><strong>Mengapa Perusahaan Perlu Menggunakan Sistem Penggajian?<\/strong><\/h2>\n<p><span id=\"mengapa\">Kesalahan kecil dalam perhitungan gaji dapat berdampak besar pada kepercayaan karyawan, kepatuhan hukum, dan stabilitas keuangan perusahaan. Oleh karena itu, penggunaan sistem penggajian otomatis dan memahami <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/tips-memilih-aplikasi-gaji-karyawan\/\">tips memilih aplikasi gaji karyawan<\/a> menjadi solusi penting bagi perusahaan untuk mengelola gaji dengan cepat, akurat, dan sesuai regulasi.<\/span><\/p>\n<p>Berikut alasan mengapa setiap perusahaan perlu mengadopsi sistem ini:<\/p>\n<h3><strong>1. Meningkatkan efisiensi waktu dan produktivitas HRD<\/strong><\/h3>\n<p>Dengan software penggajian, seluruh proses dari input data hingga slip gaji bisa dilakukan hanya dalam hitungan menit. Efisiensi ini memungkinkan tim HR fokus pada tugas strategis seperti pengembangan SDM dan peningkatan budaya kerja.<\/p>\n<h3><strong>2. Transparansi dan kepuasan karyawan<\/strong><\/h3>\n<p>Dengan fitur seperti employee self-service, karyawan dapat mengakses slip gaji, riwayat potongan, dan tunjangan secara mandiri. Transparansi ini meningkatkan kepercayaan terhadap perusahaan dan mengurangi pertanyaan atau komplain terkait gaji.<\/p>\n<h3><strong>3. Kepatuhan terhadap regulasi dan pajak<\/strong><\/h3>\n<p>Sistem penggajian modern dirancang mengikuti aturan ketenagakerjaan dan perpajakan di Indonesia, termasuk potongan BPJS, PPh 21, dan tunjangan wajib lainnya. Hal ini membantu perusahaan mematuhi hukum tanpa risiko denda atau kesalahan pelaporan pajak.<\/p>\n<h3><strong>4. Pelaporan keuangan lebih akurat<\/strong><\/h3>\n<p>Sistem penggajian karyawan menyediakan laporan otomatis seperti total gaji bulanan, pajak, dan biaya tunjangan. Data ini membantu manajemen dalam membuat keputusan keuangan yang lebih cepat dan akurat, serta mempermudah proses audit internal maupun eksternal.<\/p>\n<p><span data-sheets-root=\"1\"><style>\r\n\t#baca-juga {\r\n\t\tpadding: 16px;\r\n\t\tbackground-color: #f7eaea;\r\n\t\tborder-left: 3px solid #af2828;\r\n\t\tfont-weight: 500;\r\n\t\tmargin-bottom: 26px;\r\n\t}\r\n\t\r\n\t#baca-juga a {\r\n\t\tcolor: #af2828 !important;\r\n\t\ttransition: all 0.2s ease-in-out;\r\n\t}\r\n\t\r\n\t#baca-juga a:hover {\r\n\t\tcolor: #af282880 !important;\r\n\t}\r\n<\/style>\r\n\r\n<div id=\"baca-juga\">\r\n\t<span>Baca juga: <a href=\"https:\/\/www.hashmicro.com\/id\/blog\/software-erp-terbaik\/\">24 Aplikasi &amp; Software ERP Terbaik di Indonesia 2025 (Terupdate)<\/a><\/span>\r\n<\/div><\/span><\/p>\n<h2><b>Kesimpulan<\/b><\/h2>\n<p>Sistem penggajian yang tertata membantu perusahaan menghitung gaji dan pajak secara lebih akurat, menjaga konsistensi administrasi, serta mengurangi risiko koreksi berulang yang bisa mengganggu operasional.<\/p>\n<p>Agar prosesnya lebih rapi, perusahaan juga perlu memastikan data absensi, komponen tunjangan, potongan, dan histori perubahan tersimpan dalam satu sistem yang mudah ditelusuri bukan tersebar di banyak file atau dikerjakan manual.<\/p>\n<p>Jika Anda ingin menilai pendekatan yang paling sesuai untuk kondisi payroll di perusahaan, Anda bisa mulai dengan <a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/\">konsultasi gratis<\/a> untuk memetakan kebutuhan, risiko, dan prioritas perbaikannya.<\/p>\n<h2><strong>Pertanyaan Seputar Sistem Penggajian<\/strong><\/h2>\n<ul class=\"bottom_faq\">\n<li>\n<details>\n<summary><strong>Apa itu manajemen penggajian?<\/strong><\/summary>\n<p>Manajemen penggajian adalah proses administrasi untuk menghitung, mengelola, dan mendistribusikan gaji karyawan. Sistem ini memastikan akurasi pembayaran dengan memperhitungkan absensi, lembur, pajak, dan tunjangan sesuai peraturan perusahaan dan hukum yang berlaku.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa itu sistem penggajian hari kerja?<\/strong><\/summary>\n<p>Sistem penggajian hari kerja menghitung gaji berdasarkan jumlah hari kerja aktual karyawan. Sistem ini cocok untuk karyawan kontrak atau harian, di mana pembayaran disesuaikan dengan kehadiran dan jam kerja mereka selama periode tertentu.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Metode payroll apa saja?<\/strong><\/summary>\n<p>Metode Netto, Metode Gross, Metode Gross Up.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Apa alur kerja penggajian?<\/strong><\/summary>\n<p>Proses penggajian dimulai dengan menyusun daftar karyawan yang berhak menerima gaji dan berakhir dengan pencatatan pengeluaran. Dalam proses ini, perhitungan gaji dilakukan berdasarkan siklus penggajian tertentu, setelah menyesuaikan berbagai potongan seperti kontribusi dana pensiun, TDS, dan kupon makan.<\/p>\n<\/details>\n<\/li>\n<li>\n<details>\n<summary><strong>Sistem penggajian ada 3 apa saja?<\/strong><\/summary>\n<p>Sistem penggajian terdiri dari tiga jenis. Skala tunggal menetapkan gaji berdasarkan pangkat atau jabatan. Skala ganda mempertimbangkan faktor lain seperti masa kerja. Skala campuran menggabungkan keduanya untuk sistem yang lebih fleksibel.<\/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 manajemen penggajian?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Manajemen penggajian adalah proses administrasi untuk menghitung, mengelola, dan mendistribusikan gaji karyawan. Sistem ini memastikan akurasi pembayaran dengan memperhitungkan absensi, lembur, pajak, dan tunjangan sesuai peraturan perusahaan dan hukum yang berlaku.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Apa itu sistem penggajian hari kerja?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Sistem penggajian hari kerja menghitung gaji berdasarkan jumlah hari kerja aktual karyawan. Sistem ini cocok untuk karyawan kontrak atau harian, di mana pembayaran disesuaikan dengan kehadiran dan jam kerja mereka selama periode tertentu.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Metode payroll apa saja?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Metode Netto, Metode Gross, Metode Gross Up.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Apa alur kerja penggajian?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Proses penggajian dimulai dengan menyusun daftar karyawan yang berhak menerima gaji dan berakhir dengan pencatatan pengeluaran. Dalam proses ini, perhitungan gaji dilakukan berdasarkan siklus penggajian tertentu, setelah menyesuaikan berbagai potongan seperti kontribusi dana pensiun, TDS, dan kupon makan.\"\n    }\n  },{\n    \"@type\": \"Question\",\n    \"name\": \"Sistem penggajian ada 3 apa saja?\",\n    \"acceptedAnswer\": {\n      \"@type\": \"Answer\",\n      \"text\": \"Sistem penggajian terdiri dari tiga jenis. Skala tunggal menetapkan gaji berdasarkan pangkat atau jabatan. Skala ganda mempertimbangkan faktor lain seperti masa kerja. Skala campuran menggabungkan keduanya untuk sistem yang lebih fleksibel.\"\n    }\n  }]\n}\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sistem penggajian bukan sekadar membayar gaji di akhir bulan. Di baliknya ada proses menghitung komponen gaji dari absensi, tunjangan, hingga potongan, lalu memastikan semuanya sesuai kebijakan perusahaan dan tercatat rapi. Sayangnya, banyak perusahaan masih tersendat di tahap yang terlihat sepele ini seperti pembayaran telat, data tidak sinkron, atau perhitungan yang meleset. Dampaknya bisa cepat terasa [&hellip;]<\/p>\n","protected":false},"author":218,"featured_media":168417,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[6],"tags":[],"class_list":{"0":"post-151470","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-hrm"},"acf":{"post_reviewer":""},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.1 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Memahami Sistem Penggajian Karyawan dan Prosedurnya<\/title>\n<meta name=\"description\" content=\"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.\" \/>\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\/sistem-penggajian\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami\" \/>\n<meta property=\"og:description\" content=\"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/\" \/>\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-12-10T07:55:32+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-02-26T05:05:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"696\" \/>\n\t<meta property=\"og:image:height\" content=\"385\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Reno Wicaksana\" \/>\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=\"Reno Wicaksana\" \/>\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\":\"Article\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/\"},\"author\":{\"name\":\"Reno Wicaksana\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/person\\\/0d3340f667908102d8894da18f80732e\"},\"headline\":\"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami\",\"datePublished\":\"2024-12-10T07:55:32+00:00\",\"dateModified\":\"2026-02-26T05:05:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/\"},\"wordCount\":1752,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/sistem-penggajian-hashmicro.webp\",\"articleSection\":[\"HRM\"],\"inLanguage\":\"id\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/\",\"name\":\"Memahami Sistem Penggajian Karyawan dan Prosedurnya\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/sistem-penggajian-hashmicro.webp\",\"datePublished\":\"2024-12-10T07:55:32+00:00\",\"dateModified\":\"2026-02-26T05:05:45+00:00\",\"description\":\"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/sistem-penggajian-hashmicro.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/12\\\/sistem-penggajian-hashmicro.webp\",\"width\":696,\"height\":385,\"caption\":\"sistem-penggajian-hashmicro\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/sistem-penggajian\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami\"}]},{\"@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\\\/0d3340f667908102d8894da18f80732e\",\"name\":\"Reno Wicaksana\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Reno-Wicaksana-96x96.webp\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Reno-Wicaksana-96x96.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Reno-Wicaksana-96x96.webp\",\"caption\":\"Reno Wicaksana\"},\"description\":\"Reno adalah HRM Specialist dan senior content writer dengan pengalaman lebih dari 5 tahun di industri teknologi dan manajemen sumber daya manusia. Secara konsisten mengangkat topik artikel seputar performance management, rekrutmen dan pengembangan SDM, manajemen talenta, dan sistem HRIS untuk pengelolaan karyawan.\",\"sameAs\":[\"https:\\\/\\\/www.linkedin.com\\\/in\\\/william-w-88353a262\\\/\"],\"gender\":\"Laki-laki\",\"knowsAbout\":[\"HRM\",\"HRIS\"],\"knowsLanguage\":[\"Inggris\",\"Indonesia\"],\"jobTitle\":\"Senior Content Writer on HRIS\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/author\\\/reno-wicaksana\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Memahami Sistem Penggajian Karyawan dan Prosedurnya","description":"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.","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\/sistem-penggajian\/","og_locale":"id_ID","og_type":"article","og_title":"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami","og_description":"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2024-12-10T07:55:32+00:00","article_modified_time":"2026-02-26T05:05:45+00:00","og_image":[{"width":696,"height":385,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp","type":"image\/webp"}],"author":"Reno Wicaksana","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Reno Wicaksana","Estimasi waktu membaca":"11 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/"},"author":{"name":"Reno Wicaksana","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/0d3340f667908102d8894da18f80732e"},"headline":"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami","datePublished":"2024-12-10T07:55:32+00:00","dateModified":"2026-02-26T05:05:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/"},"wordCount":1752,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp","articleSection":["HRM"],"inLanguage":"id"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/","name":"Memahami Sistem Penggajian Karyawan dan Prosedurnya","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp","datePublished":"2024-12-10T07:55:32+00:00","dateModified":"2026-02-26T05:05:45+00:00","description":"Sistem penggajian karyawan kini lebih efisien dengan software modern. Pelajari definisi sistem penggajian secara lengkap di sini.","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/12\/sistem-penggajian-hashmicro.webp","width":696,"height":385,"caption":"sistem-penggajian-hashmicro"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/sistem-penggajian\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Sistem Penggajian Karyawan: Pengertian dan Prosedur yang Harus Dipahami"}]},{"@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\/0d3340f667908102d8894da18f80732e","name":"Reno Wicaksana","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Reno-Wicaksana-96x96.webp","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Reno-Wicaksana-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Reno-Wicaksana-96x96.webp","caption":"Reno Wicaksana"},"description":"Reno adalah HRM Specialist dan senior content writer dengan pengalaman lebih dari 5 tahun di industri teknologi dan manajemen sumber daya manusia. Secara konsisten mengangkat topik artikel seputar performance management, rekrutmen dan pengembangan SDM, manajemen talenta, dan sistem HRIS untuk pengelolaan karyawan.","sameAs":["https:\/\/www.linkedin.com\/in\/william-w-88353a262\/"],"gender":"Laki-laki","knowsAbout":["HRM","HRIS"],"knowsLanguage":["Inggris","Indonesia"],"jobTitle":"Senior Content Writer on HRIS","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/reno-wicaksana\/"}]}},"focus_keyword":"sistem penggajian","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/151470","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\/218"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=151470"}],"version-history":[{"count":30,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/151470\/revisions"}],"predecessor-version":[{"id":189941,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/151470\/revisions\/189941"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/168417"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=151470"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=151470"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=151470"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}