Skip to main content
POST/api/v1/kyc/bvn/verify
Match a user’s selfie against the photo held for their Nigerian BVN or NIN, and retrieve the full identity record in the same call.

Headers

Body parameters

Applies to both POST /api/v1/kyc/bvn/verify and POST /api/v1/kyc/nin/verify.

Response

The BVN endpoint returns the BVN identity record with a nested selfie_verification object (confidence_value and match). Response trimmed for readability.

Verify NIN with a selfie

Call POST /api/v1/kyc/nin/verify with nin and selfie_image (and optional first_name / last_name / threshold) to match a selfie against the photo on file for a NIN. It returns the NIN identity record with the same selfie_verification object.
POST /api/v1/kyc/nin/verify
200 — /api/v1/kyc/nin/verify

Errors

Default threshold is 90%

If you omit threshold, Dojah uses 90. selfie_verification.match is true only when confidence_value is at or above that cutoff.90% is a strict default — it keeps impersonation risk low, but genuine users can fail when lighting, camera angle, or an older ID photo is weaker. If that is too strict for your flow, set threshold yourself anywhere from 50 to 100, based on your risk tolerance:
  • Closer to 100 — stricter match. Fewer false accepts; more genuine users may fail.
  • Closer to 50 — more selfies pass, including weaker matches. Lower threshold means higher risk.
Values below 50 are rejected. Leave threshold unset if 90 matches your risk appetite.