| Code | Description | Action |
|---|---|---|
| 0 | Success | Mark as Success |
| 1 | Insufficient funds | Mark as Failed |
| 2 | Transfer limit exceeded | Mark as Failed |
| 3 | Internal server error | Mark as Failed |
| 4 | Third party internal server error | Mark as Failed |
| 5 | Invalid debit account (B2C) | Mark as Failed |
| 6 | Invalid credit account | Mark as Failed |
| 7 | Transfer amount below limit | Mark as Failed |
| 8 | Invalid transaction element | Mark as Failed |
| 9 | Duplicate transaction | Query Using originatorConversationID |
| 10 | Server busy | Mark as Failed |
| 11 | Transaction not found | Retry With Same ID |
| 12 | General error | Escalate |
| 13 | Third party general failure | Mark as Failed |
| 14 | Inconclusive status | Escalate |
| 402 | Insufficient wallet balance | Mark as Failed |
| 16 | Third party system unavailable | Query |
| 17 | AML Check failure | Mark as Failed |
| 18 | Declined | Mark as Failed |
| 19 | Validation failed | Mark as Failed |
| 20 | Third party integration error | Escalate |
| 21 | Unmapped code | Escalate |
| 22 | Partner timeout | Escalate |
| 202 | Request accepted for processing | Wait for callback |
| 200 | Request processed successfully | Wait for callback |
| 400 | Bad request. For example, this happens when there is a validation error(missing fields) or when there is a duplicate entry(originatorConversationId) | Mark as Failed |
| 401 | Unauthorized request, Bearer token expired or invalid credentials | Mark as Failed |
| 404 | Request URL not found | Mark as Failed |
| 429 | Too many requests | Escalate |
| 500 | Internal server error | Mark as Failed |
| 999 | Your transaction cannot be completed at this moment. Please try again later. - System Code: 1 | Mark as Failed |