---
title: "1.0 Intro to ZKTeco"
space: "ZKTeco Biometric Integration for FrappeHR"
url: "https://docs.navari.co.ke/zkteco/zkteco"
updated: "2026-05-24"
---

# Introduction

The ZKTeco Biometric Integration is a Frappe application that bridges ZKTeco network-enabled biometric hardware with FrappeHR's attendance management system. It replaces manual punch-card entry by automatically pulling transaction logs from one or more ZKTeco devices, mapping those logs to employee records in FrappeHR, and creating Employee Check-in documents all on a configurable schedule.

Key capabilities at a glance:

- Automated, scheduled data pull from ZKTeco device REST APIs
- JWT-based authentication with automatic token renewal
- Support for multiple devices managed from a single settings interface
- Punch state translation (device states converted to FrappeHR IN/OUT log types)
- Duplicate detection to prevent double-counting of the same punch event
- Bidirectional user status control on the physical device, tied to check-in/check-out state in FrappeHR
- Full audit trail via Frappe's Error Log and Scheduled Job Log infrastructure

