Skip to main content
Employee portal app with geofenced attendance
HR · Mobile app

Employee portal app with geofenced attendance

A cross-platform app that lets staff clock in only when they are actually on site, writing straight into Odoo HR rather than into a file that syncs overnight.

±50 m

The situation

Attendance was being recorded away from the place it happened, then reconciled later. That gap is where attendance disputes live: by the time a discrepancy surfaces, nobody can prove where anyone was. The client also wanted leave requests and HR documents off the HR team's desk and onto the employee's phone, without buying a backend seat for every employee.

What we did

A cross-platform app in Flutter, writing to Odoo HR in real time rather than batching. Clock-in and clock-out are validated against a site geofence of roughly ±50 metres, so a record can only be created where the work is. Leave requests, balances and HR documents sit in the same app. Nothing is stored twice: the phone is a client onto Odoo, not a second system to reconcile against it.

The outcome

Attendance is captured at the point it happens and is defensible afterwards, because the record carries where it was made. Routine HR traffic — leave, balances, documents — moved to self-service. And because the app writes through Odoo's own business logic rather than around it, approvals, audit trail and reporting kept working exactly as they did before.

Delivered by our engineers. Client names are withheld under confidentiality; scope and outcomes are stated exactly.

Modules from this work

More case studies