BASIC CONCEPTS

Authorization and declines: soft declines, hard declines and codes

Authorization checks whether a payment can proceed. Compare soft and hard declines and authentication requirements with orders and holds before retrying.

AuthorPIKABAO Data Research GroupLast reviewedBlogAll articlesBodyAbout 1728 wordsReadingAbout 8 minutes
Key Takeaways
  • Authorization only holds your balance; the money is actually taken by the capture that follows;
  • Declines come in two kinds: soft and hard: soft ones can be retried later, hard ones only get worse with retries;
  • The decline code is the machine-readable reason from the issuing side: the starting point of troubleshooting, not the end;
  • Rapid retries trigger velocity limits and get flagged as card testing, locking down your card and account together;
  • Some declines: like verification required: are perfectly recoverable; they're not a dead end.

What Authorization Actually Does

Let's clear up the most common misunderstanding first: authorization is not the same as charging the card.

When you click pay on a page, the merchant sends your card details to the acquirer and the card network, and the final decision is made by the issuer. If the request is approved, the issuer holds the amount: the funds are reserved but not actually moved yet. The merchant must later submit a capture request for the money to actually move.

  • Authorization: ask the issuer “can this payment go through?” and hold the funds if approved;
  • Capture: the merchant actually takes the money, usually after the goods ship or the service is delivered;
  • Clearing and settlement: the two sides reconcile, and the merchant receives the net amount after fees.

This three-step structure explains two common observations: why a hotel pre-authorization can differ from the final charge, and why some charges “appear and then disappear”: that's an authorization being released rather than captured. For the full three-step chain, see From preauthorization to refunds: capture, clearing and settlement.

The Line Between Soft and Hard Declines

There isn't just one kind of decline: there are two, and they call for completely opposite responses:

Soft declineHard decline
What it meansThis attempt failed, but the cause may be temporaryThis card or this transaction isn't allowed in the first place
Can you retry?Yes, but leave a gap between attemptsNo: retrying won't change the outcome
Typical causesInsufficient funds, system issues, additional verification requiredCard reported lost or stolen, card restricted, cardholder revoked the authorization
What happens if you keep retryingMay escalate into velocity limitsImmediately escalates risk controls and can affect your whole account

If you can't tell the two apart, you end up with the classic outcome: ten straight attempts, and the card gets locked.

The way to tell them apart is straightforward: look at the decline code. Soft-decline codes usually point to a temporary condition (balance, system, verification), while hard-decline codes point to the card's status or the authorization itself. The table below shows where common codes fall.

What the Common Decline Codes Mean

Decline codes are machine-readable strings on the merchant side. Below they're grouped by “can you retry,” with the most common ones listed:

Decline codeMeaningCategoryWhat to do
insufficient_fundsInsufficient funds or card balanceSoftTop up the balance, then try again: don't blindly retry
try_again_laterThe issuer or network can't process it right nowSoftWait a while and retry
processing_errorAn error occurred during processingSoftRetry later; if it keeps happening, contact the merchant
authentication_requiredThis transaction requires additional identity verificationSoftComplete the verification and you're fine: it's not a dead end
expired_cardThe card has expiredHardGet a new card and update the expiry date
incorrect_cvcThe security code is incorrectHardDouble-check the security code; don't retry in a loop
restricted_cardThis card is restricted from this type of useHardUse another card or payment method; retrying won't help
revocation_of_authorizationThe cardholder has revoked the authorizationHardContact the merchant to establish a new authorization
stolen_card / lost_cardThe card has been reported lost or stolenHardStop using it and get a new card immediately
card_velocity_exceededToo many attempts in a short periodHardStop trying and wait for the limit to lift
do_not_honorA decline from the issuer with no stated reasonDepends on how it persistsContact the issuer to ask why before blindly retrying

The codes in the top half can be retried; retrying the bottom half only makes things worse: this table is the heart of the page.

The authoritative meaning of each decline code comes from the official documentation of the card network and processor: Stripe's official decline codes documentation and Stripe's decline handling documentation are good references. Naming differs slightly between processors, but the underlying meaning system is consistent.

Why Retrying in a Loop Makes Things Worse

Clicking again the moment something fails is the most natural reaction: and the most harmful one.

  1. Every attempt is logged as an entry in the risk-control systems on both the issuer and acquirer sides;
  2. A string of rapid failures from the same merchant is flagged as a classic sign of card testing: the standard move fraudsters use to probe card numbers;
  3. Once you trip the velocity limit, you get card_velocity_exceeded: and at that point even the correct card gets blocked along with everything else;
  4. If the failures span multiple merchants, the risk signal is even stronger and can pull down other subscriptions tied to the same card.

