Skip to main content

Decline Codes

This page covers decline codes, the reason a card was turned down at the moment of sale, so no money ever moved. Looking for a chargeback notice or a returned bank transfer?

If money already reached you and is now being taken back, that's a chargeback reason code, not a decline. If the payment ran on a routing and account number instead of a card, it's a bank transfer.

TL;DR
  • A decline code is the issuer telling you why it said no. They follow ISO 8583, with per-network variations
  • Soft declines (91, 92, 96, 19, 22, 68) may be temporary. Test a backoff schedule only for retry-eligible responses; the example below is a starting setting. On Mastercard, MAC 02 means wait 24 hours and MAC 03 or 21 means stop
  • Hard declines (14, 15, 41, 43, 54, 56) mean stop. For an expired card (54), get the new expiry date or another card; don't retry the same details
  • 51 insufficient funds sits in between. Tell the customer, don't auto-retry
  • Track declines by channel, issuer and payment type against your own history. A higher CNP rate alone doesn't identify the cause

When a transaction gets declined, the issuing bank returns a response code saying why. The codes follow the ISO 8583 standard, though each network's added its own variations.

Quick Reference: Most Common Codes​

CodeMeaningRetry?What to Tell Customer
05Do Not HonorMaybe after 24h"Please contact your card issuer"
51Insufficient FundsAfter customer action"Card declined - check available balance"
54Expired CardOnly with a new expiry date or card"Check your expiry or use a different card"
14Invalid Card NumberNo"Please verify your card number"
41/43Lost/Stolen CardNo"Card cannot be used - contact issuer"
65Activity Limit ExceededAfter 24h"Daily limit reached - try tomorrow"
91Issuer UnavailableYes, retry shortly"Temporary issue - please try again"
CP vs CNP

Decline codes apply to both card-present and card-not-present transactions. Compare each channel with its own issuer and customer mix. Some codes are CP-only, like the PIN ones. Others you'll only see in CNP, like the 3DS authentication codes.

New to payments?

Looking up a specific code? You're in the right place. Want to understand the bigger picture (how money moves, why transactions fail, and what to do about it)? Start The Guide, 15 lessons, ~105 minutes total.

Also in This Section​


ISO 8583 Standard Codes (All Networks)​

These are the ISO 8583 codes, and you'll see them across Visa, Mastercard, Discover and (partially) American Express.

Jump to: Approval | Card issues | Fraud and security | Funds and limits | Authorization | PIN | Technical | Other

Approval Codes​

CodeDescriptionAction
00ApprovedTransaction successful
08Honour with identificationApproved, verify ID
10Partial approvalApproved for partial amount only
11Approved (VIP)Approved
16Approved, update track 3Approved, card data update needed

Card Issues​

CodeDescriptionRetry?Merchant Action
14Invalid card numberNoAsk customer to verify card number
15No such issuerNoCard prefix doesn't match any issuer
33Expired card (alternate)NoRequest different card
54Expired cardOnly with a new expiry date or cardCheck expiry or request different card
56No card recordNoCard not on issuer's file

Fraud/Security​

CodeDescriptionRetry?Merchant Action
04Pick up cardNoDo not return card (CP only)
07Pick up card, special condition (fraud)NoDo not return card (CP only)
34Suspected fraudNoDo not proceed
41Lost cardNoCard reported lost
43Stolen cardNoCard reported stolen
59Suspected fraudNoDo not proceed
63Security violationMaybeCVV/CVC mismatch possible - verify

Funds/Limits​

CodeDescriptionRetry?Merchant Action
51Insufficient fundsAfter customer actionCustomer needs to add funds
52No checking accountNoWrong account type
53No savings accountNoWrong account type
61Exceeds withdrawal amount limitAfter 24hDaily limit reached
65Exceeds withdrawal frequency limitAfter 24hToo many transactions today

Authorization Issues​

CodeDescriptionRetry?Merchant Action
01Refer to card issuerNoCustomer must call issuer
02Refer to card issuer (special condition)NoCustomer must call issuer
03Invalid merchantNoCheck merchant ID configuration
05Do not honorMaybe after 24hGeneric decline - customer should call issuer
06ErrorNoCheck transaction details
12Invalid transactionNoTransaction type not allowed
13Invalid amountNoCheck amount formatting
57Transaction not permitted to cardholderNoCard restricted from this transaction type
58Transaction not permitted to terminalNoTerminal not configured for this type
62Restricted cardNoCard has restrictions
CodeDescriptionRetry?Merchant Action
55Incorrect PINYes (limited)Customer can retry with correct PIN
75Allowable PIN tries exceededNoCard locked - customer must call issuer
86Cannot verify PINYesTechnical issue with PIN verification

Technical Issues​

