Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. Attendances
  3. ZKTeco Biometric Attendance | ZKteco Biometric Attendance Integration | ZKTeco | ADMS Push Attendance Integration | ZKTeco Attendance Integration | ZKTeco ADMS Integration v 19.0
  4. Sales Conditions FAQ

ZKTeco Biometric Attendance | ZKteco Biometric Attendance Integration | ZKTeco | ADMS Push Attendance Integration | ZKTeco Attendance Integration | ZKTeco ADMS Integration

by Waqas Mustafa https://www.linkedin.com/in/waqas-mustafa-ba5701209/
Odoo

$ 39.83

v 19.0 Third Party 1
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Attendances (hr_attendance)
• Discuss (mail)
• Employees (hr)
Lines of code 1926
Technical Name odoo_zkteco_biometric_attendance
LicenseLGPL-3
Websitehttps://www.linkedin.com/in/waqas-mustafa-ba5701209/
Versions 18.0 19.0
You bought this module and need support? Click here!
Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Attendances (hr_attendance)
• Discuss (mail)
• Employees (hr)
Lines of code 1926
Technical Name odoo_zkteco_biometric_attendance
LicenseLGPL-3
Websitehttps://www.linkedin.com/in/waqas-mustafa-ba5701209/
Versions 18.0 19.0
  • Community
  • Enterprise
Enterprise Community

ZKTeco Biometric Attendance Integration for Odoo

Real-time attendance sync via Direct IP/LAN or ADMS Cloud Push

Description

Connect your ZKTeco biometric terminals directly to Odoo. Attendance punches are automatically converted into Odoo HR Attendance check-in and check-out records no manual data entry required.

Supports both Direct IP / LAN (Odoo pulls from device) and ADMS / Cloud Push (device pushes to Odoo in real-time). Works with fingerprint, face, card, and PIN verification methods.

Key Features
Direct IP / LAN Mode

Odoo connects directly to device via TCP/IP using pyzk library

ADMS / Cloud Push Mode

Device pushes punches to Odoo in real-time works over internet, no polling

Employee Mapping

Auto and manual mapping of device users to Odoo employees

Auto Check-In / Check-Out

Punches automatically create or close HR Attendance records

Duplicate Protection

Unique key per punch prevents duplicate attendance records

Live Dashboard

Connected devices, today's attendance, unmapped logs, missing checkouts

After Installation Grant User Access
⚠ Important: After installing the module, users will not see the Biometric Attendance menu until you grant them access from Settings.
Follow these steps to give a user access:
  1. Go to Settings → Users & Companies → Users
  2. Open the user you want to give access to
  3. Scroll down to the Extra Rights section
  4. Enable one of the following:
    • Biometric Attendance User can view dashboard and attendance logs
    • Biometric Attendance Administrator full access (devices, mapping, settings)
  5. Click Save the user will now see the Biometric Attendance menu
Mode 1 → ADMS / Cloud Push Setup
Requirement: Odoo must be accessible from the internet (cloud server or public IP). No pyzk installation required.
Step 1: Configure Device Cloud Server Settings
On the ZKTeco device go to: Menu → Comm → Cloud Server Settings
  • Server Mode: ADMS
  • Enable Domain Name: Off (use IP directly)
  • Server Address: Your Odoo server IP
  • Server Port: 8069 (Odoo default port)
Save and exit the menu.
Step 2: Get Device Serial Number
On the device go to: Menu → System → Device Info
Note down the Serial Number (e.g. FQQ2252400516).
Step 3: Add Device in Odoo
Go to Biometric Attendance → Devices → New and fill:
  • Connection Mode: ADMS / Cloud Push
  • Serial Number: Paste the serial number from Step 2
  • Timezone: Select your local timezone (e.g. Asia/Karachi)
