Skip to main content
Spending controls let you restrict how much a cardholder can spend per transaction and which merchant categories they can transact with. These controls are optional and can be set at card creation or updated later.

Per-transaction limits

Set a maximum amount for each individual transaction. The limit must be greater than 0 and cannot exceed the system-defined maximum authorization threshold.

Set at card creation

Include spending_controls in the Create Card request:

Update on an existing card

Use the Update Card endpoint:
Response:
The change takes effect after the card.update.succeeded webhook fires.
Only the PER_TRANSACTION interval is currently supported. The currency matches the card’s card_currency. When omitted during card creation, the system defaults to the account-level maximum per-transaction authorization limit.

MCC controls

Merchant Category Code (MCC) controls restrict which types of merchants a card can transact with. You can define either an allowlist or a blocklist, but not both.

Allowlist (allowed_mcc)

Only transactions with MCCs in this list are accepted. All other MCCs are declined.

Blocklist (blocked_mcc)

Transactions with MCCs in this list are declined. All other MCCs are accepted.
allowed_mcc and blocked_mcc cannot be set at the same time. Set one or the other, or omit both.

Set MCC controls

Include risk_controls at card creation or use the Update Card endpoint:
Response:

Declined transaction example

When a transaction is declined due to MCC controls, the authorization webhook shows transaction_status: DECLINED with a description indicating the reason: