Transaction Rejection Reasons

In order to provide more information for each webhook event_transaction is marked as rejected, we provide an additional field rejection_reason to indicate the error classification.

The rejection_reason field will not appear in approved webhook event_transaction.

Rejection reason list

Rejection reasonsExample scenarios
ACCOUNT_NOT_FOUNDWhen provided error code in remote host authorization is Card not found.
CARD_LIMIT_EXCEEDEDWhen the spend attempt exceeds the spend limit.
CARD_RESTRICTIONSWhen cross-border is disabled for the issuing plan but the transaction is cross-border. When card present transaction is disabled for the contract but the transaction is card present.
CARD_IS_NOT_PRESENT

When card number not found.

Note that when card is not found in our system, event fieldsacquirer_currency, card_opaque_id , cbs_transaction_id, currency will be "" , acquirer_amount and transaction_amount will be "0.00" .

CARD_TOKEN_NOT_PRESENTWhen card token not found.
CARD_IS_LOSTWhen card status is lost.
CARD_IS_STOLENWhen card status is stolen.
CARD_IS_SUSPENDEDWhen card status is suspended.
CARD_IS_INACTIVEWhen card status is inactive.
CARD_IS_BLOCKED_BY_FRAUDWhen card status is blocked by fraud
CARD_IS_PERM_BLOCKWhen card status is perm block.
CARD_IS_INVALIDWhen card status is invalid.
CARD_TOKEN_SUSPENDEDWhen card token is suspended.
CARD_TOKEN_INACTIVEWhen card token is inactive.
CARD_TOKEN_DEACTIVATEDWhen card token is deactivated.
CARD_TOKEN_HAS_EXPIREDWhen card token has expired.
CARD_TOKEN_EXPIRATION_DATE_IS_EMPTYWhen card token has no expiry date.
CONTRACT_NOT_PRESENTWhen contract not found.
CBS_IS_NOT_AVAILABLEWhen the remote host authorization response is timeout.
DUPLICATE_TRANSACTIONWhen online reversal duplicated request coming for original transaction is already reconciled.
When provided error code in remote host authorization is Duplicate transaction ID.
ERRORS_IN_SOFTWAREWhen provided error code in remote host authorization is Unauthorized or Internal server error.
When the ssuing plan is set with maintenance mode during the scheduled downtime.
FRAUD_NOT_PERMITTED_TO_TERMINALiWhen the fraud check is recommending the transaction is fraud.
INSUFFICIENT_BALANCEWhen the remote host authorization responding insufficient balance.
INSUFFICIENT_SPENDABLE_BALANCEInsufficient spendable balance
ORIGINAL_TRANSACTION_NOT_FOUNDWhen provided error code in remote host authorization is Transaction not found
TRANSACTION_NOT_PERMITTEDWhere cash withdrawal is disabled for the issuing plan but the transaction is cash withdrawal. This also applies to SGD withdrawals at ATMs in Singapore, which are blocked for all merchants per compliance.
UNKNOWNUnclassified error.
VIAA_LIMIT_EXCEEDEDVIAA limit exceeded
CVV2_VALIDATION_FAILEDWhen the provided CVV2 in authorization request does not match the stored CVV2 for the card.
CAVV_VALIDATION_FAILEDWhen the Cardholder Authentication Verification Value (CAVV) cryptogram validation fails for 3DS transaction
TRACK_2_VALIDATION_FAILEDWhen the Track 2 data (from magnetic stripe or EMV fallback) is invalid
CRYPTOGRAM_VALIDATION_FAILEDWhen the cryptogram in EMV or contactless transaction is invalid
PIN_VALIDATION_FAILEDWhen the entered or transmitted PIN does not match the encrypted PIN
TOO_MANY_CONSECUTIVE_PIN_FAILURESWhen the cardholder exceeds the allowed number of consecutive incorrect PIN attempts
PIN_NOT_CONFIGUREDWhen the transaction requires online PIN verification but the card or account has no PIN configured