Skip to main content
🪪

BVN Identity

Verify a customer's core demographic identity via their Bank Verification Number through the NIBSS iGree Consent Layer. This secure, three-step flow handles OTP generation and delivery entirely through NIBSS. On completion, you receive the customer's full personal profile, NIN linkage.

🔐 NIBSS-managed OTP📄 Core demographics

Identity Verification Flow

The BVN Identity flow runs through the NIBSS iGree Consent Layer — three calls must be made in sequence. Pass the requestId returned in step 1 to steps 2 and 3.

1
Get Auth Methods

Submit the customer's BVN to initiate the identity check. NIBSS returns the masked phone number and/or email address registered against it. Save the meta.requestId from the response — it is required in every subsequent step.

masked contacts + requestId
2
Verify Auth Method

Using the requestId from step 1, select the contact channel (phone or email) the OTP should be sent to. NIBSS dispatches a one-time passcode directly to the customer — your server is not involved in delivery.

OTP dispatched to customer
3
Fetch BVN Identity

Submit the requestId and the OTP provided by the customer to complete verification. On success, the response contains the customer's strict identity data: full names, date of birth, phone number, residential address, linked NIN, and a base64-encoded face image that can be passed directly to Face Compare.

full identity profile + base64 face image
Bearer token required

All endpoints require a valid Bearer token. Obtain one from the Access Token endpoint and pass it as Authorization: Bearer <token>.

Using the face image downstream

The data.face_image field returned by Fetch BVN Identity is a base64 string. You can pass it directly as the referenceImage in Face Compare to check a live capture against the BVN record.

Endpoints