-
Notifications
You must be signed in to change notification settings - Fork 1
Home
abbas0444 edited this page Sep 9, 2026
·
2 revisions
Punches go in one end, Employee Checkin records come out the other. No exports, no spreadsheets, no typing. A front door and a back door are read as one day, not two half-days.

| Installation | Get it onto your bench or Frappe Cloud site |
| Setting up your devices | The three things to fill in before your first sync |
| More than one door | Two machines, one office — and two machines behind one address |
| How IN and OUT are decided | What happens when your device does not record a direction |
| Troubleshooting | Every message the log can write, and what to do about it |
| Your ERPNext / HRMS | Branch |
|---|---|
| 16 |
version-16 — the default |
| 15 | version-15 |
Both carry the same features. Only four files differ between them, and none of them is Python.
- Look up your people. Collect the Attendance Device ID of every Active employee.
- Read the devices. Pull each machine's log and keep only those people's punches. Punches from unknown or inactive users are ignored.
- Write the check-ins. Put every punch from every machine into one list in time order, then create one Employee Checkin each, marked IN or OUT. A punch already recorded is skipped, so a repeat run never doubles anything.
Everything is written to the Nexus Attendance Log.

Licensed under MIT — free to use, change and sell.
Getting started
Using it
When it goes wrong
For developers
Legal