January 31, 2026
Small Business Automation N8N

How to Automate Your Invoicing with n8n (Step-by-Step for Non-Techies)

How much money is sitting on the table right now because you haven't sent an invoice yet?

I ask every small business owner this question, and the answer is always uncomfortable. There's always at least one job that was finished days ago—sometimes weeks ago—where the invoice hasn't gone out yet. Not because you don't want to get paid, but because creating and sending invoices is one more task on a list that never seems to get shorter.

Here's a number that should bother you: according to industry data, manual invoice processing costs small businesses up to $8,640 annually for just 480 invoices. That's $18 per invoice in labor time, error correction, and follow-up. Automating that process cuts those costs by 81% and reduces processing time by 80%.

In this guide, I'm going to walk you through setting up automated invoicing using n8n—an open-source workflow automation tool that's free to self-host or $20 per month on their cloud. No coding required. By the end of this article, you'll have a working system that creates invoices, sends them to clients, and follows up on late payments without you doing anything.

Let's get into it.

Table of Contents
  1. What Is n8n and Why Use It for Invoicing?
  2. Choose Your Invoice Backend: Three Options
  3. Option 1: Google Sheets (Free, Easiest)
  4. Option 2: QuickBooks Online (Professional)
  5. Option 3: Stripe + Custom PDF (Modern)
  6. Step 1: Create Your Invoice Tracking Sheet
  7. Step 2: Set Up Your n8n Account
  8. Step 3: Build the Invoice Sending Workflow
  9. Node 1: Schedule Trigger
  10. Node 2: Read Google Sheets
  11. Node 3: Filter for "Ready" Invoices
  12. Node 4: Format the Invoice Email
  13. Node 5: Send the Email
  14. Node 6: Update the Sheet
  15. Step 4: Add Payment Reminders
  16. Step 5: Activate and Monitor
  17. Monitoring Your Workflows
  18. Leveling Up: QuickBooks Integration
  19. The Numbers: What This Saves You
  20. Common Questions About Invoice Automation
  21. Getting Help in Volusia County
  22. Frequently Asked Questions

What Is n8n and Why Use It for Invoicing?

Before we build anything, let me explain what we're working with. n8n (pronounced "n-eight-n") is a workflow automation platform. Think of it like a set of building blocks: you connect different services together—Google Sheets, email, QuickBooks, Stripe—and tell them what to do and when to do it.

For invoicing, that means: when a job is marked "complete" in your tracking system, n8n automatically generates the invoice details, sends an email to the client with the invoice, updates your records to show the invoice was sent, and sends payment reminders if the client hasn't paid by the due date.

Why n8n instead of Zapier or Make? Three reasons. First, n8n is free if you self-host it—you can run it on a $5-per-month server. Second, it doesn't charge per step or per task, so your costs don't balloon as your invoice volume grows. Third, it's open source, which means your business data stays under your control.

For businesses in the Port Orange and greater Volusia County area that we work with, n8n is our go-to recommendation because the cost savings compound dramatically as the business grows. A landscaper sending 20 invoices a month and a contractor sending 100 invoices a month pay the same $20—or nothing if self-hosted.

Choose Your Invoice Backend: Three Options

Before we set up the automation, you need to decide where your invoice data lives. Here are three options, from simplest to most robust.

Option 1: Google Sheets (Free, Easiest)

This is where I start most small businesses. You create a Google Sheet with columns for invoice number, client name, client email, description, amount, due date, and status. n8n reads this sheet, sends invoices, and updates the status column automatically.

Best for: Sole proprietors, freelancers, businesses sending fewer than 50 invoices per month, anyone who wants to get started in under an hour.

Cost: Free (Google Sheets is free; n8n Cloud is $20/month or free self-hosted).

Option 2: QuickBooks Online (Professional)

If you already use QuickBooks, n8n can create invoices directly inside QuickBooks using the QuickBooks Online node. QuickBooks handles the professional PDF generation, payment links, and accounting integration. n8n adds the automation layer—triggering invoice creation when jobs complete and sending reminders when payments are late.

Best for: Established businesses that already use QuickBooks, businesses that need professional invoices with payment processing, anyone whose accountant requires QuickBooks data.

Cost: QuickBooks Simple Start at $30/month + n8n.

Option 3: Stripe + Custom PDF (Modern)

For businesses that want to look polished and accept online payments, n8n can generate a Stripe payment link for each invoice, create a professional PDF using an HTML template, and email both to the client. The client clicks the link, pays with a credit card, and the payment is automatically recorded.

Best for: Tech-savvy businesses, online service providers, businesses that want to accept credit card payments.

Cost: Stripe (2.9% + $0.30 per transaction) + n8n.