CodeDescriptionRetry?Merchant Action
19Re-enter transactionYesRetry the transaction
22Suspected malfunctionYesRetry shortly
30Format errorNoCheck message format
31Bank not supported by switchNoRouting issue
68Response received too lateYesTimeout - retry
90Cutoff is in processYesBatch processing in progress
91Issuer or switch inoperativeYesRetry in a few minutes
92Financial institution cannot be foundYesRouting issue - retry
96System malfunctionYesRetry shortly

Other​

CodeDescriptionRetry?Merchant Action
17Customer cancellationNoCustomer cancelled
21No action takenNoNo specific reason provided
93Transaction cannot be completed - violation of lawNoCannot proceed
94Duplicate transmissionNoAlready processed

Visa-Specific Codes​

Visa has network-specific responses as well as the standard codes. Code 83 below is an authorization response. It isn't a chargeback reason.

CodeDescriptionRetry?Notes
1AAuthentication requiredYes3DS authentication needed
6PCustomer ID verification failedCorrect details firstVisa Category 3
83Fraud/security, Visa use onlyAsk your processor before another attemptSTIP declined a high-risk or potentially fraudulent transaction; Category 2 from July 25, 2026
N4Exceeds issuer withdrawal limitAfter 24hSimilar to code 61
N7CVV2 failureYesRe-enter security code
P1Issuer not availableYesRetry shortly
R0Stop payment orderNoRecurring payment stopped by cardholder
R1Revocation of authorization orderNoCardholder revoked authorization
R3Revocation of all authorizationsNoAll recurring authorizations cancelled
Z1Offline declinedNoCard declined offline
Z3Unable to go online, offline declinedNoCould not connect, declined locally

Source: Visa rules, edition April 18, 2026, summary p. 47 and section 7.3.6.3, Table 7-2, pp. 538-541. Checked October 21, 2026. Category 1 stops resubmission on the same credential. Categories 2-4 permit up to 20 attempts in 30 days. Correct Category 3 data before another attempt. Ask for the original network code if your processor translates it.

Visa Credential-on-File Codes​

CodeDescriptionRetry?Action
R0Customer requested stop recurringNoRemove customer from billing
R1Revocation of specific authorizationNoContact customer for new payment method
R3Revocation of all authorizationsNoContact customer - all stored credentials invalid

Mastercard-Specific Codes​

Standard Mastercard Codes​

CodeDescriptionRetry?Notes
70Contact card issuerYesCustomer should verify with bank
78No accountNoAccount doesn't exist
79Life cycle declineNoCard status changed (closed, blocked)
82CVV/CVC check failedYesRe-enter security code
83Fraud/security declineNoHigh-risk transaction blocked

Mastercard Merchant Advice Codes (MAC)​

Read Mastercard's response code and Merchant Advice Code together. MAC 03 or 21 means do not resubmit. The 30-day fee test below doesn't make a later retry permissible.

MACMeaningAction
01New account information availableGet updated account details from the customer or Account Updater before another attempt
02Try again laterWait 24 hours; check the response code too
03Do not retryStop; ask for another payment method
21Payment cancelledDo NOT resubmit

Two separate fees:

  • Excessive Authorization Attempts (TPE): After 10 issuer declines on the same card and acceptor in 24 hours, or 35 on the same account, acceptor and amount in a rolling 30 days. US rate: $0.50 from January 1, 2025
  • MAC 03/21: PayPal lists US $0.03 per transaction when another attempt within 30 days also declines with MAC 03/21 after an earlier MAC 03/21 decline

These are fee tripwires, not retry allowances. Your billed amount can vary by region and acquirer. Ask your processor for its schedule.

Sources: Global Payments PMB 1311, p. 19; PayPal's separate fee tables; Mastercard rules, section 3.3; Moneris fee history. Checked October 21, 2026.


American Express Codes​

American Express doesn't follow the same structure. Its codes are mostly three digits.

Approval Codes​

CodeDescriptionAction
000ApprovedTransaction successful
001Approve with IDApproved, verify identification
002Partial authorizationApproved for partial amount

Decline Codes​

CodeDescriptionRetry?Notes
100DenyYesGeneral decline
101Expired card / invalid expiration dateNoCard expired
106PIN tries exceededYes (with PIN reset)Card locked for PIN
109Invalid service establishmentYesMerchant setup issue
110Invalid amountYesCheck amount formatting
111Invalid accountNoAccount doesn't exist
115Requested function not supportedNoTransaction type not allowed
117Incorrect PINYesRetry with correct PIN
119Transaction not permitted (PIN)NoRestriction on account
122Invalid keyed card security codeYesCID incorrect - re-enter
125Additional customer identification requiredYesNeed more verification
130Invalid effective date on cardYesCheck card dates
181Format errorYesMessage format issue
183Invalid currency codeNoCurrency not supported
187Deny - new card issuedYesNew card exists, get from customer
200Deny - pick up cardNoCard reported lost/stolen
911Card issuer timed outYesRetry shortly
912Host unavailableYesRetry shortly
D2Invalid service code, restrictedNoCard restricted
D4Invalid transactionNoTransaction type not allowed

