Identity checks that keep answering when a source goes down.
NIN, vNIN and BVN checks routed across licensed identity sources. If one is slow or down, the next answers in seconds. If they all are, the check waits and finishes itself. You’re never billed for a failure.
- RegistryNo answer, so we moved on4.0 s
- Licensed source BFound · record matched1.2 s
Outages are the identity registry’s problem. Not your onboarding funnel’s.
Each check type has a ranked route of sources. A source that times out or errors is skipped, and a circuit breaker keeps checks away from it until it recovers.
When every source is down, the check is queued and retried automatically. You get a verification.completed webhook the moment it resolves.
Funds are held when a check starts and charged only when it completes. Timeouts, outages and checks that fail for good are released in full.
Four checks, one API, one bill.
Try every check in the sandbox now, with test identities and an outage simulator. Live checks open business by business once your wallet is funded.
POST /v1/kyc/nin/basicPOST /v1/kyc/nin/premiumPOST /v1/kyc/vninPOST /v1/kyc/bvn/validateMatch scores first. Records only when you need them.
Most onboarding decisions need a yes or no on each field, not a copy of someone’s government record. So that’s what we return by default.
- Per-field match scores. First name, last name, date of birth and phone, each scored 0 to 100.
- Record fields by approval. Only for businesses approved for a stated purpose, and only from sources whose contract allows it.
- We don’t keep the number. NINs and BVNs are stored as a scrambled index, so the console can find a customer without holding their number.
- A purpose on every check. Each request carries a purpose code and, if you have one, a consent reference.
Your first call takes a minute.
Keys, webhooks, a request log and an OpenAPI 3.1 spec all live in the KYC console. The sandbox works the same as live, and you can break it on purpose.
- Idempotency keys on every check, so a retry never runs or bills twice.
- Outage simulator: send
X-Simulate-Outage: registryand watch the failover happen. - Bulk CSV in the console for backlogs of up to 50,000 rows.
# A NIN check. Your API address and keys are in the console. curl -X POST "$VERATH_API/v1/kyc/nin/basic" \ -H "Authorization: Bearer $VERATH_KEY" \ -H "Idempotency-Key: onb_7731" \ -d '{"nin":"70000000006","first_name":"Ngozi", "last_name":"Lagbaja","purpose":"KYC-ONB"}' # 200 OK { "status": "completed", "found": true, "match": { "first_name": 100, "last_name": 100 }, "route": [{ "source": "Registry", "outcome": "timeout" }, { "source": "Licensed source B", "outcome": "found" }], "cost": { "billed": true } }
Getting ready for the CBN’s AML rules?
We’ll go through your onboarding and screening against the rules and show you the gaps. Free, and no obligation.
Protecting your own NIN or BVN?
Verath Identity Monitoring alerts you every time your NIN or BVN is checked, so you can say “not me” before fraud happens.