For this tutorial, I'm going to walk you through Option 1: Google Sheets, because it's free, it works for any business size, and you can upgrade to QuickBooks or Stripe later without starting over. The automation logic is the same—only the data source changes.

Step 1: Create Your Invoice Tracking Sheet

Open Google Sheets and create a new spreadsheet. Name it "Invoice Tracker" and set up these columns:

ABCDEFGHIJ
InvoiceNumberClientNameClientEmailDescriptionAmountInvoiceDateDueDateStatusDateSentDatePaid

Fill in one sample row so we have data to test with:

| INV-2026-001 | Smith Residence LLC | john@smithresidence.com | Kitchen remodel - Phase 1 | 4500 | 2026-03-19 | 2026-04-18 | Ready | | |

The Status column is the key to the whole system. Here are the statuses we'll use:

  • Ready: Invoice is ready to be sent (n8n will pick this up)
  • Sent: Invoice has been emailed to the client
  • Reminded: At least one payment reminder has been sent
  • Paid: Client has paid (you update this manually, or n8n can detect it if using Stripe/QuickBooks)
  • Overdue: Past the due date with no payment

Save the spreadsheet and copy the Sheet ID from the URL—it's the long string of characters between /d/ and /edit in the URL bar. You'll need this for n8n.

Step 2: Set Up Your n8n Account

If you don't have an n8n account yet, go to n8n.io and sign up for the cloud version. It's $20 per month and includes everything you need. If you're comfortable with servers, you can self-host for free, but the cloud version is the fastest way to get started.

Once you're logged in, click "Add workflow" to create a new blank workflow. Name it "Invoice Automation."

Step 3: Build the Invoice Sending Workflow

Here's the workflow we're building, step by step. Each step is a "node" in n8n—a block that does one thing.

Node 1: Schedule Trigger

This tells n8n when to check for new invoices. Click the + button and search for "Schedule Trigger." Add it and configure it to run every hour. This means n8n checks your invoice sheet once an hour for any rows with Status = "Ready."

Why hourly? Because you don't need real-time invoicing. When you finish a job and mark it "Ready" in the spreadsheet, the invoice will go out within the hour. That's fast enough for any business, and it's gentler on Google's API limits than checking every minute.

Node 2: Read Google Sheets

Click + again, search for "Google Sheets," and add the node. You'll need to connect your Google account the first time—n8n walks you through the OAuth process.

Configure it to read your Invoice Tracker spreadsheet. Set the sheet name to "Invoices" (or whatever you named your tab) and the range to "A:J" to capture all columns.

Node 3: Filter for "Ready" Invoices

Add a Filter node. Set the condition to: Status equals "Ready." This ensures we only process invoices that haven't been sent yet. If your sheet has 200 rows but only 3 are "Ready," only those 3 pass through.

Node 4: Format the Invoice Email

