Skip to main content
All errors follow this format:
Codes are grouped by domain:

General Errors

Authentication Errors

Account / Access Errors

API Key Errors

Trading Errors

Returned by deposit, withdrawal, inventory, and market endpoints.

Asynchronous Trade Failure Codes

The errors above are returned synchronously when a call is rejected. A withdrawal that was accepted but later fails carries a separate, smaller, stable code instead — on Item.error (and on Trade.error when the whole trade failed for one shared cause), typed as TradeFailureCode. These are not numeric API error codes; they appear on the trade object and in callbacks. canceled and declined items carry no code — the status is the reason. A declined withdrawal is buyer fault: your merchant wallet is refunded minus a 2% penalty (capped at $9). See Withdrawals → Per-Item Failure Reasons for handling guidance.

Wallet / Funding Errors

Mostly returned by crypto wallet endpoints, but several apply to trading flows too.

Callback / Webhook Errors

Risk Management Errors

Identity Verification Errors

Handling Errors

Check success first, then handle based on the error code or key:
When contacting support about an error, include the requestId from the response. It helps us trace the exact request in our logs.