Skip to main content
Every error response carries an err_code. Branch on it, not on message. When a field is wrong, errors names it.

Fix and resend

Most 400 and 401 codes. Sending the same request again won’t help.

Retry with backoff

429, 500, 503 and NET_TIMEOUT. Wait 1s, double each time, stop after 3 to 5 tries.

Stop and escalate

RISK_AML_FAILED, or a 5xx that keeps coming back. Contact support@zapyd.com.
For retry timing and what to show users, see Error handling.

General

Any endpoint can return these.

Request validation

Every code from here down returns HTTP 400.

Customers

KYC

Bank accounts

Orders

Payins and payouts share these codes with a PAYIN_ or PAYOUT_ prefix.

Risk and compliance

By endpoint

Every endpoint can also return the general codes, including SYS_INTERNAL_ERROR.