View as Markdown

llms.txt

Decline reason codes

34 decline reason codes, generated from the platform source rather than maintained by hand.

Where the code comes from

A transaction that didn't go through carries the platform's own classification of why on responseData.declineReasonCode, with a readable description beside it on responseData.declineReasonDescription. The code is the same whichever processor handled the authorization: each processor's native response code is mapped onto this one vocabulary, so a client can branch on it without knowing which processor a merchant routes to. Branch on the code, not the description, whose wording can change.

A decline reason code isn't an API error code and isn't a processor response code. An error code means the request was refused before or instead of being processed. A processor response code is the processor's own verdict, in the processor's own vocabulary. A decline reason code is the platform's classification of that verdict, or of its own refusal, and it's the value a client branches on. Error codes Processor response codes

A transaction whose resultCode is PolicyRejected was refused by the merchant's own address verification (AVS) or security code (CVV) rule rather than by the issuer. Its declineReasonCode is CV_REJECTED when the processor approved and the platform then released the hold, or CV_NATIVE_DECLINE when the processor applied the rule itself and no hold was ever placed. Neither is an error code, and neither appears in the error reference.

Every code is listed, whichever processors your own merchant account routes to. Any card processor can produce any of the card codes; the ACH codes come only from an ACH return, and the codes the platform applies itself come from no processor at all. Which processor handled a given transaction is on that transaction's processorKey.

Codes

The meaning is the platform's own definition of the code. The authorization hold column says whether the customer's funds were ever held for the transaction: a decline the issuer or processor made places no hold, while a rejection the platform applied after an approval releases the hold it found.

Code Meaning Authorization hold
DECLINED The card was declined and the processor's own code does not map to a more specific reason. Treat it as a final answer for this card. None. The issuer or processor declined at authorization.
DO_NOT_HONOR The issuer answered "Do Not Honor", the most common generic decline. The issuer gives no reason; the cardholder has to contact their bank. None. The issuer or processor declined at authorization.
INSUFFICIENT_FUNDS The issuer reported insufficient funds on the account. The balance can change, so a later retry can succeed. None. The issuer or processor declined at authorization.
EXPIRED_CARD The card has expired. None. The issuer or processor declined at authorization.
INVALID_CARD_NUMBER The card number is not valid, or no issuer recognizes it. None. The issuer or processor declined at authorization.
CLOSED_ACCOUNT The account is closed. None. The issuer or processor declined at authorization.
LOST_CARD The card has been reported lost. None. The issuer or processor declined at authorization.
STOLEN_CARD The card has been reported stolen. None. The issuer or processor declined at authorization.
SUSPECTED_FRAUD The issuer suspects fraudulent activity on the account. None. The issuer or processor declined at authorization.
SECURITY_VIOLATION The issuer reported a security violation. None. The issuer or processor declined at authorization.
PIN_TRIES_EXCEEDED The allowable number of PIN attempts was exceeded. None. The issuer or processor declined at authorization.
INCORRECT_PIN The PIN entered was incorrect. None. The issuer or processor declined at authorization.
CV_REJECTED The processor approved the authorization, and the merchant's own address verification (AVS) or security code (CVV) rule then rejected it. The authorization hold was released by an automatic reversal or void, and the transaction reports the PolicyRejected result. Released. The processor approved; the platform reversed or voided the hold.
CARD_VERIFICATION_FAILED The processor or issuer declined because the security code (CVV) or other authentication data did not match. The processor did not approve, so no hold was placed and nothing is reversed. None. The issuer or processor declined at authorization.
CV_NATIVE_DECLINE The processor declined the authorization itself under the merchant's address verification (AVS) or security code (CVV) rule, before any approval. No hold was placed, so nothing is reversed, and the transaction reports the PolicyRejected result. None. The issuer or processor declined at authorization.
ACTIVITY_LIMIT_EXCEEDED The cardholder's activity or withdrawal limit was exceeded. None. The issuer or processor declined at authorization.
EXCEEDS_APPROVAL_AMOUNT The amount exceeds the limit the issuer will authorize. None. The issuer or processor declined at authorization.
TRANSACTION_NOT_PERMITTED The transaction is not permitted on this card, or at this terminal. None. The issuer or processor declined at authorization.
ISSUER_UNAVAILABLE The issuer was unavailable or did not respond. A later retry can succeed. None. The issuer or processor declined at authorization.
SYSTEM_MALFUNCTION The issuer or network reported a system malfunction. A later retry can succeed. None. The issuer or processor declined at authorization.
DUPLICATE_TRANSACTION The processor detected a duplicate of a transaction it already processed. None. The issuer or processor declined at authorization.
ENCRYPTION_ERROR The processor reported an encryption or tokenization error. None. The issuer or processor declined at authorization.
WALLET_CRYPTOGRAM_UNSUPPORTED The wallet supplied authentication data that the routed processor has no confirmed field for, so the authorization was refused before it was sent rather than sent without the authentication it asserts. Nothing reached the processor, and the transaction is retryable once the mapping is confirmed with the processor. None. Nothing was sent to the processor.
INVALID_TRANSACTION The transaction was invalid: malformed, or an operation the card or the processor does not support. None. The issuer or processor declined at authorization.
INVALID_AMOUNT The amount was invalid: zero, negative, or beyond the permitted range. None. The issuer or processor declined at authorization.
CALL_ISSUER The issuer asks the merchant to call for voice authorization. None. The issuer or processor declined at authorization.
RESTRICTED_CARD The card or account is restricted by the issuer. None. The issuer or processor declined at authorization.
INVALID_DATE A date on the request was invalid, such as the expiration date. None. The issuer or processor declined at authorization.
INVALID_ACCOUNT The issuer reported an invalid account. None. The issuer or processor declined at authorization.
CB_OPEN The request was refused without contacting the processor because recent calls to that processor were failing and its connection is temporarily suspended. Nothing was sent; retry once the processor recovers. None. Nothing was sent to the processor.
UNAUTHORIZED_DEBIT The receiver, or their bank on their behalf, asserts the debit was not authorized, or was not taken on the terms they authorized (NACHA R05, R10, R11, R29). Distinct from AUTHORIZATION_REVOKED, where an authorization existed and was withdrawn. Not applicable. An ACH return after the entry was originated, not a card authorization.
AUTHORIZATION_REVOKED The customer withdrew the authorization the entry was taken under (NACHA R07). The mandate is gone, so re-presenting the same account is not merely futile but improper. Not applicable. An ACH return after the entry was originated, not a card authorization.
PAYMENT_STOPPED The customer placed a stop payment on the entry (NACHA R08). The account is fine; this particular debit is the one the customer stopped. Not applicable. An ACH return after the entry was originated, not a card authorization.
ACCOUNT_FROZEN The account is frozen and the receiving bank may not post to it (NACHA R16). A hold on the account itself, not a judgement about the entry. Not applicable. An ACH return after the entry was originated, not a card authorization.

A value missing from this page is still a real classification. It means the instance serving your API runs a newer build than the one this reference was generated from, so treat the transaction's own result and description as authoritative, and report the gap.

Reconnecting to the server

Could not reconnect

This session has ended

Attempt 1

Your work on this page is still here. Retrying keeps it; reloading starts the page again.

The server no longer holds this page's state, so it has to be loaded again.