Skip to main content
Use these endpoints to verify a customer’s Bank Verification Number (BVN) as part of your merchant KYC workflow. Both basic and enhanced modes are supported. Base paths:
  • Sandbox: https://sandbox.payvessel.com/kyc
  • Production: https://api.payvessel.com/kyc
All paths below are relative to the base URL.

Basic BVN verification

POST /api/v1/merchant/bvn/basic Send a BVN and minimal identity fields to confirm that the BVN is valid and belongs to the customer. Typical request body fields:
  • bvn – 11‑digit BVN
  • Optional identity fields such as name, date of birth, and phone number for extra matching
  • reference – unique reference for this verification
Basic BVN is suitable when you only need to confirm that the BVN is valid and linked to the customer.

Enhanced BVN verification

POST /api/v1/merchant/bvn/enhanced Enhanced verification returns a richer profile for stricter compliance checks. Typical request body fields:
  • bvn – 11‑digit BVN
  • Additional KYC attributes as required by your risk policy
  • reference – unique verification reference
Enhanced BVN is recommended for onboarding that requires full KYC (e.g. higher limits, business accounts).

Example (basic BVN)

curl -X POST "https://sandbox.payvessel.com/kyc/api/v1/merchant/bvn/basic" \
  -H "Content-Type: application/json" \
  -d '{
    "bvn": "12345678901",
    "reference": "BVN_BASIC_2026_001"
  }'

Example (enhanced BVN)

curl -X POST "https://sandbox.payvessel.com/kyc/api/v1/merchant/bvn/enhanced" \
  -H "Content-Type: application/json" \
  -d '{
    "bvn": "12345678901",
    "reference": "BVN_ENH_2026_001",
    "metadata": {
      "customer_id": "CUST_12345"
    }
  }'