Documentation

Introduction

VerifyX is a verification platform with one API for identity, document, and biometric checks, AML and sanctions screening, transaction monitoring, and Nigerian rails - BVN, NIN, NUBAN, and CAC. Every product returns a signed decision in seconds and stores zero user PII.

The base URL for all requests is https://api.verifyx.com. Looking for the interactive reference? See the Swagger API reference.

Authentication

Authenticate with a secret API key in the Authorization header. Keys are created in the dashboard, hashed at rest, and shown in full only once.

Authorization: Bearer vfx_live_••••••••

Quickstart

Verify an identity - an ID document plus a selfie - in a single call:

curl https://api.verifyx.com/v1/identity \
  -H "Authorization: Bearer $VERIFYX_API_KEY" \
  -F id_front=@id.jpg \
  -F selfie=@selfie.jpg \
  -d customer_user_ref="usr_8f2a"

# 200 OK
{ "decision": "approved", "risk_score": 0.11,
  "check_scores": { "face_match": 0.89, "liveness": 0.97, "doc_quality": 0.91 } }

Webhooks

Results are delivered to your configured endpoint as HMAC-SHA256-signed events. Verify the X-Verify-Signature header against the timestamp and body before trusting a payload.

{
  "id": "evt_9x2kJ4mPqR",
  "type": "verification.approved",
  "data": { "decision": "approved", "risk_score": 0.11, "check_scores": { ... } }
}

Verification products

Each product is an independent endpoint - compose only what you need.

Identity Verification

The complete identity check. Choose an ID type - including Nigerian NIN and BVN - then compose document capture, facial liveness, and address verification in a single guided flow.

POST/v1/identity
curl https://api.verifyx.com/v1/identity \
  -H "Authorization: Bearer $KEY" \
  -F id_type="passport" \
  -F id_front=@id.jpg \
  -F selfie=@selfie.jpg \
  -F checks="document,facial,address" \
  -d customer_user_ref="usr_8f2a"

Parameters

  • · ID type
  • · Document image(s)
  • · Selfie
  • · Optional: utility bill for address

Returns

  • · decision
  • · face_match
  • · liveness
  • · doc_quality
  • · address_match
Product overview

Document Verification

Standalone document OCR and authenticity. Parse the MRZ, validate the document, detect tampering and expiry - without a person match. 190+ countries.

POST/v1/documents
curl https://api.verifyx.com/v1/documents \
  -H "Authorization: Bearer $KEY" \
  -F front=@passport.jpg

Parameters

  • · Document front
  • · Optional: document back

Returns

  • · doc_quality
  • · mrz_valid
  • · doc_type
  • · expiry check
  • · tamper_risk
Product overview

AML & Sanctions Screening

Screen a person or business against global sanctions lists, politically-exposed-persons databases, and adverse-media watchlists. Normalised to clear / possible / hit.

POST/v1/screening
curl https://api.verifyx.com/v1/screening \
  -H "Authorization: Bearer $KEY" \
  -d name="Ada Okafor" -d country="NG"

Parameters

  • · Full name
  • · Optional: DOB, nationality

Returns

  • · result (clear/possible/hit)
  • · matched_lists
  • · confidence
Product overview

Transaction Monitoring

Stream transactions and score them in real time against AML typologies, velocity rules, and behavioural risk. Flags structuring, mule activity, and anomalies for review.

POST/v1/monitoring/events
curl https://api.verifyx.com/v1/monitoring/events \
  -H "Authorization: Bearer $KEY" \
  -d customer_user_ref="usr_8f2a" \
  -d amount=950000 -d currency="NGN" -d type="transfer"

Parameters

  • · Transaction event
  • · Customer reference
  • · Amount, counterparty

Returns

  • · risk_score
  • · flags[]
  • · action (allow/review/block)
Product overview

Bank Account Verification

🇳🇬 NG

Confirm ownership of a Nigerian bank account by resolving a NUBAN account number and bank code to the registered account name - essential for payouts and lending.

POST/v1/accounts
curl https://api.verifyx.com/v1/accounts \
  -H "Authorization: Bearer $KEY" \
  -d account_number="0123456789" -d bank_code="058"

Parameters

  • · Account number (NUBAN)
  • · Bank code

Returns

  • · account_name
  • · bank
  • · name_match (if expected name given)
Product overview

Business Verification (KYB)

🇳🇬 NG

Confirm a Nigerian business is real and registered by checking its RC number against the Corporate Affairs Commission, with directors and status. Built for merchant onboarding.

POST/v1/business
curl https://api.verifyx.com/v1/business \
  -H "Authorization: Bearer $KEY" \
  -d rc_number="RC1234567"

Parameters

  • · RC number
  • · Optional: business name

Returns

  • · registration status
  • · company_name
  • · directors
  • · type
Product overview

SDKs

Official SDKs: a React Native (Expo) mobile SDK with on-device capture, a zero-dependency web SDK (web components), and server libraries for Node and Python.

Errors

VerifyX uses conventional HTTP status codes. Error bodies include a stable code and an actionable message.

{ "error": { "code": "invalid_bvn", "message": "BVN must be 11 digits." } }

Ready to build?

Create a sandbox key and verify your first user today.

Get your API key