Idverra verifies identity documents, runs liveness and screens against sanctions and PEP lists across African markets — behind a single API that does not change shape when you enter a new country.
Sandbox access is immediate and unmetered. Production requires a signed data processing agreement and takes about a day.
Illustrative response · sandbox payload
Nigeria verifies against BVN and NIN, through two agencies with different uptime and different tolerance for load. Ghana has the Ghana Card. Kenya has Huduma and the older national ID register. South Africa has Home Affairs. None of them agree on field names, image standards, error semantics or what a timeout means.
A fintech expanding across three markets does not write one verification service. It writes three, then maintains them separately while each upstream source degrades on its own schedule — usually at month end, when volume peaks.
Idverra absorbs that. One request shape, one response shape, one decision model. When a government source is slow we fail over to a secondary and tell you which one answered, rather than returning an error your support team has to interpret.
| Market | Primary sources | Fallback |
|---|---|---|
| NigeriaNG | BVN · NIN · Passport · DL | Voter register |
| GhanaGH | Ghana Card · Passport | SSNIT |
| KenyaKE | National ID · Huduma · KRA PIN | Passport |
| South AfricaZA | Home Affairs ID · Passport | Credit bureau |
| UgandaUG | National ID · Passport | — |
| SenegalSN | CNI · Passport | ECOWAS card |
Every stage is logged with its own timing, its own result and its own source. When a regulator asks why a customer was approved, the answer is a record rather than a reconstruction.
Document image and selfie arrive from your app or our drop-in SDK.
~ 40 msOCR and MRZ parsing pull the fields, with a tamper check on the document itself.
~ 310 msExtracted identity is checked against the government source for that market.
~ 900 msPassive liveness plus face match against the document portrait and source photo.
~ 420 msSanctions, PEP and adverse media, with fuzzy matching tuned for local name forms.
~ 180 msA decision against your thresholds, written to an immutable audit record.
~ 60 ms| Method | Path | Purpose |
|---|---|---|
| POST | /v2/verifications | Run a verification |
| GET | /v2/verifications/:id | Fetch result and stage timings |
| POST | /v2/screenings | Screen without verifying |
| GET | /v2/audit/:ref | Retrieve the audit record |
| POST | /v2/reviews/:id/decide | Resolve a manual review |
| GET | /v2/coverage | Live source availability |
Median response time measured over the trailing thirty days, including upstream time. Where a government source is unavailable, the fallback column is what answers instead.
| Market | Sources | Median | Liveness | Status |
|---|---|---|---|---|
| Nigeria | 6 | 1.8s | Passive + active | Operational |
| Ghana | 4 | 2.1s | Passive + active | Operational |
| Kenya | 5 | 2.4s | Passive + active | Operational |
| South Africa | 4 | 2.9s | Passive | Degraded |
| Uganda | 3 | 3.1s | Passive | Operational |
| Tanzania | 3 | 3.4s | Passive | Operational |
| Senegal | 3 | 2.7s | Passive | Operational |
| Egypt | 3 | 3.8s | Passive | Beta |
Figures shown are illustrative of the format published on the live status page, which reports real measured values per market and per source.
Generic screening engines flag every Ibrahim Mohammed against every sanctioned Ibrahim Mohamed, then leave a two-person compliance team to clear hundreds of hits a week. The cost of a bad matcher is not a missed criminal — it is an alert queue nobody can keep up with.
Idverra scores name similarity against transliteration variants, patronymic ordering, and the spelling conventions of the markets it operates in, then shows you why a hit scored what it did. Every alert carries the list, the entry, the score and the reason.
Cleared alerts stay attached to the customer record, so the next screening run does not surface a decision your team already made.
| List | Closest entry | Score | Result |
|---|---|---|---|
| OFAC SDN | No entry above threshold | 0.41 | Clear |
| UN Consolidated | No entry above threshold | 0.38 | Clear |
| EU Sanctions | No entry above threshold | 0.35 | Clear |
| PEP · domestic | Okonkwo, A. — state official | 0.72 | Review |
| Adverse media | No entry above threshold | 0.29 | Clear |
Nobody has ever failed an inspection because their verification was slow. They fail because they cannot evidence, eighteen months later, what was checked and who decided.
Every record is write-once and retrievable by reference through the API for seven years, including the exact list versions used at the time of screening.
Manual decisions carry the reviewer, the timestamp, and the note they wrote — not just a status change with no author.
Personal data for each market is stored in-region where local law requires it, and never leaves the region for processing.
Examiner-ready exports for any date range, as structured data or as a signed PDF bundle, generated without engineering involvement.
Set the match threshold too low and bad actors get through. Set it too high and your team drowns in manual review while good customers abandon sign-up. Move it here and watch both sides move.
Distribution modelled on a typical consumer wallet onboarding mix. Your real curve depends on document quality, source coverage and fraud pressure in your segment — we fit it against your first ten thousand verifications during onboarding, at no charge.
| Tier | Monthly volume | Per verification | Screening | Support |
|---|---|---|---|---|
| Sandbox | Unlimited | Free | Included | Docs & community |
| Starter | to 10,000 | $0.09 | Included | Email, 1 business day |
| Growth | 10,001 – 100,000 | $0.07 | Included | Shared Slack channel |
| Scale | 100,001 – 500,000 | $0.05 | Included | Named engineer, 4 hr SLA |
| Enterprise | 500,000+ | Negotiated | Included | SLA, dedicated region |
A verification that cannot complete because an upstream government source is unavailable is not billed, and does not count toward your tier.
A customer retrying a failed capture inside a day is the same verification, billed once — not three attempts billed three times.
Sanctions, PEP and adverse media are part of the per-verification price, including ongoing monitoring of customers you have already onboarded.
Tiers apply automatically at the volume you actually do. There is no minimum spend and no contract term on anything below Enterprise.
Unmetered sandbox access with full coverage across every live market, so you can test the decision model against real document formats before anyone signs anything.