Sign in
Failed payment recovery for Stripe

A failed renewal isn’t a cancellation

Lirova classifies each decline, retries what’s worth retrying, stops what isn’t, and follows up by email — so you recover more without burning your standing with the card networks.

Build the example at your scale

Enter a typical plan price and how many subscribers you have. We'll build a set of failed-payment cases at that size, then you open each one to watch how it's worked.

/ mo
Estimated failed payments / mo$2,548.00
Recovered so far$0.00
Recovery rate0%
Subscriptions saved0

The amounts come from the price and subscriber count you entered. How many payments fail and why comes from published industry averages — this is what a recovery flow at your size looks like, not a prediction about your account.

These 3 cases are a sample of the ~52 failed payments a month at this size.

Open a case to see how the failure is classified and worked — each one adds to the total above.

Coming soonToday recovery runs on smart card retries and email. SMS and WhatsApp reminders are on the roadmap.

Connect in ~2 min — we take no payment actions and change nothing in your Stripe until you activate. No card data, no commitment.

No payment actions until you activateWe never store full card dataBuilt on Stripe Connect

Official Stripe Connect integration — we connect through standard Stripe OAuth and take no payment actions until you explicitly activate recovery. You can disconnect anytime from Stripe.

~2 minNothing charged until you activate
EmailLive dunning channel today
0%Upfront cost — pay only on recovered revenue
How it works

Three steps, then it runs

Connect once. Lirova handles the failed-payment lifecycle from the first decline to the recovered charge.

Connect Stripe

Securely link your Stripe account in a few clicks. We listen to your subscription and invoice events — no engineering work needed.

We classify every failure

Each decline is sorted by reason — insufficient funds, expired card, hard decline — so we know whether it is worth retrying and exactly when.

Smart retries + email dunning

We retry at the optimal time and follow up by email until the customer updates payment. SMS and WhatsApp reminders are on the roadmap.

How a recovery unfolds

How one failed charge gets worked

One failed charge, worked across days through timed retries and email until it is recovered — or stopped for good reason.

  1. The failure lands

    A soft decline arrives (insufficient funds). We classify it and hold — no blind retry.

  2. First retry

    The retry goes out on the schedule for this decline reason, with an email nudge.

  3. Follow-up

    Still open, so a second email reminder follows.

  4. Final notice

    A last email before we stop.

Example scenario

Insufficient funds → classified as soft → gentle retry → email → reminder → recovered.

Beyond Stripe Smart Retries

What standard Stripe retries miss

Stripe handles the card retry. Lirova adds decline-reason classification, an email dunning cascade, and an ROI guarantee on top.

Stripe default retriesLirova
Retry scheduleSmart Retries uses machine learning to choose when to retryA schedule per routing lane — spaced out for declines that often clear on their own, fast then backing off for transient errors, none where a retry is prohibited or only the customer can fix it
Decline reasonFailed-payment and payment-confirmation emailsFour-way routing on the decline code, the issuer's advice code and the payment state; no retry on prohibited declines
ChannelsPayment retries, with optional email notificationsMulti-step email cascade
Downside protectionNo recovery guaranteeROI guarantee on Growth & Scale (from your third billing month after your base fee activates)
Pricing that aligns with you

You only pay a fee on revenue we actually recover

Failed payments are pure lost revenue — most of it is recoverable with the right timing and follow-up. With our success-fee model, we win only when you win.

  • No recovery, no fee. The success fee applies only to charges we bring back.
  • Recovered-revenue dashboard. See exactly how much we have returned and your net gain after fees.
  • Lower fees on higher plans. The more you grow, the smaller the percentage you pay.
ROI guarantee — like insurance for failed paymentsIf our retries recover less than your monthly subscription fee, we credit one month's base fee to your account.
Pricing

Plans that scale with your recovery

A flat monthly subscription plus a success fee on recovered revenue. Recovery runs on smart retries and email.

Free

$0 / mo

20% success fee

25 recoveries per month, no time limit.

Try recovery on a small volume of failed payments.

  • Failure classification
  • Smart retries
  • Email dunning