Discover Codes​

Discover primarily uses the standard ISO 8583 codes (00-99). Key Discover-specific behaviors:

CodeDiscover-Specific Notes
05Generic decline - common on Discover
51Insufficient funds - same as other networks
54Expired card
57Transaction not permitted - may indicate international restriction
62Often means Discover not accepted at terminal

Discover Stop Payment Codes​

CodeDescriptionAction
R0Stop payment orderCustomer requested stop - do not retry
R1Revocation of authorizationRemove stored credential

Processor Messages: Stripe and Braintree​

Your processor may show its own message instead of the network's code. Stripe's decline codes and Braintree's processor responses are two you'll see often. Neither list says which network code sits behind each message, so you can't match them one for one to the rows above. Before you set retry rules on one, ask your processor for the original network response code.

Stripe Decline Codes​

Stripe says its codes cover many of the same reasons as the issuer's codes, with more detail.

Stripe codeWhat Stripe says it meansWhat Stripe says to do
generic_declineDeclined for an unknown reason, or Stripe's Radar or Adaptive Acceptance blocked itCustomer contacts their card issuer. If Stripe blocked it, see risk blocked
do_not_honorDeclined for an unknown reasonCustomer contacts their card issuer
insufficient_fundsNot enough funds on the card for the purchaseCustomer uses another payment method
card_velocity_exceededOver the card's balance, credit limit or transaction amount limitCustomer contacts their card issuer
expired_cardThe card has expiredCustomer uses another card
incorrect_cvcThe security code is wrongCustomer tries again with the right code
incorrect_numberThe card number is wrongCustomer tries again with the right number
authentication_requiredThe issuer wants authentication such as 3D SecureStripe's own checkout usually starts authentication. For an off-session payment, you may need to ask the customer to come back and try again
fraudulent, lost_card, stolen_cardStripe suspects fraud, or the card's reported lost or stolenShow the customer the same message as generic_decline
issuer_not_availableThe issuer couldn't be reachedTry again. If it still fails, customer contacts their card issuer
processing_errorAn error came up while processing the cardCustomer tries again. If it still fails, they contact their card issuer

Braintree Processor Responses​

Braintree labels each one soft or hard. Those labels are Braintree's own. Visa's retry categories and Mastercard's advice codes, above, still decide whether you may resubmit.

Braintree code and textBraintree's labelWhat Braintree says
2000 Do Not HonorSoftThe bank won't accept it and gives no specific reason. Customer contacts their bank
2001 Insufficient FundsSoftNot enough funds at the time. A later attempt may succeed
2004 Expired CardHardCustomer uses a different payment method
2005 Invalid Credit Card NumberHardCustomer corrects the details and tries again, then contacts their bank if it persists
2010 Card Issuer Declined CVVHardSecurity code wrong or mistyped. Customer tries again, then contacts their bank
2014 Processor Declined - Fraud SuspectedHardThe bank suspects fraud. Customer contacts their bank
2015 Transaction Not AllowedHardUnspecified, possibly the card itself. Customer contacts their bank
2038 Processor DeclinedSoftThe bank won't accept it, for reasons that vary. Customer contacts their bank
2044 Declined - Call IssuerHardCustomer tries again, then contacts their bank
2046 DeclinedSoftThe bank won't accept it. Customer contacts their bank
2047 Call Issuer. Pick Up CardHardReported lost or stolen. Ask for another payment method
2057 Issuer or Cardholder has put a restriction on the cardSoftCustomer contacts their bank
2099 Cardholder Authentication RequiredSoft3D Secure wasn't run at checkout. Authenticate, then try again
3000 Processor Network Unavailable - Try AgainSoftPossibly a processing network problem, not the card

Sources: Stripe decline codes and network decline codes; Braintree authorization responses. Checked October 23, 2026.


Soft vs Hard Declines​

Soft Declines (Retriable)​

These are temporary. They'll often clear on their own, or on a retry:

CategoryCodesStrategy
Issuer unavailable91, 92, 96Retry immediately, then with backoff, unless the MAC says wait or stop
Processing errors19, 22, 68Retry once immediately, unless the MAC says wait or stop
Timeout911, 912Retry in 30-60 seconds, unless the MAC says wait or stop
Authentication needed1ARedirect to 3DS

Example backoff to test: immediately, 30 minutes, 4 hours, 24 hours, only for eligible temporary failures. Check provider limits and the advice code first: MAC 02 means wait 24 hours, and MAC 03 or 21 means stop. Measure recovered payments and duplicate attempts before keeping the schedule.

