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 reasons

Example scenarios

ACCOUNT_NOT_FOUND

When provided error code in remote host authorization is Card not found.

CARD_LIMIT_EXCEEDED

When the spend attempt exceeds the spend limit.

CARD_RESTRICTIONS

When 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_PRESENT

When card token not found.

CARD_IS_LOST

When card status is lost.

CARD_IS_STOLEN

When card status is stolen.

CARD_IS_SUSPENDED

When card status is suspended.

CARD_IS_INACTIVE

When card status is inactive.

CARD_IS_BLOCKED_BY_FRAUD

When card status is blocked by fraud

CARD_IS_PERM_BLOCK

When card status is perm block.

CARD_IS_INVALID

When card status is invalid.

CARD_TOKEN_SUSPENDED

When card token is suspended.

CARD_TOKEN_INACTIVE

When card token is inactive.

CARD_TOKEN_DEACTIVATED

When card token is deactivated.

CARD_TOKEN_HAS_EXPIRED

When card token has expired.

CARD_TOKEN_EXPIRATION_DATE_IS_EMPTY

When card token has no expiry date.

CONTRACT_NOT_PRESENT

When contract not found.

CBS_IS_NOT_AVAILABLE

When the remote host authorization response is timeout.

DUPLICATE_TRANSACTION

When 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_SOFTWARE

When 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_TERMINAL

iWhen the fraud check is recommending the transaction is fraud.

INSUFFICIENT_BALANCE

When the remote host authorization responding insufficient balance.

INSUFFICIENT_SPENDABLE_BALANCE

Insufficient spendable balance

ORIGINAL_TRANSACTION_NOT_FOUND

When provided error code in remote host authorization is Transaction not found

TRANSACTION_NOT_PERMITTED

Where 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.

UNKNOWN

Unclassified error.

VIAA_LIMIT_EXCEEDED

VIAA limit exceeded

CVV2_VALIDATION_FAILED

When the provided CVV2 in authorization request does not match the stored CVV2 for the card.

CAVV_VALIDATION_FAILED

When the Cardholder Authentication Verification Value (CAVV) cryptogram validation fails for 3DS transaction

TRACK_2_VALIDATION_FAILED

When the Track 2 data (from magnetic stripe or EMV fallback) is invalid

CRYPTOGRAM_VALIDATION_FAILED

When the cryptogram in EMV or contactless transaction is invalid

PIN_VALIDATION_FAILED

When the entered or transmitted PIN does not match the encrypted PIN

TOO_MANY_CONSECUTIVE_PIN_FAILURES

When the cardholder exceeds the allowed number of consecutive incorrect PIN attempts

PIN_NOT_CONFIGURED

When the transaction requires online PIN verification but the card or account has no PIN configured