Documentation Index
Fetch the complete documentation index at: https://waffo.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
An error code consists of an alphabetic prefix + digits:
| Prefix | Category | HTTP status code |
|---|
| 0 | Success | 200 |
| Axxxxx | Merchant-related errors | 400-401 |
| Bxxxxx | User-related errors | 400 |
| Cxxxxx | System-related errors | 500-503 |
| Dxxxxx | Risk control rejection | 406 |
| Exxxxx | Unknown errors | 500 |
Category E errors (unknown errors): Caused by an unknown state in Waffo’s internal systems or third-party systems. Merchants must continuously query the transaction status until a final success/failure result is returned.
Full error code list
Success
| Error code | Description | HTTP |
|---|
| 0 | Success | 200 |
| Error code | Description | HTTP |
|---|
| A0001 | Invalid API secret key | 401 |
| A0002 | Invalid signature | 401 |
| A0003 | Parameter validation failed | 400 |
| A0004 | Permission denied | 401 |
| A0005 | Merchant limit exceeded | 400 |
| A0006 | Abnormal merchant status | 400 |
| A0007 | Unsupported transaction currency | 400 |
| A0008 | Transaction limit exceeded / payment amount must be within the allowed range | 400 |
| A0009 | Order does not exist | 400 |
| A0010 | Merchant contract does not allow this operation | 400 |
| A0011 | Idempotency parameter mismatch error | 400 |
| A0012 | Insufficient merchant account balance | 400 |
| A0013 | Payment has succeeded; the order cannot be canceled | 400 |
| A0014 | Refund not allowed due to refund rules | 400 |
| A0015 | Payment channel not supported; the order cannot be canceled | 400 |
| A0016 | Payment channel rejected; the order cannot be canceled | 400 |
| A0017 | Payment channel not supported; the order cannot be refunded | 400 |
| A0018 | The user has no available payment method | 400 |
| A0019 | Refund not allowed due to a chargeback dispute | 400 |
| A0020 | Payment amount exceeds the transaction limit | 400 |
| A0021 | Cumulative payment amount exceeds the daily transaction limit | 400 |
| A0022 | Multiple products detected; the merchant must specify the product name | 400 |
| A0023 | Token has expired; the order cannot be created | 400 |
| A0024 | Exchange rate has expired; the order cannot be processed | 400 |
| A0026 | The checkout page language specified by the merchant is not supported | 400 |
| A0027 | The number of refunds has exceeded the maximum of 50 | 400 |
| A0029 | Invalid card data provided by the merchant | 400 |
| A0030 | Unable to find the card BIN provided by the merchant | 400 |
| A0031 | The card scheme or card type provided by the merchant is not supported | 400 |
| A0032 | Invalid payment token data provided by the merchant | 400 |
| Error code | Description | HTTP |
|---|
| B0001 | Abnormal user status | 400 |
| B0002 | User limit exceeded | 400 |
| B0003 | Insufficient user balance | 400 |
| B0004 | The user did not complete the payment within the timeout period | 400 |
| B0005 | User authorization failed | 400 |
| B0006 | Invalid phone number | 400 |
| B0007 | Invalid email format | 400 |
| Error code | Description | HTTP |
|---|
| C0001 | System error | 500 |
| C0002 | Invalid merchant contract | 500 |
| C0003 | Invalid order status; unable to proceed to the next step | 500 |
| C0004 | Order information mismatch error | 500 |
| C0005 | Payment channel rejection | 503 |
| C0006 | Payment channel error | 503 |
| C0007 | Payment channel under maintenance | 503 |
D - Risk control rejection
| Error code | Description | HTTP |
|---|
| D0001 | Risk control rejection | 406 |
E - Unknown errors
| Error code | Description | HTTP |
|---|
| E0001 | Unknown status | 500 |