Save the record. The ADMS Push Endpoint URL will be shown this is where your device pushes data.
Step 4: Restart the Device
Turn the device off and back on. It will register with Odoo automatically within 30 seconds. The device state will change to Connected and Last Seen will update.
Step 5: Make a Punch
Place your finger (or face/card) on the device. The punch is pushed to Odoo in real-time. The user will automatically appear in Device Users after the first punch.
Step 6: Map Employees
Go to Employee Mapping. Link the device user to the corresponding Odoo employee. All pending punches will be processed and HR Attendance records will be created automatically.
✅ Done! From this point every punch on the device creates an instant check-in or check-out in Odoo no manual sync needed.
Odoo Attendances Calendar All synced punches appear as check-in/check-out records in the standard Odoo Attendances module, fully visible in calendar and list view.
Mode 2 → Direct IP / LAN Setup
Requirement: Odoo server and ZKTeco device must be on the same network. If not, set up port forwarding on your router for port 4370.
Step 1: Install pyzk on Odoo Server
Run the following command on your Odoo server:
pip install pyzk
Step 2: Add Device in Odoo
Go to Biometric Attendance → Devices → New and fill:
  • Connection Mode: Direct IP / LAN
  • Device IP: IP address of your ZKTeco device
  • Port: 4370 (default)
  • Timezone: Select your local timezone
Click Test Connection state should turn Connected.
Step 3: Sync Users
Click Sync Users button. All enrolled users from the device will appear under Device Users tab.
Step 4: Sync Attendance
Click Sync Attendance button. All stored punches are downloaded and raw logs are created under Attendance Logs.
Step 5: Map Employees
Go to Employee Mapping. Link each device user to the corresponding Odoo employee. Once mapped, all pending logs will automatically create HR Attendance check-in/check-out records.
✅ Done! Future syncs run automatically via scheduled cron jobs based on your configured auto-sync interval.
Supported Verification Methods
Fingerprint
Face Recognition
Card / RFID
PIN

Auto-detected from device punch data — no manual configuration required.

Troubleshooting
Direct IP Connection Failed
  • Make sure pyzk is installed on the Odoo server
  • Confirm device IP is correct and reachable from the server
  • Device and server must be on the same network or configure port forwarding (port 4370) on the router
  • Check that no firewall is blocking port 4370
ADMS Device Not Connecting
  • Verify Server Address and Port (8069) on the device
  • Make sure Enable Domain Name is OFF when using IP
  • Serial number in Odoo must exactly match the device's serial number
  • Odoo server must be publicly accessible localhost will not work
  • Try restarting the device after saving settings
Attendance Logs Showing Wrong Time
  • Set the correct Timezone on the device record in Odoo (e.g. Asia/Karachi)
  • The module converts device local time to UTC automatically using this setting
Employees Not Getting Attendance
  • Go to Employee Mapping and map the device user to an Odoo employee
  • Unmapped logs are stored and will be processed automatically once mapped
Contact Us
Support, customizations, and development
mustafawaqas0@gmail.com
ezcodesolution0@gmail.com
+92 305-9175085
linkedin.com/in/waqas-mustafa-ba5701209
Our Expertise
Odoo Development
Customization Services
Module Development
Support & Maintenance
Quality Solutions
Connect with us
Waqas Mustafa | ezcodesolution
Version: 19.0.2.0.1
Module design is reserved | Copyright © Waqas Mustafa | ezcodesolution
Changelog
  • 19.0.2.0.1 2026-06-22
    • ADMS real-time push mode — full support for ZKTeco Push Protocol 3.x
    • Fixed device re-registration loop in ADMS mode
    • Timezone-aware punch time conversion for correct local time display
    • Verified code mapped to Fingerprint / Face / Card / PIN method field
    • getrequest heartbeat and command delivery working correctly
  • 19.0.1.0.0 2025-12-05
    • Initial release — Direct IP / LAN mode with pyzk
    • Employee mapping, duplicate protection, cron-based auto sync
    • Live dashboard with connected devices and attendance stats

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with