{"id":75589,"date":"2024-03-10T15:57:26","date_gmt":"2024-03-10T08:57:26","guid":{"rendered":"https:\/\/www.hashmicro.com\/id\/blog\/?p=75589"},"modified":"2026-01-26T16:15:56","modified_gmt":"2026-01-26T09:15:56","slug":"contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang","status":"publish","type":"post","link":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/","title":{"rendered":"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum"},"content":{"rendered":"<p>Kontrak kerja karyawan merupakan dokumen penting yang menjadi dasar hubungan kerja antara perusahaan dan pekerja. Di dalamnya tercantum kesepakatan mengenai peran, tanggung jawab, hak, hingga kompensasi yang diterima selama masa kerja. Karena sifatnya formal dan mengikat, kontrak kerja bukan sekadar administrasi, melainkan acuan utama dalam menjalankan hubungan profesional.<\/p>\n<p>Kontrak yang disusun dengan baik membantu perusahaan dan karyawan memiliki pemahaman yang sama sejak awal. Pengaturan terkait jam kerja, upah, cuti, hingga kewajiban pekerjaan menjadi lebih jelas dan terukur, sehingga meminimalkan kesalahpahaman dalam praktik sehari-hari. Dari sisi bisnis, kejelasan ini juga mendukung stabilitas operasional dan kepatuhan internal.<\/p>\n<p>Dalam konteks Indonesia, kontrak kerja perlu selaras dengan <a href=\"https:\/\/peraturan.bpk.go.id\/Details\/43013\">ketentuan ketenagakerjaan yang berlaku<\/a>. Jika ada klausul yang tidak sesuai aturan, ketentuan tersebut berpotensi dianggap tidak sah dan menimbulkan konsekuensi hukum bagi perusahaan. Karena itu, memahami prinsip dasar kontrak kerja yang sesuai regulasi menjadi bagian penting dalam pengelolaan SDM.<\/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><a href=\"#penting\">Kontrak kerja<\/a> berperan sebagai dasar hubungan profesional yang menjelaskan hak, kewajiban, dan tanggung jawab antara perusahaan dan karyawan secara tertulis.<\/li>\n<li>Agar memiliki kekuatan hukum, perjanjian kerja perlu disusun sesuai <a href=\"#ketentuan\">ketentuan perundang-undangan ketenagakerjaan<\/a> yang berlaku di Indonesia.<\/li>\n<li>Struktur dokumen yang rapi dan klausul yang lengkap membantu meminimalkan potensi sengketa sekaligus mempermudah pengelolaan hubungan kerja dalam operasional perusahaan.<\/li>\n<\/ul>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><span data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:6657,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0,&quot;14&quot;:{&quot;1&quot;:2,&quot;2&quot;:0},&quot;15&quot;:&quot;Arial, sans-serif&quot;}\">\r\n\r\n<script>\r\n    \/\/ check which image to use based on screensize\r\n    document.addEventListener(\"DOMContentLoaded\", function() {\r\n        function updateImageSource() {\r\n            var images = document.querySelectorAll('.responsive-image-banner');\r\n            var screenWidth = window.innerWidth;\r\n\r\n            images.forEach(function(img) {\r\n                var mobileSrc = img.getAttribute('data-mobile-src');\r\n                var desktopSrc = img.getAttribute('data-desktop-src');\r\n\r\n                if (screenWidth < 576 && mobileSrc) {\r\n                    img.setAttribute('src', mobileSrc);\r\n                } else {\r\n                    img.setAttribute('src', desktopSrc);\r\n                }\r\n            });\r\n        }\r\n\r\n        \/\/ Initial check\r\n        updateImageSource();\r\n\r\n        \/\/ Update on resize\r\n        window.addEventListener('resize', updateImageSource);\r\n    });\r\n<\/script> <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 id=\"1\"><span id=\"penting\"><strong>Peran Perjanjian Kerja dalam Hubungan Perusahaan dan Karyawan<\/strong><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Kontrak kerja karyawan yang baik memberikan kejelasan hak serta kewajiban antara karyawan dan perusahaan. Dengan itu, hubungan antara perusahaan dan pekerja dapat terjaga dengan baik untuk menciptakan lingkungan kerja yang harmonis dan produktif dengan kedua belah pihak yang saling menghargai dan bekerja sama untuk mencapai tujuan yang sama.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Hubungan yang harmonis pun akan membuat pekerja akan merasa lebih termotivasi dan memiliki rasa tanggung jawab yang lebih besar terhadap pekerjaan mereka. Hal ini dapat meningkatkan produktivitas dan kinerja perusahaan secara keseluruhan.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Selain itu, kontrak kerja yang baik dapat memberikan perlindungan hukum bagi kedua belah pihak apabila terjadi perselisihan atau pelanggaran dalam pelaksanaan kontrak kerja. Surat kontrak kerja karyawan juga sebagai bukti dalam proses penyelesaian sengketa atau perselisihan di pengadilan.<\/span><\/p>\n<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\/contoh-database-karyawan\/\">Contoh Database Karyawan (Format Excel)<\/a><\/span>\r\n<\/div>\n<h2 id=\"2\"><span id=\"ketentuan\"><strong>Ketentuan Legal yang Menentukan Keabsahan Kontrak Kerja<\/strong><\/span><\/h2>\n<p><span style=\"font-weight: 400;\">Pasal 1601a KUHP sudah menuliskan kriteria dan syarat-syarat yang harus terpenuhi di dalam kontrak kerja, yaitu:<\/span><\/p>\n<h3><strong>1. Terdapat pekerja dan pemberi kerja<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Pemberi kerja adalah individu, pengusaha, badan hukum, atau organisasi lain yang mempekerjakan pekerja dan memberikan bayaran atau bentuk lainnya, misalnya uang kompensasi PKWT sebagai imbalan atas layanan yang pekerja berikan. Di dalam kontrak kerja, posisi keduanya tidaklah sama. Pemberi kerja memiliki posisi yang lebih tinggi dari pekerja. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">Karena pemberi kerja memiliki otoritas untuk memberikan perintah kepada pekerja. Oleh karena itu perlunya kontrak kerja yang sesuai agar tidak melanggar hak dan kewajiban dari pemberi kerja dan pekerja.<\/span><\/p>\n<h3><strong>2. Pelaksanaan kerja<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Kontrak kerja karyawan menjabarkan pekerjaan yang akan pekerja lakukan dan sesuai dengan ketetapan perjanjian kerja sebelumnya.<\/span><\/p>\n<h3><strong>3. Waktu tertentu<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Pemberi kerja menetapkan kurun waktu pekerja melaksanakan pekerjaannya. Waktu kerja harus sudah sesuai dengan perundang-undangan dan memperhatikan keselamatan dan kesehatan karyawan.<\/span><\/p>\n<h3><strong>4. Upah<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Di dalam kontrak kerja karyawan, pemberi kerja memaparkan besaran upah sebagai imbalan bagi pekerja dalam bentuk uang berdasarkan persetujuan atau peraturan perundang-undangan. Pemberi kerja memberikan tunjangan pekerja maupun keluarganya atas dasar Peraturan Pemerintah Pasal 1 Huruf a No. 8 Tahun 1981 tentang Perlindungan Upah.<\/span><\/p>\n<h3><strong>5. Kesepakatan<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Maksud dari kesepakatan adalah perasaan sukarela semua pihak yang terlibat dalam membuat perjanjian. Kesepakatan atas pembuatan kontrak tidak atas dasar paksaan, penipuan, ataupun kekhilafan. Biasanya, pembicaraan tentang kesepakatan akan dilaksanakan setelah proses wawancara.<\/span><\/p>\n<h3><strong>6. Kewenangan<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Pihak yang memiliki kewenangan membuat kontrak kerja adalah orang-orang yang dinyatakan sebagai subjek hukum. Pada dasarnya yang tidak memiliki kewenangan dalam membuat kontrak kerja adalah anak-anak, orang dewasa yang berada dalam pengawasan (<\/span><i><span style=\"font-weight: 400;\">curatele<\/span><\/i><span style=\"font-weight: 400;\">), dan ODGJ. <\/span><\/p>\n<h3><strong>7. Objek yang diatur harus jelas<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Dalam konteks kontrak kerja karyawan, objek merujuk pada tugas, tanggung jawab, dan kewajiban yang harus dilakukan oleh pekerja. Objek harus jelas karena hal ini akan meminimalkan terjadinya salah pengertian dan sengketa di kemudian hari.<\/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 id=\"3\"><strong>Struktur dan Unsur Penting dalam Dokumen Kontrak Kerja<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Penulisan kontrak kerja karyawan harus dapat menyertakan format-format agar sesuai dengan perundang-undangan. Adapun format tersebut antara lain:<\/span><\/p>\n<h3><strong>1. Identitas Para Pihak<\/strong><\/h3>\n<p><span style=\"font-weight: 400;\">Identitas lengkap dari perusahaan dan karyawan, termasuk nama, alamat, nomor telepon, dan email. Sertakan juga nomor identitas, seperti nomor NPWP dan nomor KTP jika diperlukan.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>2. Deskripsi Pekerjaan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Deskripsi pekerjaan yang akan karyawan lakukan. Deskripsi pekerjaan ini harus mencakup tugas-tugas yang akan dilakukan, tanggung jawab, dan kewajiban karyawan.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>3. Gaji dan Tunjangan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Jumlah gaji yang akan karyawan terima dan tunjangan lain yang mungkin akan perusahaan berikan, seperti tunjangan kesehatan atau tunjangan transportasi. Sertakan juga keterangan tentang cara pembayaran gaji dan frekuensi pembayaran.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>4. Masa Kerja<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Durasi kontrak kerja, mulai dari tanggal awal kontrak hingga tanggal akhir kontrak. Jika kontrak kerja bersifat tetap, maka dapat disebutkan bahwa kontrak kerja ini bersifat tidak terbatas.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>5. Kewajiban Karyawan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Kewajiban-kewajiban yang harus karyawan lakukan selama masa kerja, termasuk kewajiban menjaga kerahasiaan perusahaan dan menjalankan tugas dengan baik.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>6. Kewajiban Perusahaan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">K<\/span><span style=\"font-weight: 400;\">ewajiban-kewajiban yang harus perusahaan penuhi, seperti memberikan gaji dan tunjangan sesuai dengan kesepakatan, memberikan kesempatan untuk pengembangan karir, dan menjaga lingkungan kerja yang aman dan sehat.<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>7. Penyelesaian Sengketa<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Cara penyelesaian sengketa jika terjadi perbedaan pendapat antara perusahaan dan karyawan, dapat melalui mediasi atau arbitrase.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>8. Persetujuan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Pada kolom ini pastikan bahwa perusahaan dan karyawan telah membaca dan memahami isi kontrak kerja dan setuju untuk mematuhinya.<br \/>\n<\/span><\/p>\n<h3><span style=\"font-weight: 400;\"><strong>9. Tanda Tangan<\/strong><br \/>\n<\/span><\/h3>\n<p><span style=\"font-weight: 400;\">Setelah mencapai persetujuan, perusahaan dan karyawan kemudian menandatangani kontrak kerja. Hal ini dilakukan sebagai bukti bahwa kedua pihak telah menyetujui kontrak kerja.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Itulah beberapa bagian penting yang harus ada dalam format dasar kontrak kerja karyawan. Namun, perlu Anda ingat bahwa isi kontrak kerja dapat berbeda-beda tergantung pada jenis pekerjaan, sektor industri, dan peraturan perundang-undangan yang berlaku.<\/span><\/p>\n<h2 id=\"4\"><strong>Ilustrasi Penerapan Kontrak Kerja di Lingkungan Perusahaan<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Adapun berikut contoh kontrak kerja yang dapat Anda jadikan sebagai referensi:<\/span><\/p>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-75580 size-full aligncenter\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII.jpg\" alt=\"Contoh Kontrak Kerja Karyawan\" width=\"826\" height=\"1169\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII.jpg 826w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-212x300.jpg 212w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-724x1024.jpg 724w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-768x1087.jpg 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-150x212.jpg 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-300x425.jpg 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-696x985.jpg 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/Contoh-surat-perjanjian-kerja-kontrak-FH-UII-297x420.jpg 297w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-75583 size-full aligncenter\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT.jpg\" alt=\"Contoh PKWT \" width=\"826\" height=\"1169\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT.jpg 826w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-212x300.jpg 212w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-724x1024.jpg 724w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-768x1087.jpg 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-150x212.jpg 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-300x425.jpg 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-696x985.jpg 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/2-PKWT-297x420.jpg 297w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-75582 size-full aligncenter\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3.jpg\" alt=\"PKWT Draft \" width=\"826\" height=\"1169\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3.jpg 826w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-212x300.jpg 212w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-724x1024.jpg 724w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-768x1087.jpg 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-150x212.jpg 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-300x425.jpg 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-696x985.jpg 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-3-297x420.jpg 297w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><img decoding=\"async\" loading=\"lazy\" class=\"wp-image-75581 size-full aligncenter\" src=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4.jpg\" alt=\"PKWT Contoh\" width=\"826\" height=\"1169\" srcset=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4.jpg 826w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-212x300.jpg 212w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-724x1024.jpg 724w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-768x1087.jpg 768w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-150x212.jpg 150w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-300x425.jpg 300w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-696x985.jpg 696w, https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2023\/03\/PKWT-4-297x420.jpg 297w\" sizes=\"auto, (max-width: 826px) 100vw, 826px\" \/><\/p>\n<h2><strong>Studi Kasus: Penerapan Kontrak Kerja Karyawan yang Sesuai Ketentuan Hukum<\/strong><\/h2>\n<p>Sebuah perusahaan manufaktur komponen otomotif di kawasan industri Bekasi merekrut tenaga kerja untuk memenuhi peningkatan permintaan produksi. Dalam proses rekrutmen, perusahaan membedakan kebutuhan tenaga kerja menjadi dua kategori: karyawan tetap untuk posisi inti produksi dan karyawan kontrak untuk proyek peningkatan kapasitas selama satu tahun.<\/p>\n<p>Untuk karyawan tetap, perusahaan menggunakan Perjanjian Kerja Waktu Tidak Tertentu (PKWTT) yang memuat ketentuan jabatan, upah, jam kerja, hak cuti, serta kewajiban masing-masing pihak. Kontrak ini disusun secara tertulis dan merujuk pada ketentuan Undang-Undang Ketenagakerjaan serta peraturan pelaksananya, sehingga memberikan kepastian status kerja bagi karyawan sejak awal.<\/p>\n<p>Sementara itu, untuk tenaga kerja proyek, perusahaan menerapkan Perjanjian Kerja Waktu Tertentu (PKWT) dengan masa kerja 12 bulan. Kontrak ini secara jelas mencantumkan jangka waktu kerja, jenis pekerjaan yang bersifat sementara, serta hak dan kewajiban karyawan selama masa kontrak. Perusahaan juga memastikan PKWT didaftarkan sesuai ketentuan yang berlaku agar tidak menimbulkan sengketa status kerja di kemudian hari.<\/p>\n<p>Dalam praktiknya, kejelasan bentuk kontrak kerja ini membantu perusahaan mengelola hubungan kerja secara lebih tertib. Karyawan memahami status dan haknya, sementara perusahaan memiliki dasar hukum yang kuat dalam pengelolaan SDM. Studi kasus ini menunjukkan bahwa pemilihan bentuk kontrak kerja yang tepat\u2014sesuai jenis pekerjaan dan regulasi\u2014berperan penting dalam menjaga kepatuhan hukum dan stabilitas operasional perusahaan.<\/p>\n<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\/jenis-tunjangan-karyawan\/\">Pentingnya Memahami Jenis Tunjangan Karyawan untuk Meningkatkan Kesejahteraan<\/a><\/span>\r\n<\/div>\n<h2 id=\"5\"><b>Kesimpulan<\/b><\/h2>\n<p><span style=\"font-weight: 400;\">Kontrak kerja karyawan adalah tanda persetujuan antara pemberi kerja dan pekerja. Bagi keduanya, kontrak kerja merupakan hal yang sangat krusial dan perlu untuk disusun secara cermat dan teliti agar tidak merugikan salah satu pihak. Untuk menghindari kesalahan dalam penyusunan kontrak kerja, pihak pemberi kerja dapat menggunakan sistem <\/span><i><span style=\"font-weight: 400;\">software<\/span><\/i><span style=\"font-weight: 400;\"> HRM.<\/span><\/p>\n<p><span style=\"font-weight: 400;\"><a href=\"https:\/\/www.hashmicro.com\/id\/blog\/hr-software-terbaik-di-indonesia\/\">Sistem HRIS kontrak<\/a> membantu Anda untuk mengelola informasi karyawan hingga mengelola kontrak kerja secara <\/span><i><span style=\"font-weight: 400;\">real-time<\/span><\/i><span style=\"font-weight: 400;\">. Anda juga akan mendapatkan notifikasi otomatis apabila masa kontrak kerja akan berakhir. Sistem ini juga memberikan fitur untuk pembaruan proses cuti dan jatah cuti, serta mengatur ketentuan terbaru. Anda dapat mencobanya secara gratis hanya <\/span><a href=\"https:\/\/www.hashmicro.com\/id\/tour-produk-gratis\/\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">di sini.<\/span><\/a><\/p>\n<p><span data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:6657,&quot;3&quot;:{&quot;1&quot;:0},&quot;12&quot;:0,&quot;14&quot;:{&quot;1&quot;:2,&quot;2&quot;:0},&quot;15&quot;:&quot;Arial, sans-serif&quot;}\"><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Kontrak kerja karyawan merupakan dokumen penting yang menjadi dasar hubungan kerja antara perusahaan dan pekerja. Di dalamnya tercantum kesepakatan mengenai peran, tanggung jawab, hak, hingga kompensasi yang diterima selama masa kerja. Karena sifatnya formal dan mengikat, kontrak kerja bukan sekadar administrasi, melainkan acuan utama dalam menjalankan hubungan profesional. Kontrak yang disusun dengan baik membantu perusahaan [&hellip;]<\/p>\n","protected":false},"author":161,"featured_media":139407,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[4691],"tags":[],"class_list":{"0":"post-75589","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-contract"},"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>Kontrak Kerja Karyawan yang Sesuai Undang-Undang<\/title>\n<meta name=\"description\" content=\"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!\" \/>\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\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum\" \/>\n<meta property=\"og:description\" content=\"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/\" \/>\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-03-10T08:57:26+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-01-26T09:15:56+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"650\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Jonathan Kurniawan\" \/>\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=\"Jonathan Kurniawan\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 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\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/\"},\"author\":{\"name\":\"Jonathan Kurniawan\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#\\\/schema\\\/person\\\/029ac06d135cf8424dfa4f3cb3fef6c5\"},\"headline\":\"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum\",\"datePublished\":\"2024-03-10T08:57:26+00:00\",\"dateModified\":\"2026-01-26T09:15:56+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/\"},\"wordCount\":1294,\"publisher\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png\",\"articleSection\":[\"Contract\"],\"inLanguage\":\"id\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/\",\"name\":\"Kontrak Kerja Karyawan yang Sesuai Undang-Undang\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png\",\"datePublished\":\"2024-03-10T08:57:26+00:00\",\"dateModified\":\"2026-01-26T09:15:56+00:00\",\"description\":\"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/03\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png\",\"width\":1200,\"height\":650,\"caption\":\"contoh kontrak kerja karyawan yang sesuai undang-undang\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum\"}]},{\"@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\\\/029ac06d135cf8424dfa4f3cb3fef6c5\",\"name\":\"Jonathan Kurniawan\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jonathan-Kurniawan-3-96x96.webp\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jonathan-Kurniawan-3-96x96.webp\",\"contentUrl\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/Jonathan-Kurniawan-3-96x96.webp\",\"caption\":\"Jonathan Kurniawan\"},\"description\":\"Jonathan adalah seorang praktisi dalam bidang procurement, TMS, dan supply chain dengan pengalaman 5 tahun. Spesialis dalam mengulas topik seputar manajemen vendor, budget control procurement, otomatisasi proses pengadaan barang, dan analisis procurement. Tulisannya secara konsisten mendukung pengambilan keputusan bisnis yang lebih strategis.\",\"sameAs\":[\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/\"],\"gender\":\"laki-laki\",\"knowsAbout\":[\"procurement\",\"pengadaan\",\"pembelian\"],\"knowsLanguage\":[\"Inggris\",\"Indonesia\"],\"jobTitle\":\"Senior Content Writer\",\"url\":\"https:\\\/\\\/www.hashmicro.com\\\/id\\\/blog\\\/author\\\/jonathankurniawan\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Kontrak Kerja Karyawan yang Sesuai Undang-Undang","description":"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!","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\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/","og_locale":"id_ID","og_type":"article","og_title":"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum","og_description":"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!","og_url":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/","og_site_name":"HashMicro Indonesia","article_publisher":"https:\/\/www.facebook.com\/hashmicro","article_published_time":"2024-03-10T08:57:26+00:00","article_modified_time":"2026-01-26T09:15:56+00:00","og_image":[{"width":1200,"height":650,"url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png","type":"image\/png"}],"author":"Jonathan Kurniawan","twitter_card":"summary_large_image","twitter_creator":"@hashmicro","twitter_site":"@hashmicro","twitter_misc":{"Ditulis oleh":"Jonathan Kurniawan","Estimasi waktu membaca":"9 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#article","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/"},"author":{"name":"Jonathan Kurniawan","@id":"https:\/\/www.hashmicro.com\/id\/blog\/#\/schema\/person\/029ac06d135cf8424dfa4f3cb3fef6c5"},"headline":"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum","datePublished":"2024-03-10T08:57:26+00:00","dateModified":"2026-01-26T09:15:56+00:00","mainEntityOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/"},"wordCount":1294,"publisher":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#organization"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png","articleSection":["Contract"],"inLanguage":"id"},{"@type":"WebPage","@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/","url":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/","name":"Kontrak Kerja Karyawan yang Sesuai Undang-Undang","isPartOf":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#primaryimage"},"image":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#primaryimage"},"thumbnailUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png","datePublished":"2024-03-10T08:57:26+00:00","dateModified":"2026-01-26T09:15:56+00:00","description":"Kontrak kerja karyawan yang baik adalah kontrak kerja yang sesuai dengan perundang-undangan. Simak contohnya di artikel berikut ini!","breadcrumb":{"@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/"]}]},{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#primaryimage","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2024\/03\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang.png","width":1200,"height":650,"caption":"contoh kontrak kerja karyawan yang sesuai undang-undang"},{"@type":"BreadcrumbList","@id":"https:\/\/www.hashmicro.com\/id\/blog\/contoh-kontrak-kerja-karyawan-yang-sesuai-undang-undang\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.hashmicro.com\/id\/blog\/"},{"@type":"ListItem","position":2,"name":"Mengenal Bentuk Kontrak Kerja Karyawan yang Berlaku Secara Hukum"}]},{"@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\/029ac06d135cf8424dfa4f3cb3fef6c5","name":"Jonathan Kurniawan","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jonathan-Kurniawan-3-96x96.webp","url":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jonathan-Kurniawan-3-96x96.webp","contentUrl":"https:\/\/www.hashmicro.com\/id\/blog\/wp-content\/uploads\/2025\/10\/Jonathan-Kurniawan-3-96x96.webp","caption":"Jonathan Kurniawan"},"description":"Jonathan adalah seorang praktisi dalam bidang procurement, TMS, dan supply chain dengan pengalaman 5 tahun. Spesialis dalam mengulas topik seputar manajemen vendor, budget control procurement, otomatisasi proses pengadaan barang, dan analisis procurement. Tulisannya secara konsisten mendukung pengambilan keputusan bisnis yang lebih strategis.","sameAs":["https:\/\/www.hashmicro.com\/id\/"],"gender":"laki-laki","knowsAbout":["procurement","pengadaan","pembelian"],"knowsLanguage":["Inggris","Indonesia"],"jobTitle":"Senior Content Writer","url":"https:\/\/www.hashmicro.com\/id\/blog\/author\/jonathankurniawan\/"}]}},"focus_keyword":"Kontrak Kerja Karyawan","order_j":"","_links":{"self":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/75589","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\/161"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/comments?post=75589"}],"version-history":[{"count":7,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/75589\/revisions"}],"predecessor-version":[{"id":187435,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/posts\/75589\/revisions\/187435"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media\/139407"}],"wp:attachment":[{"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/media?parent=75589"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/categories?post=75589"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hashmicro.com\/id\/blog\/wp-json\/wp\/v2\/tags?post=75589"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}