Error Codes

HTTP status codes and application error codes from the Gateway API.

Error format

Failed process-transfer calls return success: false with an error object. Validation errors use Nest's standard format.

Transfer error
{
  "success": false,
  "message": "Insufficient wallet balance",
  "error": {
    "code": "INSUFFICIENT_BALANCE",
    "message": "Partner escrow wallet balance is insufficient"
  }
}
Validation error
{
  "statusCode": 400,
  "message": ["phoneNumber: Phone number must be a valid Uganda number (256XXXXXXXXX)"],
  "error": "Validation Failed"
}

Error reference

CodeHTTPDescription
TRANSACTION_NOT_FOUND404No transaction matches the given ID or partner reference.
INSUFFICIENT_BALANCE400Partner wallet balance too low for send modes.
TRANSFER_FAILED400Transfer rejected by provider or internal processing.
INVALID_REQUEST400Invalid transaction mode or missing required fields.
Validation Failed400Request body failed class-validator checks.
Unauthorized401Missing, invalid, expired, or revoked API key.
Too Many Requests429Partner rate limit exceeded.