Cardholder requirements
- Call List Products and follow the target product’s
required_fields. Enhanced KYC products requireidentity,residential_address, andkyc_verification. If the product only requires Simplified KYC fields, the existing cardholder creation flow remains unchanged. - The combined length of
first_nameandlast_namemust not exceed 26 letters. residential_address.postal_codemust be 4–10 characters long, inclusive.
Overview
Prerequisites
Before making API calls, obtain an access token:auth_token in all subsequent requests via the x-auth-token header.
Step 1: Check Product Requirements
Call List Products to identify which fields your target product requires.required_fields array. An Enhanced KYC product will include identity, residential_address, and kyc_verification as required fields. Here is an example of an Enhanced product (BIN 46651711):
The
required_fields tell you exactly what information is needed. Only fields marked "required": true are mandatory — optional fields can be omitted.Step 2: Create Cardholder with Enhanced KYC
Call Create Cardholder with the full set of required fields pluskyc_verification.
There are two verification methods — choose the one that fits your use case:
Option A: SUMSUB_REDIRECT
Use this if you want UQPAY to handle identity verification via Sumsub. You will receive an IDV URL to redirect your cardholder to.INCOMPLETE status with an IDV link:
idv_verification_url to complete identity verification, then wait for the webhook notification (Step 3).
Option B: THIRD_PARTY
Use this if you have already completed identity verification through your own KYC provider and have a proof reference.kyc_proof.reference_id must be at least 10 characters and globally unique.Step 3: Wait for KYC Approval (SUMSUB_REDIRECT only)
If you usedSUMSUB_REDIRECT, subscribe to the cardholder.kyc.status_changed webhook to receive real-time KYC status updates.
Webhook payload example (KYC approved):
cardholder_status becomes SUCCESS, the cardholder is ready for card issuance.
Cards cannot be issued while the cardholder is in
PENDING status. Wait for KYC approval before proceeding.Step 4: Create Card
Oncecardholder_status is SUCCESS, call Create Card:
The sample below uses
card_currency: "USD" for sandbox. In production, set card_currency to XUSD.Error Handling
KYC insufficient at card creation
If you attempt to create a card but the cardholder hasn’t met the product’s KYC requirements, you will receive an error withmissing_fields indicating which fields are still needed:
- Update the cardholder first via Update Cardholder, then retry card creation.
- Supply the missing fields inline by passing
cardholder_required_fieldsin the Create Card request.
Cardholder in PENDING status
Creating a card while the cardholder’scardholder_status is PENDING will be rejected. Wait for the KYC review to complete before retrying.
