ZKTeco Biometric HR Attendance Suite and Payroll is an Odoo module that pulls punches from ZKTeco fingerprint and face terminals straight into Odoo Attendance. I built it to remove manual timesheets: punches sync automatically, late arrivals and missing punches are flagged, and late penalties flow into payroll. It talks to the device directly, with no third-party cloud service in between.
At a glance
| Module | ZKTeco Biometric HR Attendance Suite and Payroll |
|---|---|
| Odoo versions | 15 to 19 on the Apps Store |
| Devices | ZKTeco TCP/IP terminals, e.g. uFace 202, uFace 800, K40 |
| Publisher | Dot BD Solutions Limited |
| Developer | Rafiur Rahman Rafit |
How it works
You add each terminal in Odoo with its IP address and port (4370 by default) and test the connection. A scheduled action downloads new punches at the interval you choose and matches each device user ID to an employee. The punches become normal Odoo attendance records, so the rest of Odoo HR keeps working as usual.

Main features
- Device management: several terminals, face and fingerprint, automatic sync and employee mapping.
- Dashboard: today, week, month and year views of attendance, with department analytics.
- Anomaly detection: missing check-in or check-out and duplicate punches, with a resolution workflow.
- Late rules: grace period, automatic penalty, a four-step approval and payroll deduction.
- Attendance sheets: calendar-style monthly sheets with colour codes, exported to PDF or Excel.
- Integration: respects working schedules, Time Off and public holidays.

Setup in five steps
- Add the device: Attendance > Biometric Device > New, enter IP and port, click Test Connection.
- Map employees: enter each employee's device user ID.
- Set schedules: assign working schedules to employees.
- Set rules: late tolerance, overtime and penalties.
- Check the dashboard: punches appear after the next sync.
Frequently asked questions
Does Odoo need to reach the device directly?
Yes, this module connects to the terminal over your network or a VPN. If your Odoo is in the cloud and the device is in the office, see the combined ZKTeco + Hikvision suite, which also supports cloud push (ADMS).
Which Odoo payroll does it work with?
Penalties can be pushed to payroll as deductions. The newer suites also read salary data from native Odoo payroll.
Can I use Hikvision devices too?
For Hikvision, use the Hikvision suite. For both brands in one database, use the ZKTeco + Hikvision suite.
Connecting ZKTeco devices to Odoo?
Send me your device model and how your Odoo is hosted, and I'll tell you which setup fits.
