SET Merchant API · Customers
Close a customer
POST/v1/customers/{id}/close
Offboards a customer in one call: each active virtual account is deactivated, then its Cash-Out Addresses are retired, its recipients disabled and the customer marked closed. A closed customer opens nothing new. Repeating the call after it closed changes nothing.
Path parameters
idstringrequired- The customer's id.
Headers
Idempotency-Keystring- Optional. The same key and body run once; a replay answers with
Idempotent-Replayed: true. Kept 24 hours.
Notes
- Events
virtual_account.deactivated,cash_out_address.retired,recipient.disabled, thencustomer.closed.GET /v1/customers/{id}showsclosedAt. - If the provider refuses a deactivation the customer stays open (
502) and the call can be repeated. - What closing does not do, as the answer's
notessay: a Cash-Out Address cannot be deactivated at the provider, so it is retired in SET only and a payment still sent to it is paid to the bank and recorded. Custodial wallets are not touched; their balance stays the customer's. Payments and payouts under way run their course. Data held by the provider stays under its own retention. - Afterwards every create that names the customer, and
/reactivateon its virtual accounts, answers409 customer_closed.
Errors
404 customer_unknown502 bridge_unavailable401 api_key_required401 api_key_invalid401 api_key_wrong_mode403 scope_missing429 rate_limited