Skip to content
VerathYour digital identity. Reimagined.

Guide

Reading a result

Match-first results: found, match_result, match scores, route and cost.

Verath is match-first. You send the details your customer gave you, and Verath tells you whether each one matches the official record. You don’t get the record itself unless your business is approved for records and the source allows it.

An example result

200 OK
{
  "reference_id": "chk_3c5e1f0a9b2d4c7e8f6a1b2c3d4e5f60",
  "object": "check",
  "check": "nin_basic",
  "status": "completed",
  "found": true,
  "source": "registry",
  "source_ref": "sbx_8f29a712c4e01b5d",
  "id_number": { "type": "nin", "last_digits": "0006" },
  "match": { "first_name": 100, "last_name": 100, "dob": 100 },
  "match_result": { "first_name": "match", "last_name": "match", "dob": "match" },
  "route": [{ "source": "registry", "outcome": "found", "latency_ms": 412, "ref": "sbx_8f29a712c4e01b5d" }],
  "latency_ms": 431,
  "error": null,
  "cost": { "billed": false, "amount_kobo": 0, "currency": "NGN" },
  "customer": { "id": "cus_9a7b…", "customer_ref": "cust_1042" },
  "purpose": "KYC-ONB",
  "consent_ref": null,
  "mode": "test",
  "created_at": "2026-11-11T15:32:00.112Z",
  "completed_at": "2026-11-11T15:32:00.543Z",
  "retry": null,
  "data": null,
  "data_policy": "match_only"
}

The fields that matter

FieldMeaning
statuscompleted (found or not found), pending (no source answered yet; retried automatically) or failed (gave up after 72 hours).
foundWhether the number exists on the record. false is an answer too, and is billed like one.
match_resultFor each field you sent: match (95+), partial (50–94: a typo, a middle name used as a first name, day and month swapped) or no_match. Face and liveness: high, medium or low.
matchThe 0–100 score behind each result, computed by Verath, so it means the same whichever source answered.
id_numberThe type and last digits of the number. Verath never stores the full number.
source, source_ref, routeWhich source answered (by label), its reference for the call, and every source tried with its timing.
costWhat this check was billed, in kobo. Pending and failed checks are never billed.
data, data_policyRecord fields, if any, and why they are or aren't there (below).

data_policy

ValueWhat it means
match_onlyYour business gets match results only. data is null.
recordsYour business is approved for records and the source allows it: data has the record fields. They're sent once and never stored.
source_match_onlyYou're approved for records, but the source that answered only allows match results.
not_storedA replay of an earlier request (same Idempotency-Key). Record fields aren't kept, so only the match result comes back.

Deciding what to do

  • All match: the person’s details agree with the record.
  • Partial: close but not exact. Common causes are typos, a middle name in the first-name field, or day and month swapped. Ask the person to check, or review it by hand.
  • No match or not found: don’t onboard on this check alone. Ask for the details again, or send a link with a face check.

Every check also appears in the console under Customers, with a PDF certificate you can file. See Reading a check in the Verath Console.