ODOO CASE STUDY

Duniatex — Fingerprint Attendance Integration

Attendance import pipeline connected to Odoo 16, processing CSV/XLS/XLSX files, employee matching, duplicate scans, and overnight shifts.

01

Project context

Duniatex Group operations required integrating biometric attendance data from standalone fingerprint devices into Odoo 16 HR Attendance, with a file-based import pipeline.

Client
Duniatex Group
Employer / delivery context
Work spanned project phases through PT Arkana Solusi Digital and PT Naska Jala Dewa for Duniatex Group.Initial work via PT Arkana Solusi Digital · Later implementation via PT Naska Jala Dewa
My role
Engineered the biometric attendance file import pipeline, employee ID lookup, scan reconciliation, and Odoo 16 synchronization.
Attribution
Direct code and commit evidence
Odoo version
Odoo 16
Validation status
Reviewed repository code, import pipeline logic, and unit tests.

TECHNICAL VISUAL

FINGERPRINT INTEGRATION

Conceptual illustration of biometric attendance data pipeline importing files into Odoo 16.
Attendance data import pipeline · conceptual diagram

This original diagram summarizes repository-reviewed or owner-confirmed facts. It is not a production screenshot or a complete system architecture.

02

My actual contribution

Engineered and verified the file import application logic to process CSV, XLS, and XLSX device exports, match biometric user IDs to Odoo employee records, reconcile repeated check-in/out scans, and synchronize validated attendance entries into Odoo 16.

03

System/process involved

The integration pipeline ingests raw export files from biometric clocks, validates file headers, resolves employee identifiers, applies scan pairing rules, converts local clock timestamps to UTC, and creates attendance records in Odoo 16.

File-based import pipeline; does not connect via real-time biometric hardware streaming API.

04

Technical details that are verified

Code and regression-test review supports employee matching, approximately 3-hour duplicate-scan reconciliation, approximately 36-hour overnight pairing, and local-to-UTC conversion. These are implementation findings, not production or on-call evidence.

05

Relevant lessons or complexity

The hard part was reconciling noisy scans and cross-day shifts without duplicating attendance records. The reviewed importer includes duplicate guards and a re-read before per-row fallback after a failed batch; this is not proof of exactly-once delivery under concurrency or post-go-live support.

Initial exploration conducted through PT Arkana Solusi Digital; later import implementation phase executed through PT Naska Jala Dewa.