Chase overdue invoice payments from Google Sheets with OpenAI and Gmail

Go to Workflow
0 views
Built by Jupi Labs Jupi Labs
Created on September 24, 2026

Description

Quick overview
This workflow runs daily at 9am, reads invoices from Google Sheets, uses OpenAI to draft an overdue-payment reminder with escalating tone based on days overdue, creates a Gmail draft to the client, and updates the sheet with the latest chase timestamp.

How it works
Runs every day at 9am on a schedule.
Reads all invoice rows from the “Invoices” tab in Google Sheets.
Filters for unpaid invoices that are past due and not chased in the last three days, and assigns a reminder tier (polite, firmer, or final) based on days overdue.
Sends the invoice details and tier instructions to OpenAI to generate a short reminder email body.
Creates a Gmail draft addressed to the client with the generated text and, for final notices, appends the payment link from the sheet.
Updates the matching invoice row in Google Sheets to set “Last chased” to the current timestamp.

Setup
Connect Google Sheets, Gmail, and OpenAI credentials.
Select your spreadsheet document in both the Google Sheets read and update steps, and ensure it contains an “Invoices” tab.
Ensure the sheet has the required columns: Invoice #, Client, Client email, Due, Amount, Status, Payment link, and Last chased, and mark paid invoices with Status = PAID.

Nodes Used (4)

Code
n8n-nodes-base.code
Gmail
n8n-nodes-base.gmail
Google Sheets
n8n-nodes-base.googleSheets
OpenAI
n8n-nodes-base.openAi