Error Code Registry

Error codes the RizPay Developer API can return and how to handle them.

These are the error codes the RizPay Developer API can return, grouped by the HTTP status they accompany. A few Developer API codes are returned as literal strings and are documented in Error Handling: AUTHENTICATION_REQUIRED, ENVIRONMENT_MISMATCH, PURCHASE_NOT_FOUND, and INVALID_STATUS.

For the Developer API response format and the codes you are most likely to encounter when integrating, start with Error Handling.

Each code is a stable, machine-readable identifier returned in error.code. Match on the code, never on the message text: messages can change, codes do not.

How to read this page

  • Code: the machine-readable identifier returned in error.code.
  • Description: what triggers the error.
  • User-facing message: the message shown to end users where one is mapped. Codes without a mapped message return a context-specific message.
  • The HTTP status in each section heading is the status.code the API returns for codes in that section.

Authentication Errors (HTTP 401)

CodeDescriptionUser-facing message
AUTH_REQUIREDNo authentication token providedPlease sign in to continue.
INVALID_CREDENTIALSWrong email/password combinationThe email or password you entered is incorrect. Please try again.
TOKEN_EXPIREDJWT token has expired-
TOKEN_REVOKEDToken has been revoked (user logged out elsewhere)-

Authorization Errors (HTTP 403)

CodeDescriptionUser-facing message
FORBIDDENGeneral authorization failureYou don't have permission to perform this action.
INSUFFICIENT_SCOPEAPI client lacks required scope-
API_DISABLEDAccount API access turned off-
IP_NOT_ALLOWEDIP not in whitelist-

Validation Errors (HTTP 400)

CodeDescriptionUser-facing message
VALIDATION_ERRORGeneral validation failurePlease check your input and try again.
MISSING_PARAMETERRequired field not providedSome required information is missing. Please provide all required details and try again.
INVALID_PARAMETERField value fails validation-
INVALID_PHONE_NUMBERInitiation called with a missing or malformed phone numberThat doesn't look like a valid phone number. Please check it and try again.
INVALID_AMOUNTInvalid amount value-
DUPLICATE_REFERENCEDuplicate transaction reference-

Resource Not Found Errors (HTTP 404)

CodeDescriptionUser-facing message
NOT_FOUNDGeneric not found-
TRANSACTION_NOT_FOUNDTransaction doesn't existThis transaction could not be found.
PRODUCT_NOT_FOUNDProduct doesn't exist or inactiveThis product is no longer available. Please select a different one.

Rate Limiting Errors (HTTP 429)

CodeDescriptionUser-facing message
RATE_LIMIT_EXCEEDEDGeneral rate limit hitFor your security, we've paused new attempts. Please wait a moment and try again.

Financial Transaction Errors (HTTP 400)

CodeDescriptionUser-facing message
INSUFFICIENT_BALANCEAccount balance too lowYou don't have enough funds. Please top up your wallet and try again.
TRANSACTION_FAILEDGeneral transaction failureWe couldn't complete your transaction. Please try again, and contact support if you were charged.
PURCHASE_FAILEDPurchase processing failed-
PRODUCT_UNAVAILABLEProduct or provider down.This product is currently unavailable. Please try again later or choose a different option.
PROVIDER_PRICE_CHANGEDProvider price has changed since product was last synced - user must retryThis product's price has been updated. Please go back and try again.
PROVIDER_ERRORExternal provider failure-
TRANSACTION_LIMIT_EXCEEDEDAmount over limit-
INVALID_STATUSWrong transaction status for action-

Server Errors (HTTP 500)

CodeDescriptionUser-facing message
INTERNAL_ERRORUnhandled exceptionSomething went wrong on our end. Please try again. If the problem continues, contact support.
SERVICE_UNAVAILABLEExternal service downThis service is no longer available. Please choose a different option.

Next Steps