
Cara mencatat jam kerja karyawan tanpa mengirim satu byte pun ke cloud
- FaceClock Team
- Guides
- 15 April 2026
Daftar isi
Ada asumsi diam-diam di balik hampir setiap produk absensi di pasaran: bahwa absen seorang karyawan adalah data yang harus diunggah ke suatu tempat. Biasanya ke cloud penyedia. Kadang disalin ke tiga wilayah “untuk cadangan”. Sering disimpan tanpa batas waktu dengan klausul samar seperti “selama diperlukan untuk layanan”.
Asumsi itu tidak selalu salah. Tapi bagi banyak usaha kecil (klinik gigi, percetakan, teater komunitas, pembuat bir rumahan), paling bagus berlebihan dan paling buruk benar-benar bermasalah. Jadi ini panduan untuk alternatifnya: cara menjalankan sistem absensi yang tidak mengirim apa pun keluar dari perangkat.
Pertama bagian yang agak membosankan soal hukum, lalu pengaturan praktis, lalu jebakannya.
Kenapa perlu menghindari cloud?
Tiga alasan yang sering saya dengar, kurang lebih dengan urutan ini.
Kepatuhan. Kalau Anda mengolah data biometrik (dan wajah adalah data biometrik menurut hampir semua aturan modern), mengirimkannya ke pihak ketiga membuat daftar kewajiban Anda panjang. Cara termudah menghindarinya adalah tidak membiarkan data keluar dari perangkat. Menurut UU PDP, Pasal 9 GDPR, BIPA, atau CCPA, “kami tidak pernah mengirimkannya” adalah jawaban yang sah dan mudah dipahami. Persetujuan karyawan tetap diperlukan, tapi soal perjanjian dengan prosesor dan transfer ke luar negeri tidak muncul sama sekali.
Biaya. Absensi SaaS biasanya 3 sampai 8 dolar per pengguna per bulan. Untuk tim 15 orang, itu 540 sampai 1.440 dolar setahun, terus-menerus. Hitungannya berbalik di sekitar 30 orang, tapi bagi kebanyakan usaha kecil pertanyaannya: “Kenapa saya membayar biaya bulanan hanya untuk mencatat jam kedatangan tim saya?”
Kepercayaan. Karyawan tidak selalu tahu harus bersikap bagaimana saat diminta mengunggah wajahnya ke server penyedia. Sebagian pernah dengar soal gugatan di Illinois. Sebagian lagi sekadar tidak suka. Hilangkan unggahannya, maka percakapan itu ikut hilang.
Anda tidak butuh ketiganya. Biasanya satu sudah cukup.
Komponen sistem tanpa cloud
Sistem absensi offline yang lengkap punya lima bagian:
- Perangkat absen: tablet, ponsel, atau kios
- Verifikasi identitas: wajah, sidik jari, PIN, RFID, atau sekadar daftar nama
- Penyimpanan lokal: tempat catatan benar-benar disimpan
- Laporan / ekspor: biasanya CSV
- Rencana cadangan
Dari kelimanya, nomor 5 yang paling sering dilewatkan. Kita kembali ke situ nanti.
Perangkat absen
Kebanyakan cukup tablet Android yang dipasang dekat pintu masuk. Kelas murah (Samsung Tab A8 atau Lenovo Tab M9 rekondisi) sekitar 100 sampai 150 dolar dan awet bertahun-tahun. Colokkan ke listrik dan lupakan soal baterai.
Beberapa tips praktis:
- Pasang setinggi dada sampai bahu, bukan setinggi mata. Orang lebih nyaman sedikit menunduk.
- Jangan sampai layar kena sinar matahari langsung di jam berapa pun.
- Pakai dudukan yang kokoh. Yang ringkih melentur saat layar ditekan.
Verifikasi identitas
Di sini Anda harus memutuskan: bagaimana orang membuktikan dirinya di mesin absensi?
Kode PIN. Paling sederhana. Setiap orang punya kode 4 digit. Murah. Bisa dibagikan, dan justru itu masalahnya: titip absen.
Sidik jari. Andal kalau berfungsi. Merepotkan saat dingin, pakai sarung tangan, ada luka di tangan, atau di dapur komersial.
Kartu atau gantungan kunci RFID. Bagus kalau tim sudah biasa membawa kartu identitas. Kelemahannya kartu hilang.
Pengenalan wajah. Tanpa tangan, cepat, dan tidak bisa dipinjamkan, tapi ini data biometrik dengan seluruh bobot regulasinya. Kalau dibuat dengan benar (hanya di perangkat), sebagian besar bobot itu terhindari tanpa mengorbankan kepraktisan.
Saya tidak netral, tapi pengenalan wajah lokal adalah pilihan bawaan terbaik untuk kebanyakan tim. Kerumitan hukum yang dibayangkan orang biasanya lenyap begitu Anda bisa menunjukkan bahwa tidak ada data biometrik yang keluar dari perangkat.
Penyimpanan lokal
Di ponsel atau tablet, ini cuma file SQLite di direktori privat aplikasi, ditambah folder gambar untuk foto absen. Seluruh database tim 15 orang setelah enam bulan mungkin 30 sampai 60 MB. Bukan masalah skala.
Yang perlu dicek: apakah aplikasi menulis absen ke penyimpanan saat itu juga, atau menahannya di memori lalu menulis belakangan? Menahan di memori itulah yang membuat Anda celaka saat perangkat hang atau seseorang mencabut kabelnya. Aplikasi yang dibuat dengan baik menulis ke penyimpanan sebelum menampilkan “absen berhasil”.
Laporan
Untuk 95% usaha kecil, yang dibutuhkan adalah CSV. Setiap baris adalah satu shift, dengan kolom nama, jam masuk, jam pulang, durasi, dan catatan opsional. Taruh CSV di folder bersama. Bagian keuangan membukanya Senin pagi. Beres.
Apa pun yang lebih rumit dari CSV biasanya berarti integrasi dengan sistem penggajian, dan itu proyek teknis sungguhan; pendekatan di perangkat kemungkinan besar tidak cocok. Kita bahas lagi nanti.
Cadangan
Ini bagian yang selalu dilewatkan. Aturannya: kalau catatan Anda hanya ada di tablet yang menempel di dinding, catatan itu sama saja tidak ada. Tablet bisa retak. Petugas kebersihan mencabut kabelnya. Kadang tablet mati begitu saja di Selasa pagi.
Tiga cara pencadangan yang masuk akal:
- Ekspor CSV mingguan ke folder bersama. Paling sederhana. Seseorang mengekspor setiap Jumat dan membagikan file ke folder yang bisa dilihat bagian keuangan. Kalau tablet mati, paling banyak Anda kehilangan seminggu.
- Ekspor harian untuk tempat yang lebih ramai. Dua ketukan yang sama, saat tutup. Layak dilakukan di atas 20 orang, ketika kehilangan seminggu berarti rekonstruksi yang menyakitkan.
- PDF bulanan sebagai tambahan. Ekspor PDF memuat foto masuk dan pulang, jadi bisa jadi bukti kalau ada shift yang dipersoalkan setelah jendela 90 hari menghapusnya dari perangkat.
Di FaceClock semua ini sengaja manual: aplikasinya tidak punya izin jaringan, jadi tidak bisa mengirim file ke mana pun sendiri. Ekspor lewat menu berbagi Android, dan Anda yang memilih tujuannya. CSV berisi nama, jam, dan durasi: tanpa wajah, tanpa vektor.
Catatan: mencadangkan data shift yang sudah dirangkum (CSV) tidak masalah. Mencadangkan vektor biometrik umumnya tidak disarankan, karena itu meniadakan gunanya menyimpan secara lokal.
Contoh nyata, singkat saja
Ini pengaturan di klinik gigi 9 orang yang saya bantu pasang musim semi lalu:
- Samsung Tab A8 di lorong masuk karyawan
- FaceClock terpasang; tidak ada yang didaftarkan lebih dulu, setiap orang mendaftar sendiri saat absen pertama di Senin pagi, dengan nama dan satu foto
- Shift maksimum 12 jam; klinik hampir tidak pernah buka selama itu, tapi ini menangkap kasus orang yang absen masuk untuk pasien darurat di hari Sabtu lalu lupa absen pulang
- Pembersihan otomatis shift lama setelah 90 hari (bawaan)
- Ekspor CSV setiap Jumat dari layar shift, dibagikan langsung ke folder Google Drive yang dilihat bagian keuangan. Manual, dua ketukan, dan masuk daftar tugas Jumat manajer klinik
- Kertas cetak di samping tablet berisi langkah darurat kalau ada yang aneh: nama, jam, dan paraf tulisan tangan. Belum pernah dipakai dalam 11 bulan.
Total biaya: sekitar 130 dolar untuk tablet, satu Minggu sore untuk pemasangan, dan nol biaya bulanan.
Menghitung lembur kalau hanya punya CSV
Di sini orang kadang panik: “Bagaimana menghitung lembur tanpa panel admin?” Jawabannya agak membosankan: dihitung di spreadsheet, sama seperti sepuluh tahun lalu. Rumus umumnya:
weekly_hours = SUMIF(employee_id, [name], duration_hours)
overtime_hours = MAX(0, weekly_hours - 40)
Di Indonesia, waktu kerja normal adalah 40 jam per minggu (7 jam sehari untuk 6 hari kerja, atau 8 jam sehari untuk 5 hari kerja). Menurut PP 35/2021, lembur paling lama 4 jam sehari dan 18 jam seminggu, dengan upah 1,5 kali upah sejam untuk jam pertama dan 2 kali untuk jam berikutnya pada hari kerja biasa. Aturan-aturan ini ditaruh di spreadsheet, bukan di aplikasi absensi. Tugas aplikasi adalah memberi catatan shift yang bersih. Perhitungannya urusan penggajian.
Kapan cara ini tidak lagi cukup
Saya ingin jujur soal skala.
Banyak cabang. Kalau Anda punya tiga kafe dan kantor pusat ingin melihat shift secara langsung, kios offline per cabang bukan bentuk yang tepat. Anda akan mengirim CSV lewat email sambil menyesal tidak berlangganan SaaS untuk banyak cabang. Titik baliknya sekitar tiga cabang.
Otomatisasi penggajian real-time. Kalau sistem jadwal Anda perlu tahu saat itu juga bahwa seseorang terlambat, aplikasi offline tidak bisa memberitahunya. Perlu sambungan API. Kebanyakan aplikasi offline memang sengaja tidak menyediakannya.
Lebih dari sekitar 50 orang per perangkat. Pengenalan melambat seiring bertambahnya orang yang terdaftar. 50 orang masih lancar di perangkat modern. 200 orang di tablet murah tidak.
Serah terima shift berkali-kali di operasi 24 jam. Rumah sakit, pabrik, tempat dengan tiga shift sehari. Bisa, tapi pekerjaan koreksinya (lupa absen pulang, tukar shift) jadi banyak, dan Anda akan menginginkan pantauan terpusat dari cloud.
Kalau Anda di luar batas itu, cloud kemungkinan lebih cocok. Kalau di dalamnya (seperti kebanyakan usaha kecil), cara offline menghemat uang, menghindari kerumitan data biometrik, dan menghasilkan catatan yang tidak bergantung pada server orang lain tetap menyala.
Penutup
Di era SaaS, semua data bisnis dianggap wajar tinggal di cloud seseorang. Untuk banyak kategori, itu benar. Tapi catatan jam kerja anehnya sangat cocok untuk tidak ada di cloud: isinya data pribadi, ada aturan masa simpan, jumlahnya kecil, dan untuk usaha satu lokasi, memusatkannya hampir tidak memberi manfaat.
Kadang jawaban kuno juga jawaban modern. Perangkat di dekat pintu. CSV di akhir pekan. Catatan yang ada tepat di tempat Anda bisa melihatnya.
Itu hampir semua yang benar-benar dibutuhkan absensi tim kecil.
