Skip to main content

Errors & Rate Limits

Error format

{
"status": "error",
"code": "INVALID_PHONE",
"message": "The recipient phone number is not valid E.164 format.",
"details": {
"field": "recipient_phone",
"value": "0501234567"
}
}

Common error codes

CodeHTTPDescription
UNAUTHORIZED401Missing or invalid API key
MISSING_PARAMS400Required field missing
INVALID_CURRENCY400Use USDT or USDC for withdrawals
INVALID_AMOUNT400Invalid amount format
INVALID_PHONE400Phone must be +233 + 9 digits
INVALID_NETWORK400Use MTN, TELECEL, or AIRTELTIGO
MISSING_REFERENCE400reference_id required on withdrawals
BELOW_MINIMUM422Below network minimum
ABOVE_MAXIMUM422Above network or tier maximum
NOT_FOUND404Resource not found
INVALID_STATE409Invalid state transition (e.g. cancel non-pending intent)
VALIDATION_ERROR400Schema validation failed
INTERNAL_ERROR500Server error — retry with backoff

Retry guidance

SituationAction
4xx (except 429)Fix the request — do not retry blindly
429Retry after Retry-After
5xx / timeoutRetry with exponential backoff; reuse same reference_id

Rate limits

PlanRequests/minRequests/day
Sandbox6010,000
Production300100,000

Contact partners@fiatsend.com for higher limits.