ZKTeco ADMS Attendance Integration
by Malik Abo Shabab https://www.linkedin.com/in/malikabushabab/$ 300.01
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Attendances (hr_attendance)
• Employees (hr) • Discuss (mail) |
| Lines of code | 1541 |
| Technical Name |
zkteco_adms_attendance |
| License | OPL-1 |
| Website | https://www.linkedin.com/in/malikabushabab/ |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Attendances (hr_attendance)
• Employees (hr) • Discuss (mail) |
| Lines of code | 1541 |
| Technical Name |
zkteco_adms_attendance |
| License | OPL-1 |
| Website | https://www.linkedin.com/in/malikabushabab/ |
ZKTeco ADMS Attendance Integration
Real-time biometric attendance synchronization for Odoo 17
Seamlessly integrate ZKTeco biometric devices with Odoo using the ADMS (Automatic Data Master Server) push protocol. No static IPs, no complex networking - just simple device registration and automatic attendance sync.
Screenshots
Device Registration
Easily register ZKTeco devices by entering the serial number. Get the server URL for device configuration.
Employee Mapping
Map Odoo employees to ZKTeco user IDs. Support for multiple devices per employee.
Attendance Logs
View all received attendance logs with detailed information including verification mode and processing status.
Sync Status Dashboard
Monitor device status, sync operations, and view comprehensive logs for troubleshooting.
Key Features
🚀 Real-time Sync
Devices push attendance data immediately to Odoo via HTTP/HTTPS. No polling required.
📱 Network-Friendly
Works with dynamic IPs, behind routers, on mobile networks. No static IP requirements.
🔧 Easy Setup
Simple device registration by serial number. Automatic server URL generation for device configuration.
👥 Employee Mapping
Map Odoo employees to ZKTeco user IDs. Support for multiple devices per employee.
✅ Auto Check-in/Check-out
Intelligent pairing of attendance records. Automatically creates check-in and check-out pairs.
📊 Comprehensive Logging
Track all sync operations, view attendance logs, and monitor device status.
How It Works
1. Register Device
Add your ZKTeco device by entering its serial number in Odoo.
2. Configure Device
Copy the Server URL from Odoo and configure it in your ZKTeco device's ADMS settings.
3. Map Employees
Link Odoo employees to ZKTeco user IDs for automatic attendance creation.
4. Automatic Sync
Devices automatically push attendance logs to Odoo. Attendance records are created in real-time.
Supported Devices
This module supports all ZKTeco devices that use the ADMS protocol, including:
- ZKTeco iClock series
- ZKTeco ZKTime series
- ZKTeco SilkBio series
- Other ZKTeco biometric devices with ADMS support
Technical Details
ADMS Protocol Support
- Full implementation of ZKTeco iClock protocol
- Support for key=value format (standard ADMS)
- Backward compatibility with legacy formats
- Device registration and user sync
Endpoints
GET /zkteco/adms/receive/iclock/getrequest- Device pollingPOST /zkteco/adms/receive/iclock/cdata- Attendance and user data
Why Choose This Module?
✅ Production Ready
Fully tested and ready for production use. Handles errors gracefully with comprehensive logging.
🔒 Secure
Device authentication by serial number. HTTPS support for secure data transmission.
📈 Scalable
Support for unlimited devices. Efficient processing of high-volume attendance data.
🛠️ Easy Maintenance
Clear interface for device management. Detailed logs for troubleshooting and monitoring.
📚 Well Documented
Comprehensive documentation and README. Clear configuration instructions.
🔄 Active Support
Regular updates and bug fixes. Responsive support for issues and questions.
Requirements
- Odoo 17.0
- Python 3.11+
- Modules: hr, hr_attendance
- ZKTeco device with ADMS protocol support
Support & Contact
For support, questions, or inquiries, please contact the author:
LinkedIn: Malik Abo Shabab
Email: malikabushabab@gmail.com
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module