🚀 VaultsPay API v1 is live. See what's new →
Errors

Errors

All errors are returned as a JSON body. The type field is the machine-readable enum name, code is the numeric code, and message is the human-readable description.

Response Structures

Standard Error

Returned for most errors — a flat object with no errors array.

{
  "code": 1010,
  "message": "Invalid request.",
  "type": "BAD_REQUEST"
}

Validation Error

Returned when request payload fails validation (INVALID_PAYLOAD). Includes an errors array detailing each offending field.

{
  "code": 1000,
  "message": "Invalid payload. Please check your request.",
  "type": "INVALID_PAYLOAD",
  "errors": [
    {
      "key": "email",
      "reason": "must not be blank"
    }
  ]
}

Action Required Error

Returned when a prerequisite action must be completed before proceeding.

{
  "code": 1035,
  "message": "Please complete the prerequisite actions.",
  "type": "ACTION_REQUIRED",
  "errors": [
    {
      "key": "actionRequired",
      "reason": "<action_type>"
    }
  ]
}

Error Code Reference

Authentication & Session

HTTPCodeTypeMessage
4011002UNAUTHENTICATEDYou are not authenticated. Please login to continue.
4011003TOKEN_EXPIREDYour access token has expired. Please get a new token.
4011004SESSION_EXPIREDYour session has expired. Please login again.
4001036INVALID_TOKENInvalid access token provided.

Authorization & Access

HTTPCodeTypeMessage
4031001UNAUTHORISEDYou do not have permission to access this resource.
4031006BANAccess to this resource is forbidden.
4031007IP_NOT_WHITELISTEDYour IP is not whitelisted.
4031008NO_PRIVILEGEInsufficient Privilege.

Rate Limiting

HTTPCodeTypeMessage
4291005THROTTLEToo many requests. Please try again later.
5001050TRANSACTION_LOCKED_BY_RULETransaction has been locked.

Request Validation

HTTPCodeTypeMessage
4221000INVALID_PAYLOADInvalid payload. Please check your request.
5001018INVALID_HEADERSInvalid HTTP headers.

Account Status

HTTPCodeTypeMessage
5001012ACCOUNT_INACTIVEYour account status is inactive.
5001013ACCOUNT_SUSPENDEDYour account is suspended.

Configuration & Setup

HTTPCodeTypeMessage
5001009PARENT_NOT_FOUNDParent not configured properly. Please contact VaultsPay support.
5001015INVALID_CONFIGInvalid internal configuration.
5001020THIRD_PARTY_CONFIG_NOT_FOUNDThird party config not found.

Transaction Errors

HTTPCodeTypeMessage
5001017INVALID_TRANSACTIONInvalid transaction. Please contact VaultsPay support.
5001019DUPLICATE_TRANX_IDDuplicate UUID provided.
5001021CHARGE_ACCOUNT_MISSINGThe charge account is missing.
5001022INSUFFICIENT_BALANCEInsufficient balance.
5001023TRANSACTION_TYPE_NOT_FOUNDTransaction type not found.
5001024THIRD_PARTY_NOT_FOUNDThird party not found.
5001025SENDER_ACCOUNT_NOT_FOUNDSender account not found.
5001026RECEIVER_ACCOUNT_NOT_FOUNDReceiver account not found.
5001027TRANSACTION_CURRENCY_NOT_FOUNDTransaction currency not found.
5001028CURRENCY_NOT_FOUNDCurrency not found.
5001029SENDER_RECEIVER_ACCOUNTS_SAMEBoth sender and receiver accounts are same.
5001030CURRENCY_MISMATCHSender and receiver account currencies do not match.
5001031DUPLICATE_GATEWAY_REF_IDDuplicate gateway Ref ID provided.
5001032TRANSACTION_REFERENCE_MISSINGTransaction reference ID not provided.
5001033FULL_AMOUNT_PAIDFull amount has already been paid.
5001034TRANSACTION_PREVENTED_BY_RULEOne of the rules for this transaction has failed.
5001038SETTLEMENT_NOT_FOUNDSettlement not found.
5001039SETTLEMENT_AMOUNT_NOT_FOUNDSettlement amount not found.
5001040TRANSACTION_NOT_FOUNDTransaction not found.
5001041CONFIG_ACCOUNT_USER_CONFLICTSThird party config user and account holder conflicts.
5001042INVALID_SETTLEMENT_STATUSInvalid settlement status.
5001044CHARGE_AMOUNT_GREATER_THAN_TRANSACTIONCharge amount is greater than transaction amount.
5001045SENDER_ACCOUNT_INACTIVESender account is not active.
5001046RECEIVER_ACCOUNT_INACTIVEReceiver account is not active.
5001051TRANSACTION_PREVENTED_BY_PREVENT_RULETransaction prevented due to prevent rule.
5001052TRANSACTION_PREVENTED_BY_CHARGE_RULETransaction prevented due to charge rule.
5001053TRANSACTION_PREVENTED_BY_FRAUD_RULETransaction prevented due to fraud rule.
5001054TRANSACTION_PREVENTED_BY_LIMIT_RULETransaction prevented due to limit rule.
5001055TRANSACTION_PREVENTED_BY_USER_SECURITY_RULETransaction prevented due to security rule.
5001055TRANSACTION_PREVENTED_BY_KYC_RULETransaction prevented due to user’s KYC status.
5001064THIRD_PARTY_TRANSACTION_FAILURETransaction failed at third party.
5001069TRANSACTION_ALREADY_REVERSEDTransaction already reversed.
5001070SENDER_ACCOUNT_NOT_FOUND_ON_THIRDPARTYSender account does not exist on the third party.
5001071RECEIVER_ACCOUNT_NOT_FOUND_ON_THIRDPARTYReceiver account does not exist on the third party.

