Developer reference
Nigeria NIN verification API: NIN, vNIN and BVN record checks
Nigeria runs two eleven-digit identifiers. The National Identification Number is issued by NIMC to every enrolled resident, and the Bank Verification Number is issued through the banking system under the Central Bank of Nigeria. Neither number contains readable fields, so a format check proves almost nothing and the record check carries the weight. The deepidv verification API checks the number against the record, matches the face to the enrolment photo, and holds all data in Nigeria.
Last reviewed October 2026
The identifiers and their formats
| Identifier | Format | Implementation notes |
|---|---|---|
| NIN | 11 digits | Issued by NIMC. No embedded date, region or gender. |
| vNIN | 16 characters, alphanumeric | A token the holder generates on the NIMC app or by USSD for one requesting organisation. It expires 72 hours after it is generated, so use it to avoid storing the raw NIN. |
| BVN | 11 digits | Issued through NIBSS under the CBN. One BVN links a person's accounts across banks. |
| Voter's card, driver's licence, international passport | Varies | Accepted documents; the passport carries a chip. |
CBN tiered KYC
- Tier 1: low-value accounts with simplified identity requirements and tight balance and transaction limits.
- Tier 2: higher limits, with the identity data verified.
- Tier 3: full KYC, with the highest limits.
CBN has required every account to carry a verified BVN or NIN, with unlinked accounts restricted from debits.
Check the current tier limits and the linkage deadline against the latest CBN circulars; do not print limit amounts unless they have been verified this month.
Response contents of a Nigeria NIN verification API
A parse result tells you whether a number is well formed. A verification response tells you whether the person in front of the camera owns it. deepidv runs one session: document capture with OCR and the AI document fraud check, face liveness with a 1:1 match to the document photo, the NIMC or BVN record check, PEP and sanctions screening, and an optional 1:N match that flags the same face behind a second account.
- One decision per session, with an outcome for every step, delivered by webhook (session.status.verified, session.status.rejected, session.status.failed).
- A reason for every non-pass outcome, separating malformed input, a record that was not found, a mismatch between document and record, and a registry that did not answer.
- The NIMC record photo and the live selfie are compared in the same step, so a borrowed NIN fails even when the number is real.
- A signed verification receipt with a UTC timestamp per step, anchored on Base L2 with zero personal data on chain, checkable at proof.deepidv.com.
Capturing the NIN slip and other IDs
The NIN slip has no meaningful security features, so its value is the number, not the paper. Name order, initials and spelling often differ between a customer's NIN record, BVN record and bank profile. deepidv scores name matches tolerantly (order, initials, common spelling variants) and returns the score with the decision, so a real customer is not rejected over a swapped first and middle name.
NIMC and BVN record checks
A NIN check returns the enrolment record: name, date of birth, gender and photo. A BVN check returns the record held by NIBSS. deepidv compares both with the captured data and the live face. Every Nigerian deployment processes and stores data in Nigeria, under the Nigeria Data Protection Act 2023.
Liveness, face match and CBN rules
The CBN AML/CFT/CPF Regulations 2022 require customer due diligence before or during onboarding, enhanced due diligence for higher-risk customers, and ongoing monitoring. deepidv runs passive liveness and a face match to the NIMC photo, then PEP and sanctions screening against Nigerian and international lists. Arbiter monitors transactions after onboarding and drafts STRs in goAML-ready format for the NFIU.
How deepidv runs Nigeria verification
deepidv is a verification engine and agentic compliance suite built from the ground up. The engine is SOC 2, ISO 27001 and PCI DSS certified, and deepidv is a member of DIACC and the AVPA. Luna, the verification agent, builds and sends Nigeria verification workflows from the platform or from any LLM through MCP. Arbiter, the compliance agent, maps the workflow to the CBN AML/CFT/CPF Regulations 2022 requirements, monitors accounts after onboarding and drafts suspicious transaction reports for the NFIU for your team to review.
Frequently asked questions
Can a NIN be validated offline?
Only for length and digits. The NIN has no embedded fields and no published check digit, so the NIMC record check is what proves it.
What is the difference between a NIN and a vNIN?
The vNIN is a temporary token the holder generates for one organisation, so the organisation can verify identity without receiving or storing the raw NIN.
Is the BVN the same as the NIN?
No. The NIN comes from NIMC and covers every enrolled resident. The BVN comes through the banking system and links a person's bank accounts.
What does the NIMC record check return when the name on the NIN record does not match the account name?
deepidv returns a name-match score alongside the decision, so you can set the threshold and route near-matches to review rather than rejection.
Where is the data held?
In Nigeria. Every Nigerian deployment processes and stores data in-country.
API documentation
Read the endpoints, field names and webhook events in the docs, or book a call to scope Nigeria verification for your product.
Related pages