# Declined charges

Source: <https://docs.gjold.com/learn/declined-charges>

An issuer that declines a charge says whether it might approve it later. Trying again after a decline that says never is pointless, and the card schemes fine it; trying again after one that says later works, within limits.

Last reviewed 2 November 2026. The schemes change these rules, and your acquirer may set lower limits of its own.

## Two kinds of decline

- **Never.** The issuer will not approve a charge on this card, however often you try: the card is closed, lost, or stolen, it has expired, the payer has stopped your charges, or the card does not exist.
- **Not now.** The issuer can't approve this charge at this moment, but may later: the account lacks the money, a limit has been reached, or the issuer could not be reached.

API v2 tells you which: a failed [Charge subscriber](https://docs.gjold.com/v2/subscribers/charge) answers with a message that starts with `permanent` or `transient`. v1 does not: its message names the party that declined, and why, as [Charge subscriber](https://docs.gjold.com/v1/subscribers/charge#declines) shows.

## The schemes' limits

**Visa** sorts declines into four categories. It forbids any new attempt after a decline in category 1, where the issuer will never approve, such as response codes 04, 07, 12, 14, 15, 41, 43, 46, 57, R0, R1, and R3. After a decline in the other categories, it allows at most 15 attempts on the same card in 30 days. It charges the acquirer, who passes it on to you, for each attempt beyond that.

**Mastercard** adds a merchant advice code to a decline. Code 03, do not try again, and code 21, payment cancelled, forbid any new attempt. Otherwise, it allows only a few attempts a day on the same card: Nets, for one, blocks a shop's attempts after 9 in 24 hours.

Both count attempts per card, so a retry by another of your systems, or of another order, counts too.

## A schedule that keeps within them

- After a `permanent` failure, don't try again. Ask the payer to save a new card: in the API, by [renewing](https://docs.gjold.com/v1/subscribers/renew) the subscriber.
- After a `transient` failure, try again later, at most once a day and at most five times in all, then treat it as permanent. A day gives a payer who lacked the money time to get it.
- Tell the payer at the first failure, not the last, so that they can fix it before you give up.

The [implementation note on charging subscribers](https://docs.gjold.com/notes/subscribers) shows how to build this into an integration.

## Sources

- Nexi, [Managing authorization reattempts](https://developer.nexigroup.com/netaxept/en-EU/docs/managing-authorization-reattempts/), with Visa's and Mastercard's codes and Nets' limits.
- Nets, [Visa fines on attempts to complete already declined transactions](https://support.nets.eu/article/visa-fines-on-attempts-to-complete-already-declined-transactions).
- Braintree, [Merchant advice codes](https://developer.paypal.com/braintree/docs/reference/general/merchant-responses/merchant-advice-codes/).
