Create a card
Cards
Create Card
Issue a new virtual USD card to an enrolled customer, optionally with an initial funding amount.
POST
Create a card
Overview
POST /cards issues a new virtual USD card to one of your customers. The card is usable immediately for online payments wherever Visa or Mastercard is accepted. If you provide an amount, the card is funded from your USD wallet in the same call.
When to use it
- A customer needs a card for the first time.
- An existing customer needs an additional card (you can issue more than one card per customer).
Prerequisites
- Customer must already exist via
POST /customersand haveKYCstatusAPPROVED. - Your company USD wallet must have a balance covering the issuance fee plus the optional initial
amount. - The customer’s country must be supported for card issuance (most African and many other countries — contact support for the current list).
Request
Headers
Body
Idempotency: This endpoint does not currently accept an idempotency key. To avoid duplicate cards on network retries, store the resulting card.id in your own database before retrying.
Response
201 — Card created (and funded if amount > 0)
Error responses
Webhooks fired
After a successful create call, you will receive (in order):card.created— once the upstream issuer confirms the card.transaction.funding.completed— only ifamount > 0.
Code examples
cURL
Node.js (axios)
Python (requests)
Related
- Cards Overview — limits, statuses, and PCI DSS notes.
POST /cards/{id}/fund— add funds later.GET /cards/{id}— retrieve full (or revealed) card details.- Webhooks — payloads emitted after creation.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
application/json