Skip to content

Automate Your Invoices and Admin with n8n

This page may contain affiliate links.

If you are a freelancer or run a small UK business, you already know the drill. You finish the actual work, then spend the evening raising invoices, chasing late payers, filing receipts and copying data between tools that refuse to talk to each other. It is death by a thousand tabs. n8n is an open-source workflow automation tool that sits in the middle of your stack and quietly does all of that for you. Unlike Zapier or Make, you can self-host it, which means no per-task pricing and no cap on how many invoices you fire out each month. Here is how to put it to work.

What n8n actually is (and why UK freelancers should care)

n8n is a visual workflow builder. You drag nodes onto a canvas, connect them, and each node does something: read a spreadsheet, send an email, call an API, generate a PDF. Triggers start the workflow (a new row appears, a webhook fires, the clock hits 9am on the first of the month). Actions do the work.

You have two options. n8n Cloud starts at a modest monthly fee and is the fastest way in. Or you self-host it on something like a Raspberry Pi, a small VPS, or Docker on your own machine. The self-hosted route costs you hosting and your time, but it is genuinely free in software terms and your data never leaves your infrastructure. For anyone handling client financial data, that matters.

If you want a cheap always-on box to run it on, a Raspberry Pi kit is ideal: Raspberry Pi starter kit.

Workflow 1: raise invoices automatically from a spreadsheet

The simplest useful automation: you log completed work in a Google Sheet, and n8n turns each row into a PDF invoice and emails it to the client.

Build it like this:

  • Trigger: Google Sheets node, set to watch for new rows in your Completed Work tab.
  • Transform: a Set node to map your columns (client name, address, hours, rate, description) into a clean structure.
  • Generate: use the HTML node to build the invoice body, then a Convert to File node to render it as PDF.
  • Send: Gmail or SMTP node to email the PDF, with a BCC to your own accounts inbox.
  • Log: append a row to an Invoices Sent tab with the date and a status of unpaid.

Once it is running, raising an invoice becomes: type a row into a spreadsheet. That is it. If you invoice the same clients repeatedly, keep their details in a second tab and use a Lookup node to pull the address in automatically.

Workflow 2: chase late payments without being awkward

Chasing money is the worst part of freelancing, so let a robot be the bad cop. Set a scheduled trigger to run every morning at 8am, read your Invoices Sent tab, and filter for anything marked unpaid where the due date is more than seven days ago.

For each one, send a polite reminder email. A template that works well in the UK:

Hi [name], just a gentle nudge that invoice [number] for [amount] was due on [date]. If it has already gone out, please ignore this. Otherwise, the payment details are below. Thanks!

Then use a Switch node to escalate: after 14 days, a firmer email; after 30 days, add the client to a Follow Up list and send yourself a Slack or Telegram message so you can pick up the phone. This single workflow has probably saved more freelance friendships than any other automation.

Workflow 3: receipts, expenses and the dreaded self-assessment

UK sole traders and limited company directors both need clean expense records. Build a workflow that watches a folder in Google Drive or Dropbox called Receipts. When a new file lands:

  • Use an OCR node or an AI node (n8n has native OpenAI and other LLM integrations) to extract the merchant, date and total from the receipt image.
  • Append those fields to an Expenses spreadsheet, with the tax year calculated from the date.
  • Move the file into a Filed subfolder so you know it has been processed.

A prompt that works well for the extraction step: Extract the merchant name, date in YYYY-MM-DD format, total amount in GBP, and VAT amount if shown. Return only JSON with keys merchant, date, total, vat. If a field is missing, use null.

Come January, you export one spreadsheet instead of hunting through a shoebox. Your accountant will think you have hired someone.

If you would rather skip the build entirely, our own n8n Starter Workflows are plug-and-play templates you import in minutes — the invoicing, chasing and expense workflows above, already wired up and ready to tweak. They start from £9, which is roughly the cost of one takeaway, and they save you the weekend of trial and error.

Practical tips before you go live

Test with dummy data first. Point your spreadsheet trigger at a copy of your sheet and send invoices to your own address until you trust it. Do not let an untested workflow email a real client.

Use environment variables for secrets. API keys and SMTP passwords should live in n8n credentials or environment variables, never hardcoded into a node. If you self-host, back up the database regularly.

Add error handling. Every workflow should have an error trigger branch that pings you when something fails. Silent failures are worse than no automation at all.

Keep it boring. The best workflows are the ones you forget exist because they just work. Resist the urge to automate everything at once. Start with invoicing, get it stable, then add chasing, then expenses.

Mind the rules. If you handle personal data, you have UK GDPR obligations regardless of whether the workflow runs on your own hardware. Keep records, limit what you store, and delete what you do not need.

The bottom line

n8n will not do your actual work for you, but it will strip out the admin that surrounds it. An hour spent building your first invoice workflow pays for itself the first month you do not lose a Sunday evening to paperwork. Start small, test properly, and let the robot handle the chasing. Your future self, quietly drinking tea while reminders go out on schedule, will thank you.

Written by

Richard Tucker

View all posts →