Errors & rate limits
How Merchant API reports failures and how throttling works.
Error shape
Errors typically look like:
{
"success": false,
"message": "Human-readable summary",
"error_type": "insufficient_scope",
"data": {}
}Auth & access
invalid_api_key— 401merchant_api_disabled— 403kyb_not_complete— 403 (live key before business KYB complete)ip_not_allowed— 403insufficient_scope— 403
Customers / KYB
kyb_incomplete— 422 on submit;data.missinglists gapsinvalid_status_transition— 422 when submit/update is not allowedinvalid_document_type— 422
Rate limits
Bearer Merchant routes are throttled at 120 requests / minute per API credential. When exceeded, expect HTTP 429. Back off and retry with jitter.
Webhook delivery failures
If your receiver does not return 2xx, Bitstac retries with backoff (1m, 5m, 30m, 2h, 12h) until max retries. Inspect deliveries in Developers → Webhooks. See Webhooks.
