Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.stablepay.global/llms.txt

Use this file to discover all available pages before exploring further.

Overview

Users must complete KYC verification before they can transact. Only users with a verified status can perform on/offramp transactions.

Requirements

  • Phone number (required at user creation)
  • One identity document (see below)
  • Verified bank account (penny drop)
  • PEP declaration

Identity Verification

DocumentEndpointHow it works
Aadhaar/kyc/digilocker/initVia DigiLocker integration
PAN/kyc/pan/verifyVerified against government DB
Indian Passport/kyc/passport/verifyUpload PDF — auto-verified
International Passport/kyc/passport/internationalUpload photo/PDF — auto-verified via OCR

Flow

  1. Create user with phone number
  2. Verify identity — submit any one document from the table above
  3. Verify bank account — via penny drop
  4. Submit PEP declaration — confirm whether the user is a politically exposed person
  5. KYC status moves to verified — user can transact
If the user declares isPep: true, KYC will be automatically rejected.

KYC Status

StatusMeaning
pendingNo verification started
in_progressAt least one step completed, or awaiting manual review
verifiedAll requirements met, user can transact
rejectedKYC rejected (PEP or compliance)
Check status at any time:
curl https://api.stablepay.global/v2/users/{userId}/kyc/status \
  -H "Authorization: Bearer YOUR_API_KEY"

Webhooks

You’ll receive a webhook when KYC status changes:
{
  "event": "user.kyc_updated",
  "data": {
    "userId": "usr_abc123",
    "kyc": {
      "level": "basic",
      "status": "verified"
    }
  }
}

Need Help?

KYC requirements can vary based on your integration and user geography. Reach out to our team at hello@stablepay.global for guidance.