Skip to main content
The two accounts are provisioned in separate stages.

Stage 1: NGN local account

Triggered by: POST /onboarding/start-nigeria Required at call time: The BVN is verified and used to auto-populate KYC profile fields. Proxy users run a single wallet address across currencies, so the NGN wallet is mirrored onto the USD fields server-side — no separate USD wallet address is passed here.
Helper lookups (verify without saving): GET /kyc/bvn-lookup/:bvn and GET /kyc/nin-lookup/:nin return the holder’s details so you can pre-fill or confirm before submitting.
Test BVN: use 22222222222 in the sandbox. It returns a fixed set of holder details and always verifies successfully — real BVNs are not accepted outside production.
Personal Info Address (must be a Nigerian address) Identification Numbers

Stage 2: USD international account — Enhanced Due Diligence

Triggered by: POST /kyc/activate Nigeria is a high-risk jurisdiction, so the USD account requires Enhanced Due Diligence (EDD). All USD core requirements apply, plus: Employment Financial / Compliance Identification Document (uploaded)
  • At least one document of type: passport, drivers_license, national_id, or government_id
  • Must include a front or additional image file
  • documentNumber — required
  • issuingCountryCode — required

Key notes

  • BVN verification happens automatically during the Nigeria onboarding workflow. The KYC profile is populated from the verified BVN data.
  • The Nigeria workflow only provisions the NGN (local) account. The USD account is provisioned later via POST /kyc/activate, then POST /onboarding/start-usa (gated on GET /kyc/usd-readiness), once KYC data is complete.