Skip to main content
Errors are returned with an HTTP status code and a message:

Authentication & access errors

Encryption errors

Validation errors

Request bodies are validated after decryption. Validation failures return 400 with a field: message string, for example:

Rate limiting

Service availability

Business-logic errors

Endpoint-specific failures (insufficient balance, invalid bank account, unsupported network, etc.) also return 400 with a descriptive message. Treat any unrecognised 400 message as non-retryable without changing the request.
Retry guidance: retry 429 (after the block window) and 5xx with exponential backoff. Do not blindly retry 400 responses on money-moving endpoints. Verify state first with Verify Withdrawal or Get Transactions to avoid duplicate transfers.