Skip to main content

Failure Reason/eWallet Error

Below is the list of common error and failure codes in eWallet payment, void, and refund.

Error Codes for eWallet Charge Endpoint

Error CodeError Message
API_VALIDATION_ERROR
400
There is invalid input in one of the required request fields
UNSUPPORTED_CURRENCY
400
The payment currency request is not supported for this payment channel. Please refer to our API reference or docs to pick available currencies
INVALID_PAYMENT_METHOD_ID
400
There is a mismatch between the requested channel_code or customer_id against the values used during creation of the specified payment_method_id. Or that the payment_method_id does not exist in this account. Please retry with a valid payment_method_id
INVALID_API_KEY
401
API key format is invalid
INVALID_MERCHANT_CREDENTIALS
401
Merchant credentials met with an error with the eWallet provider. Please contact Xendit customer support to resolve this issue
INVALID_TOKEN
401
Account linking token for this end user has expired. Please reinitiate account linking before retrying.
REQUEST_FORBIDDEN_ERROR
403
The API key is forbidden to perform this request
CHANNEL_NOT_ACTIVATED
403
Payment request failed because this specific payment channel has not been activated through Xendit. Please activate via Xendit dashboard or our customer service
CALLBACK_URL_NOT_FOUND
404
Payment request failed because there was no input of callback url in Xendit Dashboard or request headers. Please save your callback url in Xendit Dashboard
UNSUPPORTED_CONTENT_TYPE
403
The content type requested is not supported
CHARGE_LIMIT_EXCEEDED
429
Maximum of 3 request attempts to Jenius Pay per cashtag within a span of 10 minutes has been exceeded. Please wait for 10 minutes before trying to initiate a new request
SERVER_ERROR
500
An unexpected error occured, our team has been notified and will troubleshoot the issue
CHANNEL_UNAVAILABLE
503
The payment channel requested is currently experiencing unexpected issues. The eWallet provider will be notified to resolve this issue

Failure Codes for eWallet Charge Endpoint

Failure CodeFailure Message
ACCOUNT_ACCESS_BLOCKEDEnd user’s account cannot be accessed as it has been restricted by the eWallet provider. End user should contact the provider for resolution
INVALID_MERCHANT_CREDENTIALSMerchant credentials met with an error with the eWallet provider. Please contact Xendit customer support to resolve this issue
USER_DECLINED_PAYMENTEnd user declined the payment request
INVALID_ACCOUNT_DETAILSEnd user provided incorrect information for this transaction
MAXIMUM_LIMIT_REACHEDAccumulated value of payment requested for this end user went above the maximum transaction limit set by end user or eWallets. Payment can be retried when the transaction limit is reset
USER_UNREACHABLEEnd user’s device cannot be reached at this moment. Common reasons include unstable network, device error or jailbroken device
CHANNEL_UNAVAILABLEThe payment channel requested is currently experiencing unexpected issues. The eWallet provider will be notified to resolve this issue
INSUFFICIENT_BALANCEEnd user has insufficient balance to complete the transaction
ACCOUNT_NOT_ACTIVATEDEnd user’s account cannot be accessed as it has not been activated. End user should set up their account and ensure there is sufficient balance before retrying
INVALID_TOKENBinding for this end user has expired. Please reinitiate binding before retrying
FAILURE_DETAILS_UNAVAILABLEDetails related to the failed payment request were not provided by the eWallet provider

Error Codes for Void eWallet Payment Endpoint

