Skip to main content

Failure Codes

When a card is declined, the Tokenizer surfaces a machine-readable failure code inside the error field of the ErrorResponse passed to your onError handler. Use it to show the customer an appropriate message and decide whether a retry makes sense.

Three of these codes map to a specific input field, so the Tokenizer also flags that field as invalid in the returned validation object:

CodeField flagged invalid
cvv-mismatchcardCVV
invalid-card-numbercardNumber
expired-cardcardExpiration

Every other code below is a general issuer decline and does not point at a single field.

Soft vs. hard declines

  • Soft declines are temporary authorization failures. An action is usually required before running the card again, after which a retry can succeed.
  • Hard declines are permanent authorization failures. The card should not be run again. Ask the customer for a different card.

Reference

note

The Recommended action column reflects typical handling for each response code. Treat it as guidance rather than a fixed rule. The appropriate response can vary by transaction, issuer, and your own risk tolerance. This table may be updated over time, so check back here periodically to make sure you're working from the latest version.

CodeMeaningTypeRecommended action
amount-limit-exceededThe amount entered exceeds the issuer or approved amount.SoftRetry with a smaller amount, or use a different card.
call-issuerAn issue occurred that must be handled by the card issuer.HardAsk the customer to contact their card issuer before retrying.
card-not-activatedThe card has not been properly unblocked/activated.SoftAsk the customer to activate the card with their issuer, then retry, or use a different card.
cardholder-account-closedThe cardholder's account is closed.HardDo not retry; ask for a different card.
could-not-routeThe financial institution could not be found for routing (invalid receiving institution ID).SoftTemporary routing issue. Retry shortly, or use a different card.
cvv-mismatchThe CVV verification failed.SoftAsk the customer to re-enter the CVV, and monitor for fraud.
do-not-honorThe issuer will not allow the transaction.HardAsk the customer to contact their issuer, or use a different card.
expired-cardThe card has expired or the expiration date is missing.HardVerify the expiration date; ask for a valid or different card.
incorrect-pinThe PIN is incorrect or missing when required.SoftAsk the customer to re-enter the PIN.
insufficient-fundsThe card has insufficient funds to complete the transaction.SoftRetry with a lesser amount or later, or use a different card.
invalid-amountThe amount entered is invalid.SoftCorrect the amount and retry.
invalid-card-numberThe card number is incorrect.SoftAsk the customer to re-enter the card number.
invalid-merchantThe card is not allowed at this merchant or MCC.HardThe card can't be used here; ask for a different card.
invalid-transactionThe transaction is invalid.HardDo not retry as-is; use a different card.
issuer-not-availableThe issuer was unavailable and STIP is not applicable or unavailable.SoftTemporary, retry shortly.
lost-or-stolenThe card was reported as lost or stolen.HardDo not retry; ask for a different card.
no-such-issuerThe issuer is invalid.HardUse a different card.
processing-errorThe transaction could not be processed due to a processing error.SoftTemporary, retry. If it persists, use a different card.
reenter-transactionThe transaction could not be processed due to an error in message structure or field format.SoftRetry the transaction.
revocation-of-authorizationRevocation of authorization order.HardDo not retry; ask for a different card.
suspected-fraudThe transaction was declined because of suspected fraud.HardAsk the cardholder to contact their issuer before retrying.
transaction-not-allowedThe transaction was not allowed.HardUse a different card.
velocity-limit-exceededThe transaction exceeds the card or account's withdrawal frequency limit.SoftRetry later, or use a different card.