Skip to main content
GET
https://api.stablepay.global
/
v2
/
users
/
{userId}
/
kyc
/
status
Get KYC Status
curl --request GET \
  --url https://api.stablepay.global/v2/users/{userId}/kyc/status \
  --header 'Authorization: Bearer <token>'

Get KYC Status

Returns the current KYC verification status for all methods.

Request

curl https://api.stablepay.global/v2/users/usr_abc123/kyc/status \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "success": true,
  "data": {
    "level": "basic",
    "status": "verified",
    "digilocker": {
      "verified": true,
      "status": "completed",
      "completedAt": "2025-01-05T10:00:00Z"
    },
    "aadhaar": {
      "verified": true,
      "maskedNumber": "XXXX-XXXX-1234",
      "nameOnAadhaar": "RAHUL KUMAR",
      "verifiedAt": "2025-01-05T10:00:00Z"
    },
    "pan": {
      "verified": true,
      "maskedNumber": "XXXXX1234X",
      "nameOnPan": "RAHUL KUMAR",
      "nameMatchScore": 95,
      "verifiedAt": "2025-01-05T10:05:00Z"
    },
    "bank": {
      "verified": true,
      "maskedAccountNumber": "XXXXXX7890",
      "bankName": "HDFC Bank",
      "ifsc": "HDFC0001234",
      "verifiedAt": "2025-01-05T10:10:00Z"
    },
    "face": {
      "verified": false
    },
    "upi": {
      "verified": false
    }
  }
}

KYC Levels

LevelRequirementsCan Transact
noneNo verifications completeNo
basicAadhaar + PAN + Bank (all required)Yes
enhancedBasic + Face + UPI (reserved for future)Yes

KYC Status Values

StatusDescription
pendingNo verifications started
in_progressSome verifications complete, but not all required
verifiedAll required verifications complete (Aadhaar, PAN, Bank)
rejectedKYC rejected (manual review)

Required vs Optional Verifications

VerificationRequiredNotes
Aadhaar (DigiLocker)YesGovernment ID verification
PANYesTax ID verification
BankYesPayout destination
FaceNoOptional anti-fraud
UPINoOptional alternative payout