curl --request PATCH \
--url https://staging.crossmint.com/api/2026-09-16/payment-methods/{paymentMethodId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"default": true
}
'{
"bankAccount": {
"accountHolder": {
"document": {
"suffix": "7890",
"type": "cc"
},
"name": "Carlos Gómez"
},
"accountSuffix": "7890",
"accountType": "savings",
"country": "CO",
"currency": "cop",
"entityType": "individual",
"institutionId": "co-bancolombia"
},
"createdAt": "2026-08-20T19:10:00.000Z",
"paymentMethodId": "1cad2281-bd3d-4219-8787-7dfea94c60b1",
"reason": null,
"status": "pending",
"statusReason": null,
"type": "bank-account-co",
"updatedAt": "2026-08-20T19:12:11.000Z"
}Update a Payment Method
Update the default status of an existing payment method
curl --request PATCH \
--url https://staging.crossmint.com/api/2026-09-16/payment-methods/{paymentMethodId} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '
{
"default": true
}
'{
"bankAccount": {
"accountHolder": {
"document": {
"suffix": "7890",
"type": "cc"
},
"name": "Carlos Gómez"
},
"accountSuffix": "7890",
"accountType": "savings",
"country": "CO",
"currency": "cop",
"entityType": "individual",
"institutionId": "co-bancolombia"
},
"createdAt": "2026-08-20T19:10:00.000Z",
"paymentMethodId": "1cad2281-bd3d-4219-8787-7dfea94c60b1",
"reason": null,
"status": "pending",
"statusReason": null,
"type": "bank-account-co",
"updatedAt": "2026-08-20T19:12:11.000Z"
}default can be changed.
Returns
Returns the updated PaymentMethod object.Authorizations
Query Parameters
Identifies the target user when authenticating with a server API key. Format: <type>:<value> (e.g., email:alice@example.com, userId:abc123, phoneNumber:+12125551234, twitter:alice). Required for API-key authentication; ignored when authenticating with a JWT (the JWT subject is used).
Body
- Option 1
- Option 2
Only default and label can change. The type, card details, and account numbers cannot change after creation.
Response
The updated payment method.
- CO bank account
- MX CLABE
- AE bank account
- ID bank account
- IL bank account
- JO bank account
- NG bank account
- PH bank account
- TH bank account
- TR bank account
- VN bank account
- US bank account
- SEPA IBAN
- CR bank account
- CO Bre-B key
- Card
A saved payment method. Sensitive fields (full PAN, CVC, full account numbers, IBANs, Bre-B keys) are never included.
Whether a payout provider serves this destination. 'pending' while the readiness checks run, 'active' when a provider advertises a rail for it, 'rejected' when it cannot receive funds, 'deleted' when it was deleted. This describes the destination only, never the payer's eligibility. 'pending' moves to 'active', 'rejected' or 'deleted'; 'active' moves to 'rejected' or 'deleted'; 'rejected' moves only to 'deleted'. Branch on this field, never on statusReason.
active, deleted, pending, rejected Why the status is 'rejected'. Null on every other status, and on a rejection with no established destination condition. Known values today: destination-not-found, destination-closed, destination-cannot-receive, no-rail-available. New codes can appear at any time, so branch on status and treat an unrecognised code as the status alone.
Was this page helpful?