Resource Not Found

HTTPCodeTypeMessage
4041047NOT_FOUNDRequest resource not found.
5001056NO_RULES_FOUNDNo rules found.
5001057USER_NOT_FOUNDUser not found.
5001058PHONE_NOT_FOUNDPhone not found.
5001059EMAIL_NOT_FOUNDEmail not found.
5001060USER_NAME_NOT_FOUNDUsername not found.
5001061ACCOUNT_NOT_FOUNDAccount not found.
5001062ACCOUNT_NOT_FOUND_AT_THIRDPARTYAccount not found at third party.
5001065ADDRESS_NOT_FOUNDThe address fields are required.

Card Errors

HTTPCodeTypeMessage
5001043INVALID_TOKEN_OR_CARD_IDInvalid card ID or token provided.
5001063CARD_EXPIREDCard expired.
5001067CARD_CREATION_FAILEDCard request is malformed, please check the request and try again.

Verification & Security

HTTPCodeTypeMessage
5001014OTP_REQUIREDOTP verification is required.
5001035ACTION_REQUIREDPlease complete the prerequisite actions.
5001037RECAPTCHA_REQUIREDreCAPTCHA verification is required.
5001048RECAPTCHA_SCORE_TOO_LOWreCAPTCHA score too low.
4221049DECRYPTION_FAILEDError while decrypting request.

Smart Auth

HTTPCodeTypeMessage
4041080SMART_AUTH_REQUEST_NOT_FOUNDSmart Auth request not found.
4101081SMART_AUTH_REQUEST_EXPIREDSmart Auth request has expired.
4091082SMART_AUTH_INVALID_STATESmart Auth request is in an invalid state for this operation.
4291083SMART_AUTH_MAX_ATTEMPTSMaximum verification attempts exceeded.
4001084SMART_AUTH_INVALID_TOKENInvalid or expired challenge token.
4221085SMART_AUTH_VERIFICATION_FAILEDSmart Auth verification failed.
4231086SMART_AUTH_ACCOUNT_LOCKEDAccount locked due to too many failed verification attempts.
4291087SMART_AUTH_RATE_LIMITEDToo many pending Smart Auth requests. Please try again later.
4091088SMART_AUTH_TAMPER_DETECTEDAction payload fingerprint mismatch.
4001089SMART_AUTH_ACTION_NOT_CONFIGUREDSmart Auth action type is not configured or disabled.
4001090SMART_AUTH_UNSUPPORTED_METHODVerification method is not supported.
5021091SMART_AUTH_CALLBACK_FAILEDExternal provider callback failed.
4221092SMART_AUTH_BIOMETRIC_UNAVAILABLEBiometric verification is not available for this device.
4221093SMART_AUTH_PASSCODE_NOT_SETPasscode is not configured for this user.
4091094SMART_AUTH_ALREADY_CONSUMEDSmart Auth request has already been consumed and cannot be reused.
4221095SMART_AUTH_INVALID_PASSCODEInvalid passcode provided.

Passcode & Device

HTTPCodeTypeMessage
4031096PASSCODE_REQUIREDPasscode verification is required.
4011097INVALID_PASSCODEInvalid passcode provided.
4231098PASSCODE_LOCKEDToo many failed passcode attempts. Please try again later.
4221099PASSCODE_NOT_SETPasscode is not configured. Please set your passcode first.
4031100CONTACT_SUPPORT_FOR_RESETPlease contact support to reset your credentials.
4031101DEVICE_LIMIT_EXCEEDEDMaximum device limit reached. Please remove a device or contact admin.
2021102DEVICE_SWITCH_PENDINGLogin approval is pending on your other device.
4031103DEVICE_SWITCH_DECLINEDLogin request was declined from the other device.
4101104MAGIC_LINK_EXPIREDThis magic link has expired or is invalid.
4091105MAGIC_LINK_ALREADY_USEDThis magic link has already been used.

System Errors

HTTPCodeTypeMessage
5001010BAD_REQUESTInvalid request.
5001011INTERNAL_ERRORSomething unexpected went wrong. Please contact VaultsPay support.
5031016SERVICE_DOWNThe service is currently not available at the moment.
5041066GATEWAY_TIMEOUTGateway timeout.
5001068DATA_ELELEMT_PARSINGAn error occured in parsing FAST data element.
5001047INVALID_BASIC_AUTHInvalid Basic Auth Credentials.
5009999UNKNOWN_ERRORUnknown error. Please try again later.

Default HTTP status: Any error code not listed in the HTTP mappings above defaults to 500 Internal Server Error.