Home / Blog / How to Automate Invoice Reminders in Stripe (Step-by-Step)
Stripe AutomationMarch 22, 202610 min read

How to Automate Invoice Reminders in Stripe (Step-by-Step)

55% of invoices in the U.S. are paid after their due date (Atradius Payment Practices Report). For small businesses, that translates to an average of $39,406 lost annually to late payments (Kaplan Group). And here's the kicker — the longer you wait to follow up, the less likely you are to collect. An invoice at 90 days overdue has only a 50% chance of being collected, dropping to just 27% after a year (ResolvePay).

If you're using Stripe to send invoices, you need a system that follows up automatically. In this guide, you'll learn three approaches — from Stripe's built-in settings to a fully automated escalation system — with real data on what actually works.

The Real Cost of Not Automating

Before we dive into the how, let's quantify the problem.

According to QuickBooks' 2025 Small Business Late Payments Report, 89% of SMEs say late payments have impeded business growth. The average small business is owed $17,000 in outstanding invoices at any given time, and 82% report moderate to critical cash flow disruption as a result.

Manual follow-up makes this worse:

  • Each invoice costs $15–$40 to process manually (Gennai/Quadient)
  • An AP clerk spends an average of 12 minutes per invoice on follow-up
  • That's roughly 5 invoices per hour — and most businesses have more overdue invoices than that

The math is simple: if you have 20 overdue invoices per month and spend 15 minutes each on follow-up emails and phone calls, that's 5 hours per month of awkward, repetitive work. And it's inconsistent — you'll forget some, delay others, and send the wrong tone at the wrong time.

Automated reminders fix all of this. Research from Tratta shows that automation improves collection rates by 20–30% compared to manual follow-up, and reduces average payment delays from 45 days to 15–20 days (Emagia).

What Stripe Offers Out of the Box

Stripe has invoice reminder features built into its dashboard. Here's what you actually get:

  1. Smart Retries — Stripe automatically retries failed card charges on an ML-optimised schedule. Great for subscriptions, but this only works for failed card charges, not unpaid invoices sent via email.

  2. Up to 4 reminder emails — You can configure up to 4 total reminders per invoice: 1 before the due date and 3 after. Configurable in Settings > Billing > Subscriptions and Emails.

  3. PDF attachments — Stripe includes invoice PDFs in reminder emails for easier accounting.

  4. Basic branding — You can customise the colour, icon, and logo in Branding settings.

The limitations

  • Maximum 4 reminders. Stripe caps you at 4 reminders per invoice — 1 pre-due and 3 post-due. You can't add a 5th.
  • Email only. No SMS option — despite SMS having a 98% open rate versus email's 37% (Atlas Communications).
  • No tone escalation. Every reminder uses the same template. You can't start friendly and escalate to firm.
  • No analytics. You can't see which reminder actually prompted payment.
  • No custom templates. The email design is Stripe's, with limited branding.
  • Reminders disabled with manual advancement. If you set auto_advance: false on invoices, reminders won't send at all.

For Net 30 payment terms:

  • Reminder 1: 3 days before due date (pre-due nudge)
  • Reminder 2: 7 days after due date
  • Reminder 3: 14 days after due date
  • Reminder 4: 30 days after due date

Verdict: Decent for businesses with a handful of invoices. But with a 4-reminder cap and no SMS or escalation, you're leaving money on the table.

Option 1: Configure Stripe's Built-in Reminders

If you just want the basics, enable Stripe's reminders:

Steps:

  1. Log in to your Stripe Dashboard
  2. Go to Settings > Billing > Subscriptions and emails
  3. Enable "Send reminders if a one-off invoice hasn't been paid"
  4. Enable "Send reminders if a recurring invoice hasn't been paid"
  5. Select your reminder timing from the dropdown options
  6. Save changes

Pros:

  • Zero setup effort
  • Free (included with Stripe)
  • PDF attachments included automatically

Cons:

  • Maximum 4 reminders per invoice
  • Generic Stripe-branded email
  • No SMS, no escalation, no analytics

