Chase Unpaid Invoices On Autopilot

Most businesses are sitting on thousands in unpaid invoices right now. This system chases them for you automatically, every day, without you lifting a finger. Recover meaningful cash inside the first week.

Video 1 — Workflow & Spreadsheet Setup

Walks through importing the n8n workflow and setting up the Google Sheet template.

Video 2 — Connecting n8n to Google

OAuth setup for Google Drive, Sheets, and Gmail credentials inside n8n.

One Workflow, Three Moving Parts

You'll wire up an n8n workflow, a Google Sheet, and your Gmail. Once it's running, every overdue invoice gets a polite reminder automatically — daily — until it's paid.

The Spreadsheet

A Google Sheet template tracks every invoice: amount, due date, customer email, status. Three formulas auto-flag overdue rows so the workflow knows who to chase.

Template included

The n8n Workflow

A pre-built n8n blueprint reads the sheet daily, finds overdue invoices, drafts a follow-up email, and sends it from your Gmail. Zero manual work after setup.

Blueprint included

The Gmail Sender

Connects to your Gmail via OAuth so reminders come from your real address — not a "noreply@" robot. Customers reply directly and the thread lands in your inbox.

Your account

Grab These Before You Start

Everything you need is free. Watch the two videos first — they walk through the same steps in real time — then download the template + blueprint from the resource folder.

Resource Purpose Cost Link
n8n Account The automation platform that runs the workflow Free tier n8n.io
Google Account For Sheets, Drive, and Gmail (you almost certainly have one) Free console.cloud.google.com
Video 1 — Workflow + Sheet Setup Walkthrough of importing the workflow and setting up the spreadsheet Free Watch on Loom
Video 2 — Connecting Google OAuth setup for Drive, Sheets, and Gmail credentials in n8n Free Watch on Loom
Template + Blueprint Spreadsheet template and n8n workflow JSON Required Drive folder
$0
Monthly Cost
~20m
Total Setup Time
8
Steps to Done

Stop Losing Money to Awkwardness

Most invoices go unpaid not because customers can't pay — but because no one wants to chase. Here's what changes when the chasing happens automatically:

Task Without Memory With Memory Time Saved
Spotting overdue invoices Manually filter the sheet weekly Auto-flagged daily ~30 min/week
Writing chase emails Draft from scratch each time Templated & sent automatically ~5 min/invoice
Tracking last contact date Search Gmail history Logged in the sheet ~3 min/lookup
Avoiding the awkward chase Procrastinate for weeks Bot handles it — no awkwardness Priceless
Recovering "forgotten" invoices Often written off Chased until paid $$$ recovered
Cash flow forecasting Guesswork Live status column ~20 min/week
Daily
Runs Automatically
0 min
Of Your Time
Week 1
First Recoveries

Real talk: Most clients we deploy this for recover meaningful cash inside the first week. Not because the emails are clever — but because they actually go out. The bot doesn't get embarrassed.

Hi, I'm Sheni

I run Icarus Growth, a London-based agency that helps teams turn 5 hours of work per client into 5 minutes of work — by mapping processes, finding bottlenecks, and building workflows to alleviate them at scale.

This invoice chaser is one of the simplest things we build, and one of the most immediately useful. Most clients recover meaningful cash within the first week of switching it on.

What we build

· Invoice & payment automation
· CRM & lead management systems
· End-to-end operational infrastructure
· Cold email marketing systems

How we work

We work retainer-based with clients long-term, because that's the only way to build something that actually sticks. No one-off fixes. Just infrastructure that keeps working while you focus on the stuff that actually needs you.

The Full SOP

Eight steps. About twenty minutes. Watch the videos in section 02 alongside these instructions if you want a visual walkthrough.

Create Your n8n Account

Go to n8n.io in your browser. Click Get Started in the top right corner. Enter your email and follow the sign-up steps. You'll land on an empty dashboard — that's fine.

Import the Workflow

Open the resource folder and download the file called Invoice Follow-Up. Back in n8n, click Create Workflow, then the three dots in the top right → Import from File. Find the file you downloaded, click it, then click Open. Hit Save — the whole workflow appears on screen.

Set Up the Spreadsheet

Go back to the resource folder and download the second file, the spreadsheet template. Open a blank Google Sheet, then click File → Import → Upload and drag the downloaded file into the box. When asked, select Replace Spreadsheet and click Import.

Add the Formulas

Three columns need a formula. For each one: click the right cell, paste the formula, then drag it down to cover all your rows.

Status — cell H2

