Punch Capture And Device API
Explains attendance devices, kiosk capture, CSV imports, punch logs, suspicious punch review, and integration endpoints.
Workflow
- RegisterAdmin / IT: Create device name, code, branch, token/secret, allowed IPs, and status.
- CaptureDevice / Kiosk / Import: Submit or upload punch time, type, employee identifier, and source.
- ReviewHR / IT: Resolve duplicates, unknown employees, impossible times, and suspicious punches.
- SyncSystem: Convert clean punches into attendance context.
| Stage | Actor | Action | Result |
|---|---|---|---|
| Register | Admin / IT | Create device name, code, branch, token/secret, allowed IPs, and status. | Punch source is trusted. |
| Capture | Device / Kiosk / Import | Submit or upload punch time, type, employee identifier, and source. | Raw punch logs are stored. |
| Review | HR / IT | Resolve duplicates, unknown employees, impossible times, and suspicious punches. | Only valid signals feed attendance. |
| Sync | System | Convert clean punches into attendance context. | Day sheet and reports can use the data. |
Essential fields
Admin / IT
Attendance device form
Registers a biometric, kiosk, mobile, or integration source that can submit attendance punches.
| Essential field | Plain meaning | Example | Required / notes |
|---|---|---|---|
| Device name | Friendly label. | Head Office Biometric |
Required. |
| Device code | Stable identifier. | KHI-BIO-01 |
Required. |
| Location/branch | Where the device is used. | Head Office |
Recommended. |
| Status | Whether device is active. | active |
Inactive devices should not send punches. |
| API token/secret | Credential for integration. | generated |
Private; rotate if exposed. |
| Allowed IPs | Network restriction. | 203.0.113.10 |
Recommended. |
Essential fields
Employee / Kiosk operator
Kiosk punch form
Captures a check-in or check-out from a browser-based kiosk.
| Essential field | Plain meaning | Example | Required / notes |
|---|---|---|---|
| Employee identifier | Employee code/card/user input. | EMP-1002 |
Required. |
| Punch type | Check-in or check-out. | check_in |
Required. |
| Captured at | Time of punch. | 2026-06-08 09:02 |
Usually automatic. |
Essential fields
Admin / IT
Punch import form
Uploads punch data from a device export file.
| Essential field | Plain meaning | Example | Required / notes |
|---|---|---|---|
| Import file | CSV/XLSX or supported file. | punches.csv |
Required. |
| Device | Source device. | Head Office Biometric |
Recommended. |
| Timezone | Timezone used by file timestamps. | Asia/Karachi |
Critical for correct dates. |
| Duplicate handling | What to do with repeated punches. | skip duplicates |
Do not blindly import duplicates. |
Essential fields
Admin / HR
Suspicious punch resolution form
Closes punch issues such as duplicate, impossible time, unknown employee, or location mismatch.
| Essential field | Plain meaning | Example | Required / notes |
|---|---|---|---|
| Issue | Suspicious item being reviewed. | Duplicate punch |
Read context first. |
| Decision | Resolve, ignore, or convert. | Resolve |
Depends on evidence. |
| Reviewer notes | Why the decision is correct. | Second punch was accidental |
Required for audit. |
Essential table
Database listing
Devices, punch logs, imports, and suspicious tables
Shows device health, raw punch events, import batches, and exceptions to resolve.
Filters: Device, Employee, Date, Status, Issue type
| Column | What it means | Where it comes from | Example interpretation |
|---|---|---|---|
| Device | Punch source. | attendance_devices. | KHI-BIO-01. |
| Employee | Matched employee. | employee_code or relationship. | EMP-1002. |
| Punch time | Timestamp from source. | punch log. | 09:02. |
| Direction | Check-in or check-out. | punch type. | check_in. |
| Source | API, kiosk, import, mobile. | source field. | api. |
| Issue type | Why punch is suspicious. | suspicious rules. | Unknown employee. |
Available actions
- Open or edit the record when permission allows it.
- Filter the list without losing the current page context.
- Use status badges to decide which item needs attention first.
Full field appendix
Main docs show essential fields only. Open Documentation Coverage for every detected source field, action, column, route hint, controller hint, and test hint.