Verdict: Good enough for hobbyists with fewer than 10 invoices per month. Not sufficient for businesses that depend on consistent cash flow.

Option 2: Build It Yourself with the Stripe API

If you're a developer and want full control, you can build a custom reminder system using the Stripe API and webhooks.

Architecture overview:

  1. Listen for webhook events — Set up a webhook endpoint to receive invoice.payment_failed, invoice.overdue, and invoice.paid events.
  2. Schedule reminder jobs — When an invoice becomes overdue, schedule a series of reminder emails (e.g., day 1, 3, 7, 14, 30) using a job queue like BullMQ, Celery, or a cron system.
  3. Send emails — Use an email provider (Resend, SendGrid, SES) to send templated reminder emails at each level.
  4. Cancel on payment — When invoice.paid fires, cancel all pending reminder jobs for that invoice.
  5. Track results — Log each send and check which level each invoice was at when it got paid.

Key Stripe API endpoints:

  • GET /v1/invoices/:id — Check invoice status before sending
  • GET /v1/invoices?status=open&due_date[lt]=now — Find all overdue invoices
  • POST /v1/invoices/:id/send — Re-send Stripe's built-in invoice email

Sample webhook handler (Node.js):

app.post('/webhooks/stripe', async (req, res) => {
  const event = stripe.webhooks.constructEvent(
    req.body, req.headers['stripe-signature'], webhookSecret
  )

  if (event.type === 'invoice.overdue') {
    const invoice = event.data.object
    // Schedule escalating reminders
    await scheduleReminders(invoice.id, invoice.customer_email)
  }

  if (event.type === 'invoice.paid') {
    const invoice = event.data.object
    // Cancel all pending reminders
    await cancelReminders(invoice.id)
  }

  res.json({ received: true })
})

Pros:

  • Full control over timing, tone, and channels
  • Can add SMS, Slack notifications, etc.
  • Custom analytics

Cons:

  • Significant development time — expect 2–4 weeks to build properly
  • Ongoing maintenance — webhook handling, error recovery, email deliverability
  • Infrastructure costs — you need a job queue, email provider, and hosting for workers
  • Edge cases — partial payments, disputed invoices, webhook retries, idempotency

⚠️ The hidden complexity

The initial build isn't the hard part — it's the edge cases. What happens when a webhook is delivered twice? When a customer pays one of three overdue invoices? When your worker crashes mid-escalation? Building a robust system takes significantly more effort than a prototype.

Verdict: A solid option if you have a developer on staff and want total control. But the maintenance burden is real — especially for small teams.

Option 3: Use ChaseInvoices (Automated Escalation)

ChaseInvoices is purpose-built to solve this exact problem. It connects to your Stripe account via webhooks and handles the entire reminder lifecycle automatically.

How it works:

  1. Add the ChaseInvoices webhook URL to your Stripe dashboard (Settings > Webhooks). Takes about 2 minutes.
  2. Configure your preferences — set the escalation timing, tone per level, and channels (email, SMS, or both). Or just use the defaults.
  3. That's it. ChaseInvoices monitors every invoice and sends perfectly-timed reminders on days 1, 3, 7, 14, and 30.

What you get:

  • 5-level escalation system — from a friendly nudge to a final demand, perfectly tone-calibrated. Read the full escalation framework.
  • Email + SMS — SMS has a 98% open rate and is read within 5 minutes on average. Email creates the paper trail. ChaseInvoices uses both.
  • Automatic cancellation — the moment Stripe confirms payment, all pending reminders are cancelled. Zero awkward over-messaging.
  • Recovery analytics — see which reminder level and channel recovers the most revenue.
  • Emails sent under your brand — customers see your business name, not ours.
  • Idempotent webhook processing — handles retries and edge cases automatically.

The collection probability timeline

This is why escalation matters. According to collection industry data (ResolvePay, Credit Iowa):

