Create a card
Issues a virtual or physical card once the customer's application is approved. The first card gets the application's ID. Each further card needs a new Idempotency-Key; a customer can hold 10 cards, not counting blocked ones. Gravv sets a PIN for you; read it with GET /v1/cards/{card_id}/pin. Fund the card with a transfer whose destination is the card.
Headers
1 to 255 printable ASCII characters. A retry with the same key within 24 hours returns the first response. Use a new key for each new card or withdrawal, and the same key to retry a failed one.
Request Body
Spending limit in whole USD per day. Decimals are dropped.
Possible values: virtual, physical
Required for a physical card. address_line2 is not read.
Send it as a string, so leading zeros are kept
Alpha-2 code
Possible values: standard, express, international, apc, uspsInternational, overnight
How the card is funded. shared joins a card group and shares its balance; without card_group_id it joins the cardholder's default group. own gives the card its own balance. Leave it out to use the application's group.
Possible values: shared, own
Only with shared
Cardholder's IP address, for own on some live cards
Cardholder's yearly income, for own on some live cards
Request Examples
{
"customer_id": "9e3cccad-e9ae-47a0-81ee-063af0159310",
"card_limit": 50,
"card_type": "virtual",
"name_on_card": "Jane Doe"
}
Responses
| Status | Description |
|---|---|
200 |
The card is issued |
400 |
Invalid field, no approved application, the card cap reached, or the card could not be created. Field errors use names such as CardLimit and CountryISOCode. |
200 response
Always false
{
"data": {
"message": "Card creation request is processing",
"status": true,
"id": "dce0192a-9b3d-440b-9500-33dc9ac8dc20",
"fee_charged": false
},
"error": null
}
400 response
What went wrong
{
"data": null,
"error": "card application is not yet approved!"
}
Authorization
- ApiKeyAuth