Webhooks
Card Issuance Status Update
Fired when a Virtual Card finishes provisioning, either becoming active or being declined by the card partner.
Use this webhook to
- Know the moment a card finishes issuance and is ready to use
- Know when the partner declines a card, and confirm the issuance debit was refunded
- Avoid polling Get Card while waiting on a pending card
Events
| Event | Fired when |
|---|---|
card.created |
Issuance completes and the card is live |
card.failed |
The partner declines the issuance; the issuance debit is refunded |
Payloads
card.created
{
"event": "card.created",
"data": {
"tracking_id": "EXTCARD…",
"customer_uuid": "…",
"card_id": "…",
"label": "John Doe USD Card",
"brand": "visa",
"currency": "USD",
"masked_pan": "539983******1234",
"last4": "1234",
"exp_month": "08",
"exp_year": "2029",
"cardholder_name": "JOHN DOE",
"balance": 20.00,
"status": "active"
}
}card.failed
{
"event": "card.failed",
"data": {
"tracking_id": "EXTCARD…",
"customer_uuid": "…",
"card_id": "…",
"status": "failed"
}
}Payload fields
| Field | Type | Description |
|---|---|---|
tracking_id |
string | Card id |
customer_uuid |
string | Customer this card belongs to |
card_id |
string | Reference used in other card webhook events |
label |
string | Card label; created event only |
brand |
string | e.g. visa created event only |
currency |
string | USD |
masked_pan / last4 |
string | Masked card number; created event only |
exp_month / exp_year |
string | Expiry; created event only |
cardholder_name |
string | Name on the card; created event only |
balance |
number | Card balance; created event only |
status |
string | active or failed |
Related
- Issue Card and Get Card, see the Virtual Cards section
- See Overview & Signature Verification for how to verify the
x-hitchpay-signatureheader before trusting this payload
Questions? Email [email protected]. Also on GitBook.