Start free

Starter

$70 / mo

20% success fee

Base fee starts only after your first recovered payment

For early-stage SaaS putting recovery on autopilot.

  • Up to 250 recoveries / mo
  • Everything in Free
  • Full email dunning cascade
  • Recovered-revenue dashboard
Choose Starter

Scale

$499 / mo

10% success fee

Base fee starts only after your first recovered payment

High-volume recovery with the lowest fee tier.

  • Everything in Growth
  • Lowest success-fee rate
  • Higher volume limits
  • Dedicated onboarding
Choose Scale

You don't pay the base fee until we've recovered your first failed payment. The success fee applies only to what we actually recover.

All paid plans add a success fee charged only on revenue we recover — the rate steps down as you move up tiers.

The success fee is only 10–20% of what we actually recover — you keep the rest. No recovery, no fee.ROI guarantee — like insurance for failed payments

If Lirova doesn't recover at least your monthly subscription in failed-payment revenue, we credit one month's base fee. Growth & Scale plans, from your third billing month after your base fee activates. See Terms for full conditions.

FAQ

Questions, answered

How is the success fee calculated?
The success fee is a percentage applied only to payments we recover. If we do not recover a charge, there is no fee for it. The percentage decreases on higher plans.
Is there a minimum volume for this to be worth it?
Yes. Below roughly 20 failed renewals a month there isn't enough volume for the fee structure to make sense. Your decline mix matters more than the count — if most of your failures are hard declines, no tool recovers them. The free audit tells you which you are before you pay anything.
Do I need to change any code?
No. You connect your Stripe account and we work from your existing subscription and invoice events. There is nothing to install in your product.
Which channels are used for dunning?
Today, smart card retries and email on every plan.
What happens to my Stripe account after I connect?
Nothing runs until you activate recovery yourself. Connecting lets us read your failed invoices and their decline codes so we can show you what's there — no retries, no emails to your customers, no charges. Activation is a separate, deliberate step, and you can disconnect from your Stripe settings at any time.
Can I cancel anytime?
Yes. Plans are month-to-month and you can cancel whenever you like — you keep access through the end of the billing period.
When does the base fee start?
On paid plans, the monthly base fee starts only at the first payment recovered by Lirova's retries — not when you connect or subscribe. The success fee applies from day one, on whatever we recover. The ROI guarantee is separate: on Growth and Scale, from your third billing month after the base fee activates.
What access does Lirova get in my Stripe?
Lirova connects through standard Stripe Connect OAuth. Until you explicitly activate recovery, we take no payment actions — a server-side write-gate plus your recorded activation consent gate anything that moves money. We read your failed invoices and their decline codes, plus the minimal customer data needed to send payment-update emails. You can disconnect anytime from Stripe.
Why does Lirova ask for read and write access?
Stripe's standard Connect OAuth has no read-only grant for an integration like ours, so anything that connects a Stripe account this way — Lirova included — receives read_write. The permission you hand over is wide, and we won't pretend it isn't. What we do with it is a separate question: before you activate recovery we only read (the failed invoices, the subscriptions behind them, and their decline codes), and after you activate, the single write we make in your account is paying an unpaid invoice. That is the retry. Nothing else in your Stripe is created, changed or deleted by us.
How do you know a recovery was yours and not Stripe's own retries?
Stripe records which request produced a payment. Every retry we send carries a marker unique to that one attempt, and Stripe reports the marker back on the payment that settles — so a recovery can be traced to the attempt that caused it. A payment your customer made themselves, or one Stripe's Smart Retries produced, comes back without it: we mark the invoice recovered and no success fee accrues. One case is not a clean trace. If the marker is absent on an invoice we did attempt, we treat the recovery as ours only when a single payment settled that invoice; where two payments compete for it, we don't claim it. It is also why we ask you to switch Stripe's own retries off before activating: with one scheduler running, there is nothing for a recovery to be confused with.

Stop losing subscriptions to cards

Connect your Stripe account and start recovering lost subscription revenue — you only pay on what we bring back.

Connect Stripe

No payment actions until you activate · We never store full card data