Kiapoynt
Schools · HRInternally: Identity platform

Biometric attendance & identity

Tap card plus fingerprint. The card is bound to one person, so it cannot be passed to a friend at the gate.

RFID / NFCSmart cardssystemd agentREST API
The situation

Schools and HR teams both have the same problem with card-based attendance: a card can be handed to someone else, so a tap only proves the card was present, not the person.

What we built
  • 01

    An RFID/NFC reader paired with fingerprint smart cards that match the fingerprint on the card itself — no fingerprint data ever leaves the card or reaches a server.

  • 02

    A tap-and-match flow: first tap of the day checks a person in, the second checks them out, and the card refuses to unlock without the correct enrolled finger.

  • 03

    A reader agent, built with a swappable driver interface so future reader hardware isn't a rewrite, running as a background service and posting taps to a cloud backend.

  • 04

    The backend resolves a card to a specific, named person and logs any unrecognized card as unassigned for an admin to register — the credential is bound to one person by design.

  • 05

    Designed from the start as an API-enabled identity platform, so schools, colleges or HR systems can integrate against it rather than being locked to one interface.

In production

Real interfaces, not mockups.

Reader agent status
Under the hood

Match-on-card, not match-on-server

The fingerprint sensor and the two stored templates live on the card's own firmware — the card itself refuses to report a valid tap until the correct finger is presented. The reader and backend never see or store biometric data at all; they only see a UID that has already been authorized by the card. That split is what makes the card impossible to share: possession of the card alone proves nothing.

Outcome
On-card

fingerprint match, nothing sent to a server

Something similar to build?

Tell us what you run today and where the manual work sits.