API
Errors
Failed requests return JSON with error (machine code) and message (human readable).
| Code | HTTP | When |
|---|---|---|
| unauthorized | 401 | Missing or invalid secret key |
| forbidden | 403 | Key valid but action not allowed (e.g. live key before activation) |
| validation_error | 422 | Invalid request body or query |
| idempotency_key_required | 422 | Idempotency-Key header missing on a required route |
| payments_not_enabled | 422 | Payments not enabled for your merchant account |
| merchant_pending_review | 422 | Account not yet active for live operations |
| rate_limited | 429 | Too many requests — back off and retry |
| payment_session_not_found | 404 | Session id unknown or not owned by your platform |
| otp_expired | 422 | OTP code or request has expired |
| otp_invalid | 422 | Wrong OTP code |