Error CodeError Message
API_VALIDATION_ERROR
400
There is an error with the format submitted to the server
VOID_NOT_SUPPORTED
400
Void feature is not available as the method is not provided by eWallet provider
VOID_TEMPORARILY_UNAVAILABLE
400
Void feature is unavailable between 00:00:00 and 05:00:00 UTC+07:00/UTC+08:00 each day for ShopeePay transactions. Please try again after 05:00:00 UTC+07:00/UTC+08:00
INVALID_API_KEY
401
API key format is invalid
REQUEST_FORBIDDEN_ERROR
403
The API key is forbidden to perform this request
INELIGIBLE_TRANSACTION
403
Payment has already passed its void validity period (after 23:50:00 UTC+07:00/UTC+08:00) for requested operation or status of charge is not SUCCEEDED
INELIGIBLE_MERCHANT
403
Merchant has a settlement configuration that is not eligible for voiding transactions. Please contact Xendit customer support for resolution
DATA_NOT_FOUND
404
Resource not found. Please check your query again
SERVER_ERROR
500
An unexpected error occured. Our team has been notified and will troubleshoot the issue
CHANNEL_UNAVAILABLE
503
The payment channel requested is currently experiencing unexpected issues. The eWallet provider will be notified to resolve this issue

Failure Codes for Void eWallet Payment Endpoint

Failure CodeFailure Message
MAXIMUM_USER_BALANCE_EXCEEDEDVoid could not be processed because the amount returned will cause end user's wallet balance to exceed maximum allowable value

Error Codes for Refund eWallet Payment Endpoint

Error CodeError Message
API_VALIDATION_ERROR
400
There is an error with the format submitted to the server
MAXIMUM_REFUND_AMOUNT_REACHED
400
Requested refund amount cannot exceed remaining unrefunded amount of the successful charge
MAXIMUM_REFUND_TRANSACTION_REACHED
400
You have reached the maximum refund transactions allowed for this charge. Kindly check the refund limitations for all eWallet channels here https://docs.xendit.co/ewallet/payment-flows/void-and-refund#refund-ewallet-charge
PARTIAL_REFUND_NOT_SUPPORTED
400
Partial refund feature is not available as the method is not provided by the eWallet provider
REFUND_TEMPORARILY_UNAVAILABLE
400
Refund feature is unavailable between 23:50:00 and 05:00:00 UTC+07:00/UTC+08:00 each day for ShopeePay transactions. Please try again after 05:00:00 UTC+07:00/UTC+08:00
REFUND_TEMPORARILY_UNAVAILABLE
400
Partial refund feature is not available for Maya (PayMaya) on the day of transaction. Please try again after 23:59:59 of transaction day
REFUND_NOT_SUPPORTED
400
Refund feature is not available as the method is not provided by the eWallet provider
REFUND_IN_PROGRESS
400
Concurrent refund requests to a single eWallet charge is not allowed. Please wait for the pending refund request to be completed before initiating a new one
INVALID_API_KEY
401
API key format is invalid
REQUEST_FORBIDDEN_ERROR
403
The API key is forbidden to perform this request
INELIGIBLE_TRANSACTION
403
Requested refund transaction cannot be processed as the transaction is in “FAILED”, “PENDING”, or “VOIDED” status
INSUFFICIENT_BALANCE
403
There is insufficient balance in your account to perform a refund. Please top up your balance with a sufficient amount before retrying the refund
DATA_NOT_FOUND
404
Resource not found. Please check your query again
SERVER_ERROR
500
An unexpected error occured. Our team has been notified and will troubleshoot the issue
CHANNEL_UNAVAILABLE
503
The payment channel requested is currently experiencing unexpected issues. The eWallet provider will be notified to resolve this issue

Failure Codes for Refund eWallet Payment Endpoint

Failure CodeFailure Message
INELIGIBLE_TRANSACTIONTransaction has already passed its validity period for the requested operation or the number of refunds requested has exceeded the allowable number of tries
INSUFFICIENT_BALANCESwitcher account does not have sufficient balance to perform a refund. Please retry after ensuring there is sufficient balance in the switcher account
REFUND_TEMPORARILY_UNAVAILABLERefund is temporarily unavailable because of settlement constraints with the eWallet provider. Please try again later
MAXIMUM_USER_BALANCE_EXCEEDEDRefund could not be processed because the amount returned will cause end user's wallet balance to exceed maximum allowable value
INELIGIBLE_PARTIAL_REFUND_TRANSACTIONTransaction specified is not eligible for partial refund because of eWallet provider's limitations. You can retry refund by doing full refund. GrabPay doesn't allow partial refunds for transactions made under promos or using GrabPay points
Was this page helpful?