Decline Codes
When a transaction is declined, the issuing bank returns a response code indicating the reason. These codes follow the ISO 8583 standard, though each network has variations.
Quick Reference: Most Common Codes
| Code | Meaning | Retry? | What to Tell Customer |
|---|---|---|---|
| 05 | Do Not Honor | Maybe after 24h | "Please contact your card issuer" |
| 51 | Insufficient Funds | After customer action | "Card declined - check available balance" |
| 54 | Expired Card | No | "Card has expired - use a different card" |
| 14 | Invalid Card Number | No | "Please verify your card number" |
| 41/43 | Lost/Stolen Card | No | "Card cannot be used - contact issuer" |
| 65 | Activity Limit Exceeded | After 24h | "Daily limit reached - try tomorrow" |
| 91 | Issuer Unavailable | Yes, retry shortly | "Temporary issue - please try again" |
Decline codes apply to both card-present and card-not-present transactions. However, CNP sees higher decline rates overall (typically 10-15% vs 2-5% for CP). Some codes are CP-specific (PIN-related), while others like 3DS authentication codes are CNP-only.
On this page
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.
Before diving into decline codes, understand:
- Auth optimization - Improving approval rates
- Checkout conversion - Impact on conversions
- Processor management - Acquirer relationships
Also in This Section
- Soft vs Hard Declines - Which declines to retry and which to stop
- Mastercard Merchant Advice Codes - Avoid fees by respecting MAC 03/21 rules
- Visa-Specific Codes - Credential-on-file and authentication codes
ISO 8583 Standard Codes (All Networks)
These codes are defined by ISO 8583 and used across Visa, Mastercard, Discover, and (partially) American Express.
Approval Codes
| Code | Description | Action |
|---|---|---|
| 00 | Approved | Transaction successful |
| 08 | Honour with identification | Approved, verify ID |
| 10 | Partial approval | Approved for partial amount only |
| 11 | Approved (VIP) | Approved |
| 16 | Approved, update track 3 | Approved, card data update needed |
Card Issues
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 14 | Invalid card number | No | Ask customer to verify card number |
| 15 | No such issuer | No | Card prefix doesn't match any issuer |
| 33 | Expired card (alternate) | No | Request different card |
| 54 | Expired card | No | Request different card |
| 56 | No card record | No | Card not on issuer's file |
Fraud/Security
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 04 | Pick up card | No | Do not return card (CP only) |
| 07 | Pick up card, special condition (fraud) | No | Do not return card (CP only) |
| 34 | Suspected fraud | No | Do not proceed |
| 41 | Lost card | No | Card reported lost |
| 43 | Stolen card | No | Card reported stolen |
| 59 | Suspected fraud | No | Do not proceed |
| 63 | Security violation | Maybe | CVV/CVC mismatch possible - verify |
Funds/Limits
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 51 | Insufficient funds | After customer action | Customer needs to add funds |
| 52 | No checking account | No | Wrong account type |
| 53 | No savings account | No | Wrong account type |
| 61 | Exceeds withdrawal amount limit | After 24h | Daily limit reached |
| 65 | Exceeds withdrawal frequency limit | After 24h | Too many transactions today |
Authorization Issues
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 01 | Refer to card issuer | No | Customer must call issuer |
| 02 | Refer to card issuer (special condition) | No | Customer must call issuer |
| 03 | Invalid merchant | No | Check merchant ID configuration |
| 05 | Do not honor | Maybe after 24h | Generic decline - customer should call issuer |
| 06 | Error | No | Check transaction details |
| 12 | Invalid transaction | No | Transaction type not allowed |
| 13 | Invalid amount | No | Check amount formatting |
| 57 | Transaction not permitted to cardholder | No | Card restricted from this transaction type |
| 58 | Transaction not permitted to terminal | No | Terminal not configured for this type |
| 62 | Restricted card | No | Card has restrictions |
PIN-Related (Card-Present Only)
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 55 | Incorrect PIN | Yes (limited) | Customer can retry with correct PIN |
| 75 | Allowable PIN tries exceeded | No | Card locked - customer must call issuer |
| 86 | Cannot verify PIN | Yes | Technical issue with PIN verification |
Technical Issues
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 19 | Re-enter transaction | Yes | Retry the transaction |
| 22 | Suspected malfunction | Yes | Retry shortly |
| 30 | Format error | No | Check message format |
| 31 | Bank not supported by switch | No | Routing issue |
| 68 | Response received too late | Yes | Timeout - retry |
| 90 | Cutoff is in process | Yes | Batch processing in progress |
| 91 | Issuer or switch inoperative | Yes | Retry in a few minutes |
| 92 | Financial institution cannot be found | Yes | Routing issue - retry |
| 96 | System malfunction | Yes | Retry shortly |
Other
| Code | Description | Retry? | Merchant Action |
|---|---|---|---|
| 17 | Customer cancellation | No | Customer cancelled |
| 21 | No action taken | No | No specific reason provided |
| 93 | Transaction cannot be completed - violation of law | No | Cannot proceed |
| 94 | Duplicate transmission | No | Already processed |
Visa-Specific Codes
Visa uses additional alphanumeric codes beyond the standard ISO 8583 set.
| Code | Description | Retry? | Notes |
|---|---|---|---|
| 1A | Authentication required | Yes | 3DS authentication needed |
| 6P | Customer ID verification failed | No | Identity verification failed |
| N4 | Exceeds issuer withdrawal limit | After 24h | Similar to code 61 |
| N7 | CVV2 failure | Yes | Re-enter security code |
| P1 | Issuer not available | Yes | Retry shortly |
| R0 | Stop payment order | No | Recurring payment stopped by cardholder |
| R1 | Revocation of authorization order | No | Cardholder revoked authorization |
| R3 | Revocation of all authorizations | No | All recurring authorizations cancelled |
| Z1 | Offline declined | No | Card declined offline |
| Z3 | Unable to go online, offline declined | No | Could not connect, declined locally |
Visa Credential-on-File Codes
| Code | Description | Retry? | Action |
|---|---|---|---|
| R0 | Customer requested stop recurring | No | Remove customer from billing |
| R1 | Revocation of specific authorization | No | Contact customer for new payment method |
| R3 | Revocation of all authorizations | No | Contact customer - all stored credentials invalid |
Mastercard-Specific Codes
Standard Mastercard Codes
| Code | Description | Retry? | Notes |
|---|---|---|---|
| 70 | Contact card issuer | Yes | Customer should verify with bank |
| 78 | No account | No | Account doesn't exist |
| 79 | Life cycle decline | No | Card status changed (closed, blocked) |
| 82 | CVV/CVC check failed | Yes | Re-enter security code |
| 83 | Fraud/security decline | No | High-risk transaction blocked |
Mastercard Merchant Advice Codes (MAC)
Since November 2021, Mastercard groups declines into categories with Merchant Advice Codes. Retrying after MAC 03 or 21 within 30 days incurs fees.
| MAC | Meaning | Action |
|---|---|---|
| 01 | Updated information needed | Use Account Updater (for codes 79, 82) or 3DS (for code 83) |
| 02 | Try again later | Retry is allowed |
| 03 | Do not retry | Do NOT retry - fees apply if you do |
| 21 | Payment cancelled | Do NOT retry - cardholder cancelled |
Fee for violating MAC 03/21: $0.50 per retry (increased from $0.30 in January 2025). This adds up fast on subscription retry logic.
American Express Codes
American Express uses a different code structure, primarily 3-digit numeric codes.
Approval Codes
| Code | Description | Action |
|---|---|---|
| 000 | Approved | Transaction successful |
| 001 | Approve with ID | Approved, verify identification |
| 002 | Partial authorization | Approved for partial amount |
Decline Codes
| Code | Description | Retry? | Notes |
|---|---|---|---|
| 100 | Deny | Yes | General decline |
| 101 | Expired card / invalid expiration date | No | Card expired |
| 106 | PIN tries exceeded | Yes (with PIN reset) | Card locked for PIN |
| 109 | Invalid service establishment | Yes | Merchant setup issue |
| 110 | Invalid amount | Yes | Check amount formatting |
| 111 | Invalid account | No | Account doesn't exist |
| 115 | Requested function not supported | No | Transaction type not allowed |
| 117 | Incorrect PIN | Yes | Retry with correct PIN |
| 119 | Transaction not permitted (PIN) | No | Restriction on account |
| 122 | Invalid keyed card security code | Yes | CID incorrect - re-enter |
| 125 | Additional customer identification required | Yes | Need more verification |
| 130 | Invalid effective date on card | Yes | Check card dates |
| 181 | Format error | Yes | Message format issue |
| 183 | Invalid currency code | No | Currency not supported |
| 187 | Deny - new card issued | Yes | New card exists, get from customer |
| 200 | Deny - pick up card | No | Card reported lost/stolen |
| 911 | Card issuer timed out | Yes | Retry shortly |
| 912 | Host unavailable | Yes | Retry shortly |
| D2 | Invalid service code, restricted | No | Card restricted |
| D4 | Invalid transaction | No | Transaction type not allowed |
Discover Codes
Discover primarily uses the standard ISO 8583 codes (00-99). Key Discover-specific behaviors:
| Code | Discover-Specific Notes |
|---|---|
| 05 | Generic decline - common on Discover |
| 51 | Insufficient funds - same as other networks |
| 54 | Expired card |
| 57 | Transaction not permitted - may indicate international restriction |
| 62 | Often means Discover not accepted at terminal |
Discover Stop Payment Codes
| Code | Description | Action |
|---|---|---|
| R0 | Stop payment order | Customer requested stop - do not retry |
| R1 | Revocation of authorization | Remove stored credential |
Soft vs Hard Declines
Soft Declines (Retriable)
Temporary issues that may resolve with time or retry:
| Category | Codes | Strategy |
|---|---|---|
| Issuer unavailable | 91, 92, 96 | Retry immediately, then with exponential backoff |
| Processing errors | 19, 22, 68 | Retry once immediately |
| Timeout | 911, 912 | Retry in 30-60 seconds |
| Authentication needed | 1A | Redirect to 3DS |
Retry strategy: Auto-retry with exponential backoff. First retry immediately, second at 30 min, third at 4 hours, fourth at 24 hours.
Hard Declines (Not Retriable)
Permanent issues requiring customer action:
| Category | Codes | Strategy |
|---|---|---|
| Invalid card | 14, 15, 54, 56 | Request different payment method |
| Lost/Stolen | 41, 43, 200 | Do not proceed, contact security if needed |
| Fraud blocks | 04, 07, 34, 59 | Do not proceed |
| Card restrictions | 57, 62, 119 | Customer must contact issuer |
| Insufficient funds | 51 | Notify customer, don't auto-retry |
Strategy: Notify customer, request different payment method. Do NOT auto-retry.
Gray Area Declines
Some codes require judgment:
| Code | When to Retry | When Not to Retry |
|---|---|---|
| 05 (Do Not Honor) | First occurrence, retry after 24h | Repeated declines on same card |
| 65 (Activity Limit) | Next calendar day | Same day |
| 51 (Insufficient Funds) | After customer confirms funds added | Never auto-retry |
| 01 (Refer to Issuer) | After customer contacts bank | Until customer confirms resolution |
Decline Code Categories for Reporting
When building decline analytics, group codes into these categories:
| Category | Codes | Typical % | Action |
|---|---|---|---|
| Insufficient Funds | 51, 65, N4 | 25-40% | Customer notification |
| Card Invalid | 14, 54, 56, 101 | 10-15% | Request new card |
| Do Not Honor | 05, 100 | 15-25% | Contact issuer |
| Fraud/Security | 04, 41, 43, 59 | 5-10% | Do not retry |
| Technical | 91, 92, 96, 911 | 5-10% | Auto-retry |
| Authentication | 1A, 125 | 5-15% | 3DS/verification flow |
| Other | All others | 10-20% | Case by case |
Test to Run
Weekly decline analysis:
- Pull all declines from your processor for last 7 days
- Group by response code
- Calculate percentage of total transactions
- Compare to benchmarks above
- Investigate any category over 5% of total volume
Monthly retry analysis:
- Count retries per decline code
- Calculate retry success rate per code
- Identify codes you're retrying that never succeed (stop retrying those)
- Check for Mastercard MAC 03/21 violations
Scale Callout
| Volume | Focus |
|---|---|
| Under $100K/mo | Know soft vs hard. Don't retry hard declines. |
| $100K-$1M/mo | Build decline reporting by category. Implement smart retry logic. |
| Over $1M/mo | Negotiate decline code visibility with processor. Build automated retry rules. Monitor MAC compliance. |
Where This Breaks
Processor code mapping: Your processor may translate network codes to their own codes. Ask for the original network response code, not just their internal code.
Generic declines: Code 05 "Do Not Honor" tells you nothing. Push issuers (through your processor) for more specific codes when possible.
International cards: Same code may mean different things for international issuers. Code 57 especially varies by region.
Retry fees: Mastercard's MAC program penalizes retries on codes 03 and 21. Make sure your retry logic respects these.
Next Steps
Debugging a specific decline?
- Find the code in the tables above
- Check if it's soft or hard
- Take the recommended action
Building decline handling?
- Implement soft/hard classification
- Set up smart retry logic with backoff
- Build customer messaging by decline type
Improving auth rates?
- Auth optimization playbook - Full guide
- Card Account Updater - Keep cards current
- 3D Secure - Handle authentication declines
Subscription retry strategy?
- Recurring billing guide - Dunning best practices
- Respect Mastercard MAC codes - avoid fees
- Don't retry hard declines ever
Related Resources
- Auth Optimization - Improving approval rates
- Subscriptions & Recurring - Dunning and retry
- 3D Secure - Authentication declines
- Reason Codes - Chargeback reason codes (different from decline codes)
- Processor Management - Acquirer relationships
- Checkout Conversion - Reducing abandonment
- Benchmarks - Target auth rates
- Card Testing - Fraud causing declines