Hard Declines (Not Retriable)​

These are conservative stops, not Visa's Category 1 list. Ask for a different payment method rather than retrying unchanged data.

CategoryCodesStrategy
Invalid card14, 15, 56Request different payment method
Lost/Stolen41, 43, 200Do not proceed, contact security if needed
Fraud blocks04, 07, 34, 59Do not proceed
Card restrictions57, 62, 119Customer must contact issuer
Insufficient funds51Notify customer, don't auto-retry

Strategy: Don't auto-retry these. Ask the customer for another payment method. For an expired card (54), get the new expiry date or another card first.

Gray Area Declines: What Does Do Not Honor Mean? Should I Retry?​

A few codes sit in between. You'll have to use judgment:

CodeWhen to RetryWhen Not to Retry
05 (Do Not Honor)First occurrence, retry after 24hRepeated declines on same card
65 (Activity Limit)Next calendar daySame day
51 (Insufficient Funds)After customer confirms funds addedNever auto-retry
01 (Refer to Issuer)After customer contacts bankUntil customer confirms resolution

Risk Blocked Transaction: What to Check Before Retrying​

Open the payment's risk details before retrying. A provider's fraud screen can block a payment without an issuer decline. An issuer decline means the card issuer received the request and said no. Stripe's high-risk Radar example has a blocked outcome and wasn't sent to the card network. Its advice is do_not_try_again. Stripe's payment failure guide.

Retrying as-is doesn't change the rule that stopped it. Don't apply code 05's 24-hour suggestion to an active fraud block. Check the cause first.

If you've checked the customer is real and the payment is genuine:

  • Stripe: Open the payment in the Dashboard. Read the outcome and any available risk insights. Use Add to allow list where available. This affects future matching attempts; it doesn't retry the payment. Missing the button? Contact Stripe. Stripe's risk outcomes and allow route.
  • Square US: You'll need Risk Manager permissions. In the Dashboard, open Risk Manager > Blocked payments. Choose ... > Add to Allow List, select a reason, then Add to list. Square says to know, contact and trust the customer first. An issuer decline still stops the payment, even on this list. Square's Allow List guide.

Using another provider? Check its documented review or allow route for a real customer. Ask support which system blocked the payment, what needs to change and whether another attempt is allowed. Sources checked 23 October 2026.


Decline Code Categories for Reporting​

When building decline analytics, group codes into these categories:

CategoryCodesWhat to measureAction
Funds or activity limits51, 65, N4Share of attempts in the same segment and windowRead the specific code before notifying the customer
Card Invalid14, 54, 56, 101Failures by credential and card-update statusRequest corrected details or another card as appropriate
Do Not Honor05, 100Changes by issuerAsk your processor for the underlying reason
Fraud/Security04, 41, 43, 59Changes by channel and issuerRespect stop instructions
Technical91, 92, 96, 911Errors by route and incident windowRetry only where the response and advice code permit
Authentication1A, 125Failed or required authentication by flowUse the supported verification flow
OtherAll othersCounts and share of attemptsReview the actual code

Test to Run​

Weekly decline analysis:

  1. Pull all declines from your processor for last 7 days
  2. Group by response code
  3. Count each category and divide by all authorization attempts in the same segment and window
  4. Compare matched issuer, country and payment-type segments with their own history
  5. Investigate unexplained changes and customer failures; choose alert settings from normal variation and payment counts

Monthly retry analysis:

  1. Count retries per decline code
  2. Calculate retry success rate per code
  3. Identify codes you're retrying that never succeed (stop retrying those)
  4. Check for Mastercard MAC 03/21 violations

Scale Callout​

VolumeFocus
Under $100K/moKnow soft vs hard. Don't retry hard declines.
$100K-$1M/moBuild decline reporting by category. Implement smart retry logic.
Over $1M/moNegotiate decline code visibility with processor. Build automated retry rules. Monitor MAC compliance.

Where This Breaks​

Processor code mapping: Your processor probably translates network codes into its own. Ask for the original network response code, not just their internal one.

Generic declines: Code 05 tells you nothing. Push your processor for a more specific code when they've got one.

International cards: The same code can mean different things at an international issuer. Code 57 especially varies by region.

Retry fees: Mastercard's MAC program penalizes retries on codes 03 and 21. Your retry logic needs to respect that, or you're paying for it.

Putting This to Work​

Building decline handling?

  1. Implement soft/hard classification
  2. Set up smart retry logic with backoff
  3. Build customer messaging by decline type

Subscription retry strategy?

  1. Recurring billing guide - Dunning best practices
  2. Respect Mastercard MAC codes - avoid fees
  3. Don't retry hard declines ever

Do next​

Look up​

Deeper​

Improving auth rates?

Something wrong on this page? Email matt at paymentsandrisk.com and say what needs fixing.