| Invoice Age | Collection Probability | |---|---| | Due date | 99% | | 30 days overdue | 95% | | 60 days overdue | 85% | | 90 days overdue | 50% | | 180 days overdue | 20% | | 1 year overdue | 27% |

Every day without a follow-up, your money is literally becoming harder to collect. The 5-step escalation system is designed to recover invoices in the first 30 days — while you still have a 95%+ probability of collection.

Pricing:

Starting at $24/month. No per-email fees. Unlimited invoices.

Pros:

  • Setup in 2 minutes (no code)
  • Handles all edge cases (partial payments, duplicates, cancellations)
  • Recovery analytics show what's working
  • SMS support included
  • No infrastructure to maintain

Cons:

  • Monthly subscription cost
  • Less customisation than a fully custom build

Verdict: The best option for businesses that want reliable, automated invoice collection without building and maintaining their own system.

Comparison: Which Approach Is Right for You?

| Feature | Stripe Built-in | Custom Build | ChaseInvoices | |---|---|---|---| | Setup time | 2 minutes | 2–4 weeks | 2 minutes | | Reminder levels | Up to 4 | Custom | 5 (escalating) | | Tone escalation | No | Build it | Yes | | SMS support | No | Build it | Yes | | Auto-cancel on payment | Basic | Build it | Yes | | Analytics | No | Build it | Yes | | Maintenance | None | Ongoing | None | | Cost | Free | Dev time + infra | $24/month | | Edge case handling | Basic | You build it | Handled |

The ROI of Automation

Let's run the numbers for a typical small business:

  • 20 invoices/month, average value $2,000
  • 55% are paid late (Atradius) = 11 overdue invoices
  • Without follow-up: recover ~35% = $15,400 lost/year
  • With automated escalation (20–30% improvement per Tratta): recover ~75% = $6,600 lost/year
  • Net savings: ~$8,800/year — for a $24/month tool ($288/year)

That's a 30x return on investment — and that's before counting the 5+ hours per month you save on manual follow-up.

FAQ

Can I use Stripe's built-in reminders AND ChaseInvoices together?

You can, but we recommend disabling Stripe's built-in reminders to avoid sending duplicate emails to your customers. ChaseInvoices replaces and improves upon Stripe's reminder system.

Will ChaseInvoices work with Stripe subscriptions?

Yes. Any invoice created by Stripe — whether from a subscription, a one-time payment, or manually created — is monitored automatically.

Do I need to change my Stripe setup?

No code changes needed. You just add a webhook URL in the Stripe dashboard. Your existing invoicing workflow stays exactly the same.

What happens if my customer pays outside of Stripe?

If you mark the invoice as paid in Stripe, ChaseInvoices will detect the status change and cancel all pending reminders automatically. If payment happens entirely outside Stripe, you'll need to mark it in Stripe for the reminders to stop.

How many reminders does Stripe send natively?

Stripe allows a maximum of 4 reminders per invoice — 1 before the due date and 3 after. All are email-only with no tone escalation. ChaseInvoices sends 5 escalating reminders across email and SMS.

Can I customise the email templates?

The templates match common overdue invoice email best practices and are professionally written for each escalation level. Custom template editing is on our roadmap.

Automate your Stripe invoice reminders

Connect Stripe in 2 minutes. ChaseInvoices sends escalating email and SMS reminders on days 1, 3, 7, 14, and 30 — automatically. 55% of invoices are paid late. Don't let yours be.

Start Free Trial

Stop chasing invoices manually

ChaseInvoices sends escalating reminders automatically — email and SMS on days 1, 3, 7, 14, and 30. Connect Stripe in 2 minutes.

Start Free Trial
CI

ChaseInvoices Team

Helping businesses get paid on time, automatically.

Related Posts

Client Communication

How to Chase an Overdue Invoice Without Damaging the Relationship

10 min read

Collection Strategy

Escalating Invoice Reminders: The 5-Step System That Gets You Paid

9 min read

Client Communication

How to Send a Payment Reminder Without Being Rude (5 Templates)

8 min read