reseller

PUT /v1/wallet/settings

Set your low-balance warning and automatic top-up.

All reseller endpoints

Authentication

Send an API key as a bearer token. The key must carry the billing.payment.manage permission; a key without it is refused with 403, not 404.

Where your organisation id goes

This endpoint takes org_id as a query parameter. Leave it out and the call covers your whole tenancy subtree; send it to narrow the call to one organisation.

Your organisation id is on the API keys screen in your dashboard, beside the key itself. It is the same id in every call you make.

Try it

Replace anything in angle brackets with your own values, and the key placeholder with a key from your dashboard.

curl -X PUT https://api.zinndigital.com/v1/wallet/settings \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{  }'

Signed in? The API console in your dashboard fills in your real organisation id and your own key, and runs the request against the live API so you can see the actual response. Open this endpoint in the API console

Details

⚖️ Both settings are the customer's to choose — *"notificaitons when low they can set"* and *"can they set the wallet to auto topup before payments are due so they can be taken from the waller (fallback to card/paypal or whateer they have setup)"* (owner, 2026-08-22). The fallback in that sentence is already how checkout works: credit is spent first and the remainder goes to the card, so an automatic top-up that has not fired yet never blocks a payment. Switching automatic top-up on without an amount is a 422. ⭐ Saving **clears the disarm counter**. A standing instruction switches itself off after three consecutive failures, and a customer arriving at this screen after being told so has just fixed something — leaving them disarmed would mean their fix silently did nothing. Requires `billing.payment.manage`.

Parameters

NameTypeRequiredWhat it is
currency (query)stringNoISO-4217 code these settings apply to.
org_id (query)UuidNoWhich of your organizations this applies to. Required only when you belong to more than one here — otherwise it is inferred, and an id outside your direct memberships is a 404 r…

Request body

NameTypeRequiredWhat it is
low_balance_threshold_minorintegerNo
auto_topup_enabledbooleanNo
auto_topup_trigger_minorintegerNo
auto_topup_amount_minorintegerNo
auto_topup_payment_method_idUuid | nullNo

Response

NameTypeRequiredWhat it is
org_idUuidYesUUIDv7 identifier — sortable by creation time (docs/02 §8).
currencystringYes
low_balance_threshold_minorintegerYesWarn when spendable credit falls below this. **`0` means off**, not "warn me at zero": a customer who never chose one holds `0`, and reading that as a threshold would warn every…
auto_topup_enabledbooleanYes
auto_topup_trigger_minorintegerNoBuy more credit when the balance falls below this.
auto_topup_amount_minorintegerNoHow much to add when the rule fires.
auto_topup_payment_method_idUuid | nullNoWhich saved method to charge. `null` uses the account's default.
auto_topup_disarmedbooleanNo⭐ **The state a customer most needs to see and can least infer.** A standing instruction switches itself off after three consecutive failures, and `auto_topup_enabled` stays `tr…
auto_topup_last_failurestringNoWhy the last attempt failed, in words safe to show the customer.
auto_topup_last_run_atstring | nullNo

Errors this endpoint can return

401 · 403 · 422 · 429