← All tools & templates
AutomationSome setup

Bills Inbox

Vendor invoices arrive by email and land in a sheet with the amount, due date and category filled in.

Forward or label vendor invoices and this reads each one, pulls out the vendor, amount, due date and category, and adds a row to a sheet. Bills due within a week, or that the AI isn't sure about, are emailed to you to check. It reads text PDFs and email bodies, never scans or photos, and it's meant to save typing, not replace checking.

The short lesson

Why it matters
Typing invoices into a sheet is time you don't get back. Machine reads, person checks is faster than either alone.
Common mistake
Paying from the extracted number without looking at the bill.
Next step
Connect it to accounting software so bills arrive coded and ready to approve.

What's inside

  • An n8n workflow that captures bills from email
  • Pulls vendor, invoice number, amount, due date and category
  • Flags bills that are due soon or that the AI is unsure about
  • A sheet of every bill with its status

What it does

  1. A vendor invoice arrives in Gmail with your 'bills' label.
  2. The first PDF is turned into text, and combined with the email body.
  3. The AI pulls out the vendor, invoice number, amount, due date and category, and says how sure it is.
  4. Anything that isn't a bill is skipped. Real bills are added to the sheet.
  5. If a bill is due within a week, or the AI wasn't sure, you get an email to check it.

Set it up

Pick the path that matches the tools you already use.

  1. Download the workflow file from the box on this page. It's a .json file.
  2. In n8n, create a new workflow, open the ⋯ menu at the top right, and choose Import from file. Pick the file you downloaded.
  3. Nodes that need a login show a warning. Click each one and connect your own account. n8n walks you through it.
  4. Open the node called Settings and replace the sample values with yours.
  5. In Gmail, create a filter that applies the label bills to your vendor invoices (for example, anything sent to a dedicated address or from your regular vendors).
  6. Click Execute workflow to run it once with test data and check what comes out.
  7. When you're happy with it, switch the workflow to Active.

Using Claude, Gemini or another model instead of OpenAI? Delete the model node under each AI step, add the one you want, and drag its connector into the AI step.

New to n8n? Start here →

The AI prompt

This is exactly what the n8n file sends to the AI. Square brackets are the details your tool fills in for each customer.

Test it before it touches a customer

  • Forward five real bills of different kinds and compare each row with the original.
  • Forward a newsletter and a receipt. Neither should be logged as a bill.
  • Forward a scan or photo and confirm it's flagged rather than guessed at.

Always check the amount before you pay. AI reading is good, not perfect, and a wrong digit costs real money. It is a time saver for the typing, not a replacement for looking.

When you'll outgrow this

This is the right size for most small businesses. These are the signs it's time for something sturdier.

  • You want bills coded to accounts, matched to purchase orders and paid from your accounting software.
  • Volume is high enough that you need approval steps and a clear audit trail.
  • Many invoices are scans or photos that need proper document reading.
When low-code stops and custom software starts →

More tools & templates

Make it fill itself.

This runs on rows you type in. I can connect it to your CRM, phone and invoicing so the rows write themselves and the report is always current.