Membuat Absensi Online Pakai GPS + Foto dengan Google Script
Banyak HRD dan admin mencari solusi absensi online Google Script yang mudah digunakan, tanpa perlu aplikasi tambahan. Dengan memanfaatkan absensi pakai GPS dan foto, karyawan bisa melakukan check in dan check out hanya lewat smartphone, dan data otomatis masuk ke Google Spreadsheet. Panduan ini akan membahas cara membuat absensi dengan Google Apps Script mulai dari form input NIK, pencatatan lokasi GPS, hingga upload foto kamera sebagai bukti kehadiran. Dengan sistem ini, absensi karyawan otomatis spreadsheet bisa diakses kapan saja oleh HRD tanpa ribet.
Kenapa Memakai Google Script untuk Absensi?
Google Apps Script adalah platform ringan berbasis JavaScript yang bisa dipakai untuk mengotomatisasi Google Spreadsheet, Google Drive, hingga Google Forms. Kelebihannya adalah gratis, mudah diintegrasikan, dan bisa diakses lewat web browser. Dengan sedikit coding, perusahaan bisa membuat sistem absensi sederhana namun efektif, tanpa biaya tambahan untuk aplikasi pihak ketiga.
Fitur Absensi Online
- Check-in dan check-out karyawan berbasis NIK
- Pencatatan GPS (latitude, longitude) secara otomatis
- Upload foto langsung dari kamera smartphone
- Data tersimpan otomatis di Google Spreadsheet
- Admin HRD bisa melihat laporan harian, mingguan, atau bulanan
Struktur Spreadsheet
Dalam contoh ini, kita memakai dua sheet utama pada Google Sheet:
- Employees: menyimpan data karyawan (employee_id, nama, NIK, departemen, posisi)
- Absensi: mencatat absensi (id, employee_id, nama, timestamp, tipe, latitude, longitude, foto)
Langkah Membuat Absensi Online
Persiapan Spreadsheet
- Buka Google Spreadsheet baru.
- Buat 2 sheet:
- Employees → menyimpan data karyawan (employee_id, nama, NIK, departemen, posisi).
- Attendance → menyimpan data absen (id, employee_id, nama, timestamp, tipe, latitude, longitude, foto).
Membuat Google Apps Script
- Masuk ke script.google.com.
- Buat proyek baru, beri nama AbsensiGPSFoto.
- Buat file
Code.gs
dengan isi sesuai kebutuhan sistem absensi untuk codenya sebagai berikut. - Silahkan ganti SPREADSHEET_ID dengan ID Google Sheet Anda.
Membuat File HTML
- Buat file HTML seperti Admin.html, Absensi.html, Laporan.html, LaporanDetail.html,dan Export.html.
- Untuk isi kodenya sebagai berikut:
#Export.html
Deploy
- Klik menu Deploy kemudian pilih New Deployment.
- Pilih Web App sebagai tipe deployment.
- Atur konfigurasi:
- Execute as: Me
- Who has access: Siapa saja yang memiliki akun gmail
- Salin URL Web App untuk digunakan sebagai akses frontend.
Menampilkan Laporan Absensi
Admin HRD bisa membuka halaman admin yang menampilkan data absensi dalam bentuk tabel. Data dapat difilter berdasarkan tanggal, dilengkapi tombol untuk melihat peta lokasi dengan Leaflet atau OpenStreetMap, dan foto bisa ditampilkan langsung sebagai thumbnail. Dengan begitu, HRD bisa memastikan kehadiran karyawan lebih transparan.
Membuat absensi pakai GPS + foto dengan Google Script adalah solusi praktis untuk perusahaan kecil hingga menengah. Selain gratis, sistem ini fleksibel, mudah dikembangkan, dan bisa langsung dipakai tanpa install aplikasi. Dengan sedikit modifikasi, sistem ini juga dapat diintegrasikan ke payroll atau laporan HRD bulanan. Jika ingin absensi lebih akurat, pastikan karyawan mengaktifkan GPS dan izin kamera saat melakukan absen.