Automated Invoice Payment Reminder System with Google Sheets and Gmail - n8n Workflow

Use this powerful n8n workflow to automate accounts receivable. It connects Google Sheets to Gmail, sending timely, personalized payment reminders for invoices due soon or overdue. Optimize cash flow with this essential n8n template.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?

Freelancers and consultants needing reliable cash flow management.
Small to medium businesses (SMBs) seeking to automate accounts receivable.
Users looking for high-utility n8n templates for finance and operations.
Technical users who appreciate custom logic implemented via the n8n Function node.

Overview

Managing outstanding invoices manually is a significant drag on productivity and cash flow. This essential n8n workflow template solves the problem of delayed payments by fully automating the reminder process. By leveraging the power of an n8n node dedicated to scheduling, the workflow runs daily, checking a Google Sheet for any invoices that are either due soon (configurable, e.g., 3 days before) or recently overdue (configurable, e.g., 7 days past due).

This robust n8n workflow ensures timely communication, reduces administrative overhead, and drastically improves your collection rates. It utilizes a custom function to precisely filter data and generate personalized email content before sending the message through the Gmail n8n node.

How it Works

This n8n workflow operates systematically through five main steps to ensure every relevant reminder is sent:


  1. Daily Schedule Trigger (n8n trigger): The process begins automatically every day at a configured time, ensuring continuous monitoring of all invoice due dates.

  2. Read Invoice Data (Google Sheets n8n node): The workflow connects to your specified Google Sheet (Invoices!A:F) and retrieves all records. It relies on crucial columns like InvoiceID, ClientEmail, Amount, DueDate, and Status.

  3. Filter & Prepare Reminders (Function n8n node): This is the core logic engine. It analyzes each invoice row against the current date. It filters out any invoices marked 'Paid' and identifies those within the configurable reminder window (3 days prior or 7 days post-due date). For eligible invoices, it dynamically generates the specific email subject and body text required.

  4. If Invoices to Remind? (If n8n node): This flow control node checks if the previous step found any items that need reminders. If the list is empty, the n8n workflow stops gracefully; otherwise, it proceeds to the email action.

  5. Send Invoice Reminder (Gmail n8n node): For every invoice item passed through the filter, the Gmail n8n node sends a personalized email reminder to the client, using the dynamically prepared subject and body content.

Installation Guide

To get this "Automated Invoice Reminder" n8n workflow running, follow these configuration steps:


  1. Import the n8n workflow JSON: In your n8n instance, import the provided JSON code as a new workflow.

  2. Configure 1. Daily Schedule Trigger: Ensure the scheduled n8n trigger time is set to your preferred daily check time.

  3. Configure 2. Read Invoice Data (Google Sheets):

Credentials: Set up or select your Google Sheets OAuth2 credential.
Sheet ID: Replace the placeholder YOURGOOGLESHEET_ID with the actual ID of your invoice sheet.
Data Structure: Confirm that your Google Sheet includes columns with the exact names used in the Function node (e.g., InvoiceID, ClientEmail, DueDate, Status).

  1. Configure 3. Filter & Prepare Reminders (Function): Review the custom JavaScript code. You may need to adjust the remindBeforeDays (default 3) and remindAfterDays (default 7) variables, as well as customize the subjectPrefix and bodyText content to fit your language and business needs.

  2. Configure 5. Send Invoice Reminder (Gmail):

Credentials: Set up or select your Gmail OAuth2 credential.
* Recipient and Content: The email To field is set dynamically using the expression {{ $json.clientEmail }}, and the Subject and email body are pulled using {{ $json.subject }} and {{ $json.body }} from the previous n8n node output. No static content change is usually needed here.

  1. Activate: Save the n8n workflow and toggle it to 'Active'. Your new n8n automation is now live.

Node Details

1. Daily Schedule Trigger: Serves as the primary n8n trigger. It ensures the entire n8n workflow executes once every 24 hours to monitor invoice status.
2. Read Invoice Data (Google Sheets n8n node): Fetches all invoice rows from the specified Sheet ID and Range (Invoices!A:F). It connects the invoice data into the n8n flow.
3. Filter & Prepare Reminders (Function n8n node): This critical custom code node implements the business logic. It checks the DueDate and Status fields, calculates the time difference, and generates rich output items containing clientName, subject, and body only for invoices requiring action. This ensures only relevant data progresses to the Gmail n8n node.
4. If Invoices to Remind? (If n8n node): A standard flow control n8n node. It checks if there are any input items (i.e., invoices needing reminders) before proceeding to the emailing step, preventing unnecessary Gmail API calls.


  • 5. Send Invoice Reminder (Gmail n8n node): The final action n8n node. It dynamically uses expressions to pull the recipient email, subject, and body from the preceding node's output to send personalized reminder emails.

Related n8n Workflows

Free

Nodes: 6 Nodes
Updated: December 26 2025
View all
Created by

Simplifying Business with Smart Automation. I create and share user-friendly, highly efficient n8n workflow templates for SMEs, focusing on digital marketing, sales, and operational excellence. Get ready to automate, innovate, and elevate your business. Connect me on Linkedin for custom solutions.

Featured*