Why ZKTeco Dominates the Pakistani Market
ZKTeco has become the default biometric attendance brand for Pakistani businesses of all sizes. The reasons are straightforward: devices are widely available through local distributors in every major city, price points start below PKR 15,000 for basic fingerprint terminals, and the after-sales network is well established. From a five-person office in a commercial plaza to a 500-employee garment factory, it is hard to walk into a Pakistani workplace and not see a ZKTeco device mounted near the entrance.
For HR and payroll teams, this ubiquity creates a practical requirement: your HR software must integrate with ZKTeco devices, or you will spend significant time manually reconciling attendance records. This guide covers everything you need to connect ZKTeco hardware to Peoplifi, including supported models, sync methods and step-by-step setup instructions.
Supported ZKTeco Device Families in Pakistan
Peoplifi supports the ZKTeco device families most commonly deployed in Pakistan:
- K14: Entry-level fingerprint terminal, common in small offices. USB and TCP/IP connectivity.
- K50: Mid-range fingerprint and password device. Widely deployed in retail and light manufacturing.
- F18: Fingerprint with colour touchscreen. Popular in corporate offices.
- MB20-VL: Multi-biometric (fingerprint, face, vein). Used in high-security or clean-room environments.
- MultiBio700: Face and fingerprint combined terminal with large user capacity.
- SpeedFace V5L: Contactless face recognition terminal. Widely adopted post-pandemic for hygiene compliance.
- uFace800: High-capacity face and fingerprint device suited to large workforces.
If your device model is not listed, contact Peoplifi support. Many older ZKTeco models that use the standard ZKTeco SDK protocol are compatible even if not explicitly listed.
How ZKTeco Pushes Attendance Data: Three Methods
Method 1: Real-Time Sync via ZKTeco SDK over LAN
This is the recommended integration method. Peoplifi connects directly to the device over your local area network using the ZKTeco SDK (also known as ZKAccess or the PULL SDK). When an employee punches in or out, the punch record is available in Peoplifi within seconds. Requirements: the device and the server running Peoplifi must be on the same LAN or connected via VPN. Port 4370 (TCP and UDP) must be open between the device and the Peoplifi server.
Method 2: CSV Export from Device for Manual Import
Every ZKTeco device can export attendance logs as a CSV or DAT file via USB or the web interface. HR managers can download this file and upload it to Peoplifi's attendance import module. This method works when the device is not networked or when you need to import historical records. It is not real-time but is reliable as a fallback or for branch offices with poor connectivity.
Method 3: Cloud Push via ZKBioCloud
Newer ZKTeco devices (primarily SpeedFace V5L and uFace800 series) support ZKBioCloud, ZKTeco's own cloud platform. Peoplifi can receive attendance data relayed through ZKBioCloud using the ADMS (Attendance Data Management Service) push protocol. This method is useful when devices are spread across multiple locations without a common LAN. Check whether your specific device firmware supports ZKBioCloud before choosing this method.
Step-by-Step: Peoplifi and ZKTeco Setup
Step 1: Add the Device in Peoplifi Settings
Log into Peoplifi and navigate to Settings > Attendance Devices > Add Device. Enter the device IP address, port (default 4370) and the device serial number. Select the device model from the dropdown. Save the configuration.
Step 2: Configure Push Credentials on the Device
On the ZKTeco device itself, go to the network settings menu and confirm the IP address is static or DHCP-reserved. If you are using ZKBioCloud push, enter the Peoplifi ADMS server address and the push token found in your Peoplifi device settings page. For direct SDK mode, no additional configuration on the device is required beyond having a static IP.
Step 3: Map Employees to Device User IDs
ZKTeco devices identify users by an integer User ID (UID). In Peoplifi, open each employee record and enter their ZKTeco UID in the Biometric ID field. Alternatively, use the bulk import template to map multiple employees at once. This mapping is essential: if an employee's UID is not linked to a Peoplifi employee record, their punches will appear in the raw log but will not be attributed to any payroll record.
Step 4: Run a Test Punch
Ask a test employee to punch in and out on the device. In Peoplifi, go to Attendance > Live Log and confirm the punch appears within 30 seconds (for real-time SDK mode) or after the next scheduled sync cycle.
Step 5: Verify Sync in the Attendance Log
Go to Attendance > Daily Log and confirm the time-in and time-out entries are correctly attributed to the employee. Check that the timestamp matches the device time. If there is a discrepancy, synchronise the device clock (see troubleshooting below).
Handling Multiple Devices Across Branches
For businesses with more than one location, Peoplifi supports a multi-device, multi-branch architecture:
- Each device is registered separately with its own IP address and device group
- Device groups can be mapped to branches, cost centres or departments
- Employees can be enrolled on multiple devices (useful for head office and site attendance)
- Attendance reports can be filtered by branch or consolidated across all locations
- Branch managers can see only their branch's attendance data if role-based access is configured
For branches connected over WAN (wide area network), use a site-to-site VPN or the ZKBioCloud push method rather than exposing the device directly to the internet.
Troubleshooting Common Sync Issues
Device Shows Offline in Peoplifi
Check: is the device powered on and connected to the LAN? Ping the device IP from the server. Confirm port 4370 is not blocked by the firewall. Verify the device IP has not changed (set a DHCP reservation or static IP on the device).
Time Mismatch Between Device and System
ZKTeco devices do not always sync time automatically. Log into the device admin menu and set the time manually, or configure NTP if the device and firmware support it. A time mismatch of more than a few minutes will cause shift calculations to be incorrect even if punches are syncing successfully.
Employee Punches Not Attributed to Any Record
This almost always means the ZKTeco UID is not mapped to a Peoplifi employee. Go to the raw punch log in Peoplifi, identify the unmapped UID, and link it to the correct employee record.
Duplicate Punch Entries
Duplicate punches can occur if the device sends records twice (for example, during a device restart that re-transmits the log). Peoplifi deduplicates punches with the same UID, direction and timestamp within a 60-second window. If duplicates persist, check whether the device is configured in both real-time SDK and CSV import modes simultaneously.
Network and Security Considerations
ZKTeco devices were not designed with enterprise security in mind. Follow these practices:
- Keep devices on a segregated LAN VLAN rather than on the main office network
- Do not expose port 4370 directly to the internet. Use a VPN for remote access
- Change the default device admin password immediately after installation. Factory default passwords are public knowledge
- Disable the device web interface (port 80) if you are not using it for configuration
- For ZKBioCloud push, use the token-based authentication provided by Peoplifi rather than plain HTTP endpoints
These precautions prevent unauthorised access to attendance records and reduce the risk of the device being used as a network pivot point.
Frequently Asked Questions
Does Peoplifi work with ZKTeco devices that only have USB connectivity?
Yes, via the CSV export method. Download the attendance log from the device using the ZKTeco management software, then import the file into Peoplifi's attendance import module. Real-time sync is only available for networked devices.
How many ZKTeco devices can I connect to a single Peoplifi account?
There is no hard limit on the number of devices. Each device is registered separately and assigned to a branch or location. Performance depends on the volume of punches and network latency, not the number of devices.
Can the same employee enrol on multiple devices across different branches?
Yes. The employee's fingerprint or face template can be enrolled on each device independently, and all punches from all devices will be attributed to their single Peoplifi employee record as long as their Biometric ID is consistent.
What happens to attendance data if the internet goes down?
ZKTeco devices store punch records in internal memory (typically 100,000 or more transactions). If the network connection is lost, punches accumulate on the device and sync to Peoplifi automatically when connectivity is restored. No data is lost during an outage.
Is it possible to use ZKTeco for access control and attendance at the same time?
Yes. Most ZKTeco models support both access control (door lock relay) and attendance logging simultaneously. Peoplifi currently pulls the attendance transaction log only. Access control rules are managed through ZKTeco's own software (ZKAccess or ZKBioSecurity), which runs in parallel.
Ready to automate your HR?
Peoplifi handles FBR Section 149, EOBI, biometric attendance, and payroll automatically — so your team can focus on people, not spreadsheets.
Start your free 7-day trial →