Error Codes
All errors share one envelope:
{"error": {"code": "invoice_not_found", "message": "Invoice not found.", "request_id": "req_01j…", "details": {}}}
| HTTP | Code |
|---|---|
| 401 | invalid_api_key, unauthorized |
| 403 | forbidden, merchant_inactive |
| 400 | invalid_request |
| 422 | validation_error, unsupported_asset, unsupported_network, unsupported_currency, no_payment_address, idempotency_key_reused |
| 404 | invoice_not_found, payment_not_found, transaction_not_found, not_found |
| 409 | invoice_expired, invoice_cancelled, invoice_not_cancellable, duplicate_external_id, idempotency_in_progress |
| 429 | rate_limit_exceeded |
| 500 | internal_error (no stack traces in production) |