Skip to main content
Cards have two separate controls: a budget and throttles.

spendCap: the budget

The total amount a topUp card can ever spend. Setting it via Update spend control replaces the total, not an increment: to add USD 1,000 to a USD 1,500 cap, send 2500.00. A cap below what’s already been spent fails with 400 SPEND_CAP_TOO_LOW.

spendControl.limits: the throttles

Optional per-transaction and per-period limits, evaluated on top of the budget: Each limit is an { "amount": "100.00", "currency": "USD" } pair. The API reports what each period has already used under spendControl.spent, so you can compare spent.monthly against limits.monthly.

Replace semantics

PUT /cards/{cardId}/spend-control replaces the whole object: send every limit you want to keep; a limit you omit is removed.

restriction.time

Separately, restriction.time limits the hours of day a card can be used, in UTC. For example { "start": "09:00", "end": "18:00" }. Managed with Update restriction.