Chasing invoices by hand is easy to put off and awkward to do. This is the logic for a daily job that reads your unpaid invoices, works out how late each one is, and sends the matching reminder, pairing with the Invoice & AR Tracker.
What's inside
- The daily check, step by step
- Which message goes at which stage
- Guardrails for disputes, partial payments and payment plans
What it does
Every morning the automation reads your list of unpaid invoices, calculates days overdue, and sends the next message in a four-step sequence. It skips anything marked disputed or on a payment plan, and tells you when an invoice reaches the firm stage.
The logic
- Trigger: a schedule, once a day at about 8 am on weekdays.
- Read: all unpaid invoices from your tracker sheet, field software or accounting tool.
- For each invoice: days overdue = today minus due date. Skip if it's not yet due.
- Skip any invoice flagged as disputed, partially paid, or on a payment plan. Those need a human.
- Map days overdue to a step: 1 day sends step 1, 8 days step 2, 15 days step 3, 30 days step 4.
- Check the log: if that step has already been sent for this invoice, skip it.
- Send the message for the step, using the customer's preferred channel.
- Write the date and step to the log so it never sends twice.
- At step 3 and above, also notify the owner so a person can follow up.
The four messages are in the Invoice & AR Tracker. Reuse them here, and edit them to sound like you.
Build it in
| Option | What you need | Good for |
|---|---|---|
| Google Sheets plus Zapier, Make or n8n | A scheduled run that reads rows and sends email or text | Most small businesses, and the easiest to inspect |
| Your accounting or field software | Check whether it has built-in payment reminders first | Least to maintain, if it fits your terms |
Test it before it touches a customer
- Run it with your own phone number and email first, end to end.
- Turn on a test mode, or point messages at yourself, until the logic behaves.
- Put three fake invoices in at different overdue ages and confirm each gets exactly the right step, once.
- Watch the first week of real runs by hand, then spot-check weekly.
Common ways it breaks
- Reminders going to a customer who paid yesterday, because payments aren't synced before the run.
- The same step sending every morning, because nothing records that it already went out.
- Partial payments treated as unpaid. Decide what your rule is, and write it down.
- A firm message reaching a customer in a legitimate dispute. The dispute flag is the most important guardrail here.