Skip to main content
Every widget has a type, chosen when you create it, which decides the steps the end user goes through. The type is set in the dashboard, not in the embed code, so you can change a widget’s behavior without touching your page.

The four types

Liveness

liveness. Confirms a real, live person is present with a selfie and liveness check. No document or ID number.

ID

id. Captures and reads an identity document.

Liveness + ID

liveness_id. Liveness, plus a document, plus matching the live face to the document photo.

Liveness + NIN/BVN

liveness_nin. Liveness, plus a NIN or BVN number, matching the live face to the government record’s photo.

Liveness

The user takes a selfie and passes a liveness check that confirms they are a real person present at capture, not a photo or a replay. Use it when you need presence, without needing to tie it to a specific document.

ID

The user photographs an identity document. The widget captures the document and reads its data. Use it when you need the document itself, for example to read and store its fields.

Liveness + ID

The strongest self service check: the user proves liveness, presents a document, and the widget matches the live face against the photo on the document. Use it to confirm the person presenting the document is its holder.

Liveness + NIN/BVN

The user proves liveness and enters a NIN or BVN. The widget looks the number up through your organization’s activated NIN or BVN scope and matches the live face against the photo on the government record. Because it runs a real identifier lookup, this type depends on your organization having a NIN or BVN scope active. The merchant chooses which registers the widget allows, and the end user picks one.
The identifier lookup in liveness_nin runs through the same engine and the same activated scope as the API, so it is gated and billed exactly like any other NIN or BVN check. See Scopes and activation and Wallet and billing.