Error Handling
The API uses standard HTTP status codes and returns consistent error objects.Response Format
All responses follow this structure:Error Codes
| Code | HTTP Status | Description |
|---|---|---|
INVALID_API_KEY | 401 | API key is invalid or not found |
INVALID_SIGNATURE | 401 | Signature verification failed |
INSUFFICIENT_BALANCE | 402 | Not enough deposit balance |
INVALID_PRODUCT | 400 | Product SKU not found or inactive |
INVALID_CUSTOMER_NO | 400 | Customer number / game ID is invalid |
DUPLICATE_REF_ID | 409 | Reference ID has already been used |
ORDER_NOT_FOUND | 404 | Order with given ref_id not found |
PRODUCT_OUT_OF_STOCK | 400 | Product is currently out of stock |
RATE_LIMIT_EXCEEDED | 429 | Too many requests, please slow down |
IP_NOT_WHITELISTED | 403 | Request IP is not in your whitelist |
INTERNAL_ERROR | 500 | Server error, please try again later |
MAINTENANCE | 503 | System is under maintenance |
Best Practices
Always check the
success field in the response before processing the data.- Retry with exponential backoff for 5xx errors
- Don’t retry 4xx errors — fix the request first
- Log all error responses for debugging
- Use unique ref_id for every order to prevent duplicates

