A card’sDocumentation Index
Fetch the complete documentation index at: https://ramps-moonrise-limestone.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
fundingSources array is the ordered list of internal accounts
Authorization Decisioning can pull from when an auth lands. The first
entry is tried first. This page covers binding at issue time and
replacing the binding via PATCH /cards/{id}.
At issue time
You supply the initialfundingSources array on POST /cards. Every
card must be bound to at least one source.
- Belong to the cardholder (no cross-customer funding in v1).
- Be denominated in a card-eligible currency (USDB in v1).
- Match the card’s currency. All sources bound to a single card share one currency.
409 FUNDING_SOURCE_INELIGIBLE.
Replacing the binding
PATCH /cards/{id} accepts a fundingSources field that fully
replaces the previous binding. Array order is the new priority order —
first entry is tried first by Authorization Decisioning.
PATCH is a sensitive state change, so it uses the
202 → signed-retry flow described in
Freezing and closing cards.
The same flow covers state, fundingSources, or both fields supplied
together.
CARD.FUNDING_SOURCE_CHANGE fires on every successful update with the
post-change Card resource.
Errors
| Status | Code | What it means |
|---|---|---|
| 409 | FUNDING_SOURCE_INELIGIBLE | A supplied account doesn’t belong to the cardholder or isn’t denominated in the card’s currency. |
| 409 | CARD_NOT_MUTABLE | The card is CLOSED. |
| 400 | INVALID_INPUT | The fundingSources array is empty (a card must have at least one source). |
Stopping a card from spending
You cannot remove all funding sources from a card — the array must contain at least one entry. To stop a card from spending without detaching it from its funding source, transition it toFROZEN:
DELETE /cards/{id}.
v1 behavior: single active source
PATCH /cards/{id} accepts an arbitrary-length ordered array, but in
v1 Authorization Decisioning only reads the first entry. Additional
sources are accepted and stored so you can stage multi-source
decisioning ahead of the v1.5+ rollout, but they don’t change
auth-time behavior today.