Integrations · Hikvision · Face ID
Face ID attendance tracking via Hikvision
Client:
Big Tech
Category: Integrations
Stack: PHP, Hikvision ISAPI (digest auth), Bitrix24 agent (cron)
Timeline: 1–2 weeks
Problem
Employee attendance was not collected centrally anywhere — Face ID turnstile data just stayed on the terminals themselves.
Constraints
Hikvision terminals have no push notifications to external systems — the only access is direct ISAPI polling with digest auth; employees are matched to Bitrix24 accounts through a maintained list, not automatically by badge number.
What I did
- An hourly Bitrix24 agent polls the Hikvision terminals directly over HTTP ISAPI
- Events are matched to a bitrix_user_id through a maintained bind file, with a fallback to normalized name comparison
- The timesheet is assembled into structured JSON and served by a report page
Architecture
Hikvision terminals (Face ID)
→ ISAPI (digest auth)
→ Bitrix24 cron agent
→ Name ↔ bitrix_user_id matching
→ JSON timesheet / report
Result
Face ID turnstile data no longer stays trapped on the terminals — every hour it is collected into a single timesheet viewable on a report page, instead of checking each terminal by hand.
What can be reused
Hourly polling agent for devices with no webhooks (digest-auth ISAPI)
Matching external events to CRM users through a maintained bind file