So the right sequence is: read the decline code, decide whether it's soft or hard, address the root cause, and only then decide whether to try again. Retrying blindly is pointless: the same request under the same conditions produces the same result.

Some Declines Can Be Fixed

Not every decline means getting a new card. One category of declines has a clear fix:

SituationWhat you seeHow to handle it
Additional identity verification requiredPayment fails, but the code points to authenticationComplete the verification step the issuer requires and continue
Insufficient fundsPayment fails, pointing to insufficient_fundsTop up the card, then retry: no new card needed
CAV2 / CVC2 mismatchPayment fails, pointing to the security codeVerify the security code and card number belong to the same card
Card details need updatingPayment fails, pointing to expiry or a card number changeUpdate the card number, expiry date, and security code

These four situations account for the vast majority of everyday failures, and none of them requires a new card.

don't rush to replace the card when a payment fails. A new card fixes card-status issues, but most failures come down to four causes: balance, transaction type, address, and verification: and a new card won't help with any of those.

Four Steps After Reading a Decline Code

Here's everything above compressed into an actionable sequence: when a charge fails, work through these four steps:

Get the decline code and classify it as soft or hard

The merchant dashboard, payment platform, or the issuer's support can provide it. Soft declines can be retried later; hard declines must be fixed at the root first.

Fix soft declines at the root; change course for hard ones

Insufficient balance? Top up. Verification needed? Complete it. Card restricted or authorization revoked? Switch cards or payment methods instead of retrying.

Check the card's four details and the billing address

Card number, expiry date, security code, and billing address: all four must match what the issuer has on file. This step resolves a surprisingly large share of “mystery” failures.

Leave gaps between attempts and log every failure

Retrying back-to-back trips the velocity limit. Space out your attempts and keep records: they're the most useful evidence if you ever need human intervention. See Checking failed payment records for Claude and ChatGPT.

Cards issued on this platform are valid long-term and work for recurring billing; card BINs span the US, Japan, Singapore, Hong Kong (China), and Europe. You control the card limit: which means its most common soft-decline cause is an insufficient balance, and that's fixed simply by topping up. We won't claim “a new card will fix it”: for most declines, the root cause isn't the card at all. Current top-up and fee terms are on the Pricing page. We don't guarantee any merchant's payment outcome.

Once you understand the code and do need a new card, choose a card type for your use case; if you're unsure about a scenario, start with the Ten virtual card decline reasons and troubleshooting checks.

FAQ

Does a successful authorization mean the payment succeeded?

No. Authorization only holds the funds; the merchant still has to submit a capture for the money to actually move. If an authorization is never captured, the hold is released after a period of time.

How do I tell a soft decline from a hard one?

Look at what the decline code points to: balance, system issues, or verification needed means soft: retry later; card status, card restrictions, or a revoked authorization means hard: retrying won't help.

What happens if I retry several times in a row?

A string of rapid failures is flagged as card testing and trips the velocity limit (card_velocity_exceeded). Even a correct card gets blocked at that point, and other subscriptions may be affected too.

Does authentication_required mean the card is useless?

No. This code means additional identity verification is needed: complete it and you can continue. It's recoverable and not a hard decline.

What does do_not_honor mean?

The issuer declined without giving a specific reason. Contact the issuer to find out why first: blind retries are pointless, and jumping straight to a new card isn't recommended either.

What kind of decline is insufficient funds?

A soft decline. Top up the card and you can retry: no new card needed. Prepaid cards have no credit fallback: when the balance runs out, the payment fails, and topping up is the only fix.

Where can I see the decline code?

The merchant side: payment platforms and acquirer dashboards: usually surfaces the machine-readable code. Cardholders generally don't see it directly and may need to ask the merchant or issuer.

What do I do if the card is restricted (restricted_card)?

Use another card or payment method. The restriction is set by the issuer or merchant, has nothing to do with your balance, and retrying won't help.

Why did the second subscription payment fail when the first succeeded?

Three common causes: the transaction type doesn't support recurring billing, the balance can't cover this cycle, or the merchant changed its payment channel and altered the transaction's characteristics. Use the decline code to tell which one it is.

Got the idea in a few minutes? Go open a card

Cards start at $1, no monthly fee; account top-up is $0 with a $20 minimum per deposit. See the pricing page for full details.

Refund policy → Card balance refunds · full rules
Online support