Create Card
Cards
Create Card
Issue a new virtual Mastercard or Visa prepaid card programmatically. Specify cardholder, amount, and product. POST /cards.
POST
Create Card
Overview
Issue a new virtual card to a cardholder. The cardholder must have verified KYC status and your business wallet must have sufficient balance for the card amount plus fees.Prerequisites
- Verified Cardholder: The cardholder must exist and have
status: ACTIVE - Sufficient Balance: Wallet must cover:
amount (in USD) + issuanceFee - Active Application: Your app must be in
ACTIVEstatus
Request Body
Example Usage
EUR Card Example
When issuing a EUR-denominated card, theamount is specified in EUR. Your wallet (USD) is debited the equivalent in USD at the current exchange rate.
Response Fields
Card Status on Creation
Cards are provisioned asynchronously by the card provider. When a card is not ready in the create response, the API returns immediately withstatus: CREATING (or PROCESSING on legacy products) and card details (last4, maskedNumber, expiryDate) will be null. Provisioning usually completes within seconds but can take up to ~1 hour.
Once the card is ready, a card.created webhook is sent with the full card details and status: ACTIVE. If creation fails, a card.failed webhook is sent and the held balance is released.
You can poll
GET /cards/{cardId} to check the card status, but we strongly recommend using webhooks instead of polling.Webhook Events
card.created
Sent when a PROCESSING card becomes active:
card.failed
Sent when a PROCESSING card fails to be created. The held balance is automatically released.
Error Responses
Authorizations
JWT access token obtained from /auth/token
Body
application/json
ID of the cardholder to issue card to
Initial funding amount in product currency (minimum $5 or €5)
Required range:
x >= 5Name on card (defaults to cardholder name if not provided)
Minimum string length:
4Card product to issue (from List Products endpoint). Determines brand, currency, and spending limit. Defaults to the product marked isDefault if not provided.
Example:
"MCUSD1"
Deprecated — Use productId instead. Monthly spending limit in USD.
Available options:
5000, 10000 