=IF(Q2=TRUE, "Paid", IF(P2=TRUE, "Overdue", "Pending"))

Days Overdue — cell J2

=MAX(0, TODAY()-I2)

Past Due Date — cell P2

=IF(I2="", "", I2 < TODAY())

To drag a formula down: click the cell, grab the small blue square in its bottom-right corner, and pull it down to your last row.

Connect Your Google Account to n8n

You need to link three things to n8n: Google Drive, Google Sheets, and Gmail. Run through these substeps once for each.

5.1 — Start inside n8n. Click Personal → Credentials → Create Credential. Search for Google Drive (then Sheets, then Gmail). Copy the Redirect URL — you'll need it in a moment.

5.2 — Set up a Google Cloud project. Open a new tab, go to console.cloud.google.com and log in. Click New Project, name it anything, hit Create.

5.3 — Create OAuth credentials. Go to APIs and Services → Library. Search Google Drive API and click Enable. Then Credentials → Create Credentials → OAuth Client ID. Set type to Web Application. Paste the Redirect URL from n8n into Add Redirect URI, then click Create.

5.4 — Paste credentials back into n8n. Copy the Client ID and Client Secret that appear, paste them into n8n. Click Sign in with Google, pick your account, click Allow. You'll see a green Connection Successful message. Rename it and click Save.

5.5 — Repeat for Sheets and Gmail. Same flow for Google Sheets, then again for Gmail. Once all three are connected you're good to move on.

Connect the Spreadsheet to the Workflow

Inside the workflow, click the Google Sheets block. Select your Google Sheets account from the dropdown, then choose the spreadsheet you set up in Step 3. Click Execute — it should pull in your data without any errors.

Test It

Replace every email address in the spreadsheet with your own — this stops test emails going to real people. Clear everything in the Last Reminder Sent column. Back in n8n, click Execute Workflow. Check your inbox — you should see follow-up emails arriving for each overdue row.

Switch It On

Click the Schedule block at the top of the workflow and confirm it's set to run daily at your preferred time. Toggle the Active switch in the top right corner of the workflow editor. That's it — the system will run every morning without you doing a thing.

Done. Your invoice chaser is live. The first chase email goes out tomorrow morning at your scheduled time. Check back in a week and see what's been recovered.

Common Issues & Fixes

"Connection Failed" when linking Google to n8n

Almost always a Redirect URI mismatch. The URL in your Google Cloud OAuth client must match the one shown in the n8n credential screen exactly — including https://, trailing slashes, and any path segments. Copy/paste it; don't retype.

If you get "Access blocked: This app's request is invalid", make sure you enabled the right API in APIs and Services → Library (Drive API for the Drive credential, Sheets API for Sheets, Gmail API for Gmail).

Workflow runs but no emails go out

Check three things:

1. The Status column. The workflow only chases rows marked Overdue. If your test rows show Pending or Paid, the formula in column H or P is wrong — re-paste from Step 4.

2. The Days Overdue value. Must be greater than 0. If today's date isn't past the invoice due date, nothing fires.

3. The Last Reminder Sent column. If it's already populated for today, the workflow skips that row to avoid double-emailing.

Formulas show #REF or #NAME errors

Usually caused by the spreadsheet importing in a different locale (commas vs. semicolons). If you're in a region that uses semicolons as separators, replace the commas in the formulas:

=IF(Q2=TRUE; "Paid"; IF(P2=TRUE; "Overdue"; "Pending"))
=MAX(0; TODAY()-I2)
=IF(I2=""; ""; I2 < TODAY())

Workflow imported but the Google Sheets node is red

The blueprint references a sheet ID from the original template — you need to point it at your copy. Click the Google Sheets block, then under Document use the dropdown to select your imported spreadsheet. Then under Sheet, pick the correct tab. Click Execute to verify.

Schedule is set but nothing runs overnight

Two checks: first, make sure the workflow is Active (toggle in the top right of the editor — it goes green). Inactive workflows ignore their schedule. Second, confirm the Schedule node's timezone matches yours — n8n defaults to UTC, which can shift your "9am daily" to the middle of the night.

I want to customise the email copy

Click the Gmail node in the workflow. The email body is a template with merge fields like {{$json["Customer Name"]}} and {{$json["Amount"]}}. Edit the text however you want — just keep the merge fields intact so the right details land in each email. Save the workflow when you're done.

Want Us to Build It For You?

If you'd rather skip the setup — or you want a fully custom system built around your existing tools — grab a slot below. No pressure, no pitch. Just a chat.

Built by Icarus Growth — AI operations consulting for agencies & service businesses