Skip to content
RevenueLeak

Failed payment recovery that reads the decline code first

A failed renewal is not a cancellation. Most of the time the customer still wants the product and the card simply did not go through. RevenueLeak reads why each payment failed, retries on a schedule that fits the reason, emails the customer when a retry cannot help and gives them a secure page to update the card.

Card payment terminal on a shop counter

Soft declines and hard declines need different handling

Every failed attempt carries a decline code from the card network. A soft decline means the payment may succeed later without any change. A hard decline means it will keep failing until the customer acts. Retrying a hard decline wastes attempts and can raise flags with the issuer, while giving up on a soft decline loses money that would have come in on its own.

Decline codeTypeWhat we do
insufficient_fundsSoftRetry near common paydays, email after the second failure
do_not_honorSoftRetry two to four times over several days at different hours
generic_declineSoftRetry on a spread schedule, then email
expired_cardHardNo retry, card update email with the update link at once
incorrect_number, stolen_card, lost_cardHardNo retry, card update email
authentication_requiredAction neededEmail with a link to confirm the payment

Retry timing around paydays and time zones

When a retry runs matters as much as how many retries run. Insufficient funds declines often clear after a paycheck lands, so for those codes we place retries near the 1st and 15th of the month and near the last business day. Retries run in the customer's local morning, read from the billing address or the card country, not at midnight in your time zone. For example, a customer in California whose renewal failed on a Tuesday evening gets the next attempt on Wednesday or Thursday morning Pacific time, then again after the next payday.

  • Up to eight attempts across up to 28 days, set per decline code.
  • Retries stop at once when the customer updates the card or pays manually.
  • Each attempt and its result shows in the account timeline.

A recovery email sequence that says the right thing

Recovery emails explain what happened in plain words and offer one action. The first email goes out after the first hard decline or the second soft decline. Later emails remind, then state the date access ends. Every email carries the payment update link and is sent from your own domain, so the customer recognizes the sender. The full sequence logic, including grace periods and final notice, sits on the dunning software page.

  • Email one: the payment did not go through, here is the link.
  • Email two: a reminder with the plan name and amount.
  • Email three: access ends on a stated date unless the card is updated.
  • Recovery emails count inside the monthly email limit of your plan.

A payment update page that takes one minute

Each email links to a secure page where the customer sees the plan, the amount due and a card form provided by your billing system. The page needs no login. The link is unique per invoice and expires when the invoice is paid. When the new card is saved, the open invoice is retried right away.

Offer pause instead of cancel

Some customers whose payment fails are also unsure about staying. For them the update page and the final email offer a pause of one, two or three months where your billing system supports pausing. A paused subscription keeps the customer record, the plan and the price, and comes back on a set date. That is often better than a lost subscription and a new signup at a different price later. Voluntary churn is covered on the reduce churn page.

Works alongside built-in billing retries

Stripe, Chargebee, Recurly and Paddle each have their own retry settings. We do not switch them off. We read every attempt they made, compare it with the decline code and add only what is missing: a retry they skipped, an email they never sent, a card update request before expiry. For Stripe payment recovery specifically, the stripe smart retries page shows how our schedule sits next to the built-in one. Cards that are about to expire are handled earlier by the card updater.

What failed payment recovery is worth on your numbers

The audit shows the failed renewals of the last months and how many of them were retried in full. The arithmetic is simple. Take the monthly value of subscriptions lost after a failed payment, then multiply by the share you expect to bring back. For example, 2,000 USD per month of lost renewals with a quarter brought back is 500 USD per month, or 6,000 USD per year, against the price of your plan on revenue optimization software.

Questions about failed payment recovery

No. A retry works on the same open invoice. Once it is paid, no further attempt runs.

No. Expired, lost, stolen and incorrect cards are not retried. The customer gets a card update email instead.

From your own sending domain after you verify it. Until then, nothing is sent.

Yes. We keep Smart Retries as they are and add emails, card update links and retries only where gaps remain.

Yes. Each decline code has its own rule with the number of attempts, spacing and the email step, and every rule can be switched off.