All Tutorials Billing Automation

Building an Automated Invoice Reminder Workflow with n8n and QuickBooks

Intermediate 40-50 min setup
n8nQuickBooks OnlineGmail / SMTP

What You'll Build

A scheduled workflow that runs once a day, pulls every open invoice from QuickBooks, checks how many days overdue each one is, and sends the right reminder email for that stage (a friendly nudge at 3 days late, a firmer note at 14, and a final notice at 30), all logged back to QuickBooks so your team can see what's been sent.

Prefer to skip the setup? We'll build this exact workflow for you.

Get it built

Tools & Accounts You'll Need

Some links above are affiliate links. If you sign up through them, we may earn a commission at no extra cost to you. See our Affiliate Disclosure.

Step-by-Step Walkthrough

1

Set up the daily schedule trigger

Add a Schedule Trigger node set to run once a day, early morning (before your billing team's day starts is a common choice). This replaces someone having to remember to check the aging report manually.

2

Pull open invoices from QuickBooks

Add a QuickBooks Online node set to Get Many Invoices, filtered to invoices with a balance greater than zero. This returns every unpaid invoice along with its due date and customer details.

3

Calculate days overdue

Add a Code (or Function) node that compares each invoice's due date to today's date and calculates the number of days overdue. This is the value the next step uses to decide which reminder tier applies.

4

Branch by overdue tier

Add an IF or Switch node with three branches: 3+ days overdue, 14+ days overdue, and 30+ days overdue. Each branch should only match its own range (so a 20-day-overdue invoice hits the 14-day branch, not both), to avoid sending two reminder emails for the same invoice on the same run.

5

Send the matching reminder email

Add a Gmail or SMTP node on each branch, each with its own email template and tone: friendly reminder, firmer follow-up, and final notice. Include the invoice number, amount due, and a direct payment link if QuickBooks Payments is enabled on the account.

6

Log the reminder back to QuickBooks

Add a final QuickBooks Online node to append a private note to the invoice (e.g. "14-day reminder sent automatically on [date]"). This keeps a paper trail so your team never wonders whether a reminder already went out.

Common Pitfalls

Double-sending reminders: without the note-back step, this workflow can send the same reminder every day once an invoice crosses a threshold, since it has no memory of what it already sent. The QuickBooks note step is what prevents that.

Currency and multi-entity accounts: if your QuickBooks account handles multiple currencies or multiple company files, make sure the "amount due" field you're pulling reflects the correct currency formatting before it goes into a client-facing email.

Sending reminders for disputed invoices: add a tag or custom field in QuickBooks that your billing team can flag on invoices under dispute, and filter those out of this workflow entirely. Nothing damages a client relationship faster than an automated reminder for an invoice they've already flagged as wrong.

Recap

This workflow turns accounts-receivable follow-up from a task someone has to remember to do into something that simply happens, consistently, every single day, with the tone escalating appropriately as an invoice ages. Most firms that automate this see faster average payment times within the first billing cycle, simply because reminders stop depending on someone's bandwidth that week.

Don't want to build this yourself?

We'll build, test, and document this exact workflow for your stack.

See Automation Services