How Automated Overdue Reminders Decide When to Send
In this article
Automated overdue reminders are not a single timer that fires once. They're built on a fixed set of day-overdue thresholds — 3, 7, 14, and 30 days — checked against a permanent log of what's already been sent, so the same invoice never gets the same reminder twice and a system outage never causes a flood of duplicate emails once it comes back online. Here's exactly how the logic works, invoice by invoice.
The Four Thresholds
Once automated reminders are enabled for your workspace, every unpaid invoice is checked against four fixed thresholds: 3 days overdue, 7 days overdue, 14 days overdue, and 30 days overdue. These aren't configurable per invoice — they're a single global schedule that applies uniformly, which is deliberate. A fixed, predictable escalation is what makes automation trustworthy in the first place; if the schedule could silently vary invoice to invoice, you'd have to manually verify every reminder rather than trusting the system to handle it.
What Actually Gets Checked Before a Reminder Fires
An invoice has to clear several conditions before it's even considered for a reminder. It must be an invoice (not an estimate or receipt), it must not be in a paid, cancelled, archived, or draft state, it must have a client email on file, its due date must have already passed, and there has to be an outstanding balance greater than zero — an invoice sitting at "partially paid" with money still owed is still eligible; one that's been paid down to zero is not, regardless of what its status label says. Only after all of those pass does the system calculate how many days overdue the invoice actually is.
Why the System Tracks What's "Already Sent" Instead of Just Checking the Date
This is the part that prevents duplicate or out-of-order reminders. Every time a reminder is actually sent, that specific threshold — say, "7 days overdue" — gets permanently logged against that specific invoice. The next time the sweep runs, before sending anything, it checks that log and only sends the next threshold that hasn't already been logged. So if an invoice already has 3-day and 7-day reminders logged, and it's now 20 days overdue, the system sends the 14-day reminder — not a fifth, redundant "still overdue" nudge, and not the 30-day reminder ahead of schedule.
How This Behaves After the Worker Has Been Down for a While
This logging design matters most during an outage. Imagine the reminder worker didn't run for two weeks. When it comes back online, an invoice might now be eligible for the 7-day, 14-day, and 30-day thresholds all at once, since none of them fired while the worker was down. Rather than emailing the client three separate overdue notices back to back, the system sends exactly one email — for the most advanced threshold reached — and then marks every threshold up to and including that one as sent in the same pass. The client gets one accurate, appropriately escalated notice instead of a burst of emails that would look like a malfunction.
How Often the Check Actually Runs
The reminder sweep runs on a fixed interval — every six hours by default. Because eligibility is based on calendar days overdue, not minutes or hours, there's no benefit to checking more frequently than that; an invoice that crosses the 7-day threshold at 2 AM and one that crosses it at 11 PM are treated identically once the day rolls over. Checking every six hours is enough to reliably catch each new threshold within the same day it's crossed, without polling the database more than necessary.
What Turns This On (and Off) in the First Place
Automated reminders are opt-in per workspace, controlled by a single toggle on your business profile. If that toggle is off, none of the above logic runs — the sweep simply skips your workspace entirely during its check. Turning it on doesn't retroactively fire reminders for invoices that quietly crossed a threshold while it was off; the very next scheduled sweep evaluates every eligible invoice fresh, against its actual current days-overdue number, and sends whatever the highest un-logged threshold is at that moment.
Frequently Asked Questions
Will a client get a reminder if they've partially paid? Yes, as long as there's still an outstanding balance after the payments applied so far. A partial payment doesn't pause the reminder schedule — it just changes the amount referenced in the email.
Does marking an invoice as paid stop pending reminders instantly? Yes. The paid status is one of the exclusion conditions checked on every sweep, so the moment an invoice's status flips to paid, it's excluded from the very next check — there's no separate step required to "cancel" a reminder.
Can I add a fifth threshold, like 45 or 60 days? Not currently — the four thresholds are fixed. If an invoice stays unpaid well past 30 days, the 30-day reminder remains the last automated touchpoint; anything past that point is left to manual follow-up or a formal collections process.
Related Articles
Client Statement vs. Accountant Report: What's the Difference
Two reports pull from the same data but serve opposite purposes — one is safe to hand to a client, the other very much isn't.
How the Reusable Service Catalog Speeds Up Invoicing
Why editing a rate in your service catalog never rewrites invoices you've already sent, and how the save-or-update logic actually works.
What's Actually Inside Your Account Data Export
A full breakdown of what the account data export includes, what it deliberately leaves out, and how it's generated on demand.
How the Accounts Receivable Aging Report Buckets Your Invoices
The exact day thresholds, currency grouping, and client-matching logic behind the aging report — and what it deliberately excludes.
How Discounts Are Applied Before Tax on Your Invoices
Tax is calculated on the discounted amount, not the original subtotal — a discount reduces your tax bill too, not just the price the client pays.