to select ↑↓ to navigate
CAMS Biometric Integration

CAMS Biometric Integration

1.0 Overview

navari_cams_biometric is a Frappe application that bridges the CAMS Biometric Gateway (a cloud-hosted hardware abstraction layer for biometric attendance devices) with FrappeHR. When an employee punches their fingerprint, face, palm, card, or PIN on a CAMS-connected biometric device, the punch event is delivered in real time to your ERPNext/FrappeHR site and recorded as an Employee Check-in record and is automatically, without any manual data entry.

1.1 Why This Integration Matters

Manual attendance collection is slow, error-prone, and frequently falsified. Biometric devices eliminate buddy-punching and provide millisecond-accurate time data. However, the data traditionally sits inside proprietary device software. This app liberates that data and makes it a first-class citizen inside FrappeHR, where it can flow into shift-based attendance marking, payroll computation, leave tracking, and HR reporting.

1.2 Key Features

  • Real-time punch capture: every device punch is received at your site within seconds via the CAMS callback mechanism
  • Historical punch log retrieval: load past punch data by date range directly from within CAMS Biometric Settings (subscription-dependent)
  • Shift-aware check-ins: each Employee Check-in record is linked to the employee's shift assignment at the time of the punch
  • Timezone-resilient: original device timestamps are preserved in a separate field even when the system timezone changes
  • Punch type filtering: non-attendance punch types (e.g. MealIn/MealOut) are tracked separately so they don't corrupt attendance records
  • Hardened validation: unknown biometric IDs, missing employee mappings, and malformed payloads are handled gracefully with clear error logging
  • Guest-accessible endpoint: the callback URL is accessible without a FrappeHR login (the device POSTs from outside your network), implemented safely via direct DB queries rather than permission-bypassed ORM calls
Last updated 4 days ago
Was this helpful?
Thanks!