Card KYC and activation

Verify a cardholder with a liveness check and activate cards for them. The /v1/risk routes serve cards only.

Before you can issue cards to a customer, the customer must pass KYC with a liveness check, and you must activate the card feature (virtual_cards) for them. The card KYC endpoints under /v1/risk/ do both. Activating virtual_cards creates the customer's card application.

Which KYC flow to use

Both flows record the same KYC result on the customer, so completing basic KYC in either one counts for cards.

You want to Use
Verify a customer for accounts, transfers and other products KYC (/v1/customers/kyc/*)
Verify a customer who will get a card, with liveness captured in the same step Verify a cardholder (/v1/risk/start-kyc)
Activate cards for a customer who is already verified Activate feature. If the customer has no liveness check yet, activation returns a liveness link

Do not mix the two document-upload flows for one customer, because each flow stores documents under its own type names.

Never call POST /v1/risk/start-kyc for a customer whose KYC is already completed. It resets their KYC to pending until the review finishes again, which can block their accounts and cards in the meantime. Check the customer's kyc basic status with Get a customer first.

Card activation workflow

To issue cards to a customer:

  1. Complete the customer's basic KYC with a liveness check, through either flow above.
  2. Find your business's card account, which is an active account of type card (GET /v1/accounts?account_type=card&status=active). Its id is the account_id you send at every activation. Your business has one card account. If you can't find it, set it up.
  3. Check feature eligibility to see what the customer still needs.
  4. Activate the feature with feature_id virtual_cards and the required provider_data.
  5. Find the customer's card application and card through the cards endpoints.

Features in the catalogue

List features returns a catalogue of six features: virtual_cards, crypto_wallet, eur_account, international_transfers, usd_account and gbp_account. The /v1/risk/ routes serve cards only. Activate virtual_cards here, and open accounts, wallets and payouts with their own APIs.

Feature activation status

A feature is either activated for a customer or not. For virtual_cards, activated means the card application was submitted. It does not mean a card was issued. See Activate feature.

Was this page helpful?