Add a Set node. This is where you build the email content. Use expressions (n8n's way of inserting data from previous nodes) to personalize each invoice:

Subject: Invoice #{{ $json.InvoiceNumber }} from Your Company Name

Body:

text
Dear {{ $json.ClientName }},
 
Thank you for your business. Please find your invoice details below.
 
Invoice Number: {{ $json.InvoiceNumber }}
Description: {{ $json.Description }}
Amount Due: ${{ $json.Amount }}
Due Date: {{ $json.DueDate }}
 
Payment Methods:
- Zelle: yourcompany@email.com
- Check payable to: Your Company LLC
- Venmo: @YourCompany
 
If you have any questions about this invoice, please reply to this email.
 
Thank you!
 
Your Company Name

Those {{ $json.FieldName }} expressions pull data directly from your Google Sheet. Each invoice gets personalized automatically.

Node 5: Send the Email

Add an Email Send node. Configure your email provider (Gmail, Outlook, or SMTP). Set the "To" field to {{ $json.ClientEmail }} so each invoice goes to the right client. Paste the subject and body from the Set node.

Node 6: Update the Sheet

Add another Google Sheets node, this time set to "Update." When the email sends successfully, this node changes the Status column from "Ready" to "Sent" and fills in the DateSent column with today's date.

This is important: without this step, n8n would send the same invoice every hour because the Status would still be "Ready."

Connect all the nodes in sequence: Schedule Trigger → Read Sheets → Filter → Set → Email Send → Update Sheets. Click "Execute Workflow" to test with your sample row. If everything is configured correctly, you'll see the email arrive in the test client's inbox, and the Status in your sheet will change to "Sent."

Step 4: Add Payment Reminders

Now let's add the part that actually makes you money: automatic payment reminders. Create a second workflow (or add a branch to the first one) that checks for overdue invoices.

The logic is simple:

  1. Daily Check: Run once a day at 9 AM
  2. Read Sheet: Pull all invoice data
  3. Filter: Find invoices where Status = "Sent" and DueDate is in the past
  4. Calculate Days Overdue: Use a Code node or Date expression to figure out how many days past due
  5. Branch by Days Overdue:
    • 7 days: Send a friendly reminder
    • 14 days: Send a firmer reminder
    • 30 days: Send a final notice
  6. Update Sheet: Mark status as "Reminded" and log the reminder date

Here's what the 7-day reminder looks like:

text
Subject: Friendly Reminder: Invoice #{{ $json.InvoiceNumber }}
 
Hi {{ $json.ClientName }},
 
Just a quick note that Invoice #{{ $json.InvoiceNumber }} for
${{ $json.Amount }} was due on {{ $json.DueDate }} and is now
7 days past due.
 
If you've already sent payment, please disregard this message.
If you have any questions about the invoice, just reply to this
email and I'll be happy to help.
 
Thank you for your business!
 

The 14-day and 30-day reminders get progressively more direct, but always professional. Nobody wants to burn a client relationship over tone.

The beauty of this system is consistency. Every overdue invoice gets a reminder at exactly the right time, whether you're busy with three simultaneous projects or on vacation. You don't have to remember. You don't have to feel awkward about chasing payments. The system does it for you.

Step 5: Activate and Monitor

Once both workflows are tested, you're ready to go live:

  1. Toggle both workflows to Active (the switch in the top-right corner of each workflow)
  2. The invoice sender will run hourly, picking up any rows you set to "Ready"
  3. The payment reminder will run daily, catching any overdue invoices

To create a new invoice, you just add a row to your Google Sheet with Status = "Ready." That's it. The automation handles the rest.

Here's what your daily workflow looks like after setup: you finish a job, open your phone, add a row to the Google Sheet with the client info and amount, set status to "Ready," and close the app. Within the hour, the client has a professional invoice in their inbox. Seven days later, if they haven't paid, they get a polite reminder. Fourteen days, a firmer one. You never think about it again until the payment shows up.

I want to emphasize how different this feels compared to manual invoicing. Most business owners I talk to in Volusia County have a low-grade anxiety about invoicing. They know they should be sending invoices faster. They know they should be following up. They feel guilty when they realize it's been two weeks since they finished a job and the invoice still hasn't gone out. That background stress disappears completely when the system handles it for you.

Monitoring Your Workflows

n8n provides an execution history for every workflow. If something fails—maybe an email address bounces or Google's API has a hiccup—you'll see it in the execution log. n8n also supports error notification via email or Slack, so you can set up alerts that ping you when something goes wrong.

In practice, failures are rare. In the last six months across all the invoice automation systems I've set up for clients, I've seen exactly three failures: one was a typo in an email address, one was a Google API rate limit (resolved by the next hourly run), and one was a client's email server rejecting the message as spam (resolved by adding proper SPF and DKIM records to the sending domain).

The system is remarkably reliable. You set it up once and it just runs.

Leveling Up: QuickBooks Integration

Once you're comfortable with the Google Sheets approach, adding QuickBooks is straightforward. Replace the Google Sheets "Read" node with a QuickBooks "Get Invoices" node. Replace the email generation with QuickBooks' built-in invoice sending. Add a QuickBooks "Create Invoice" node if you want n8n to create the invoice in QuickBooks automatically.

The QuickBooks Online node in n8n supports creating invoices, updating invoices, getting invoice details, and searching for invoices by status. It handles line items, tax calculations, and payment terms natively.

For a deeper dive into connecting n8n with QuickBooks for bookkeeping and accounting automation beyond invoicing, check out our guide on automating bookkeeping with QuickBooks and n8n.

The Numbers: What This Saves You

Let me walk through the math for a typical service business in the Port Orange area.

Before automation:

  • Time to create and send one invoice: 15 minutes
  • Time to send one payment reminder: 10 minutes
  • Invoices per month: 20
  • Average reminders needed: 8 (30% of invoices are late)
  • Monthly time spent: (20 × 15) + (8 × 10) = 380 minutes = 6.3 hours
  • At $30/hour: $190/month in labor

After automation:

  • Time to create one invoice: 2 minutes (just add a row to the sheet)
  • Time for payment reminders: 0 minutes (automated)
  • Monthly time spent: 20 × 2 = 40 minutes = 0.7 hours
  • At $30/hour: $20/month in labor
  • n8n Cloud cost: $20/month

Monthly savings: $150 in labor. But that's not the full picture.

The cash flow impact: When invoices go out the same day a job is done instead of a week later, you get paid a week sooner on every invoice. For 20 invoices averaging $2,000 each, that's $40,000 in revenue hitting your account a week earlier. The interest saved—or the credit line costs avoided—adds up fast.

The late payment reduction: Automatic reminders at 7, 14, and 30 days reduce late payments dramatically. Businesses I've set this up for typically see late payments drop from 30% to under 10%. On $40,000 in monthly invoicing, that's an extra $8,000 in on-time cash flow.

The professionalism factor: Clients notice when your invoices arrive promptly and consistently. It signals that you run a tight operation. A plumber in Port Orange told me that two of his biggest commercial clients specifically commented on how much more professional his invoicing became after we set up automation. One of them increased their contract with him because, in their words, "you're clearly a well-run business." The invoice was the same information it always was—it just arrived on time, every time, with consistent formatting.

The tax season sanity check: Come April, your invoice records are complete, organized, and up to date. No scrambling to reconstruct six months of invoicing history. No missing invoices that you know you sent but can't prove. Every invoice is logged in the sheet with sent dates, amounts, and payment dates. Your accountant will love you.

Common Questions About Invoice Automation

What if the system sends an invoice to the wrong person?

It can only send to the email address in your Google Sheet. If you type the wrong email, the invoice goes to the wrong place—same as if you'd sent it manually. Double-check your data entry, especially the ClientEmail column. The automation is only as good as the data you feed it.

Can I customize the invoice email for different clients?

Absolutely. You can add a "Template" column to your sheet and use conditional logic in n8n to send different email formats based on the client type. Most businesses don't need this—a professional, consistent template works for everyone.

What happens if my Gmail gets rate-limited?

Gmail limits free accounts to 500 emails per day and Google Workspace accounts to 2,000 per day. If you're sending more than 500 invoices per day, you've got a very different kind of problem—and you should be using a dedicated email service like SendGrid or Mailgun. For most small businesses, Gmail's limits are never an issue.

Can I attach a PDF invoice instead of putting details in the email body?

Yes. n8n has an HTML-to-PDF conversion node, or you can use a service like DocRaptor or PDFShift via HTTP Request. This adds complexity, so I recommend starting with the email body approach and adding PDF generation once you're comfortable with the basic workflow.

Is this HIPAA-compliant for healthcare invoices?

If your invoices contain protected health information, you need additional safeguards—encrypted email, BAA with your email provider, and access logging. The n8n workflow itself doesn't store PHI, but the email transmission might need upgrading. Contact us for HIPAA-compliant automation setup.

Getting Help in Volusia County

If you're a business owner in Port Orange, Daytona Beach, or anywhere in Volusia County and you want help setting up invoice automation—or any of the automations in our 10 Things to Automate This Week guide—our team handles the entire setup.

We configure the workflow, test it with your real data, train you on how to manage it, and provide support when you have questions. Most invoice automation setups take about two hours of our time, and you're running independently from day one.

Visit our IT consulting page for Port Orange or reach out through our automation services page to schedule a free consultation.


Frequently Asked Questions

Is n8n free for invoice automation?

n8n is free to self-host on your own server—you can run it on a Digital Ocean droplet for $5 per month, or on any computer in your office. Their cloud service costs $20 per month, which includes all features and nodes needed for invoice automation. There's no per-invoice or per-task charge, which means your costs stay the same whether you send 10 invoices a month or 500. Compare that to Zapier, where high-volume users can easily spend $50-$100 per month on invoice automation alone.

How long does it take to set up n8n invoice automation?

If you follow this guide step by step, you can have a working invoice automation system running in about two hours. The first hour is setup and configuration. The second hour is testing with real data and fine-tuning the email templates. After that, creating a new invoice takes about two minutes—just add a row to the spreadsheet. If you'd rather have someone handle the setup for you, our team can have it running in a single afternoon session.

How do I send automatic payment reminders with n8n?

Create a second workflow with a daily Schedule Trigger that reads your invoice sheet, filters for overdue invoices, calculates days past due, and sends graduated reminders at 7, 14, and 30 days. The complete workflow setup is covered in Step 4 of this guide.

Can n8n connect to QuickBooks?

Yes. n8n has a native QuickBooks Online node that supports creating, updating, and reading invoices, customers, estimates, and bills. You authenticate via OAuth2, and n8n handles the API calls.

What's the best free invoicing automation tool?

n8n self-hosted is the most powerful free option. It's open source, handles complex workflows, and doesn't charge per task. For the simplest possible setup with no self-hosting, Zapier's free tier works for very low volume (100 tasks/month), but you'll quickly outgrow it.


Stop chasing payments. Let automation handle the invoices so you can focus on the work. Contact us for help setting up n8n invoice automation for your business.

Need help implementing this?

We build automation systems like this for clients every day.