Errors
The API returns standard HTTP status codes with a JSON error body.
HTTP Status Codes
| Code | Meaning | Description |
|---|---|---|
| 200 | Success | Request completed successfully |
| 201 | Created | Resource created successfully |
| 400 | Bad Request | Invalid parameters or request body |
| 401 | Unauthorized | Missing or invalid API key |
| 403 | Forbidden | Insufficient permissions |
| 404 | Not Found | Resource does not exist |
| 405 | Method Not Allowed | HTTP method not supported for this endpoint |
| 406 | Not Acceptable | The supplied lookup value cannot be processed (includes a duplicate ref) |
| 409 | Conflict | The resource is in a state that does not allow this operation (e.g. a terminated card) |
| 422 | Unprocessable | Validation failed |
| 429 | Too Many Requests | Rate limit exceeded |
| 500 | Internal Server Error | Server error, retry later |
Error Response Format
{
"status": false,
"description": "Insufficient balance",
"status_code": 400
}
Common Errors
| Error | Cause |
|---|---|
Insufficient balance | Wallet balance too low |
Invalid bank code | Bank code not found in bank list |
Invalid account number | Account number format incorrect |
Duplicate reference | Reference already used for a previous transaction |
Rate limit exceeded | More than 60 POST requests per minute from one source IP |
Was this page helpful?