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.
Import it into n8n
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
- A vendor invoice arrives in Gmail with your 'bills' label.
- The first PDF is turned into text, and combined with the email body.
- The AI pulls out the vendor, invoice number, amount, due date and category, and says how sure it is.
- Anything that isn't a bill is skipped. Real bills are added to the sheet.
- 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.
- Download the workflow file from the box on this page. It's a .json file.
- In n8n, create a new workflow, open the ⋯ menu at the top right, and choose Import from file. Pick the file you downloaded.
- Nodes that need a login show a warning. Click each one and connect your own account. n8n walks you through it.
- Open the node called Settings and replace the sample values with yours.
- 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).
- Click Execute workflow to run it once with test data and check what comes out.
- When you're happy with it, switch the workflow to Active.
| You'll connect | What it's used for |
|---|---|
| Gmail | Reads the labeled invoices and emails you flags |
| Google Sheets | Keeps the list of bills |
| An AI model | Reads each bill and pulls out the details |
| Google Sheet: Bills |
|---|
| Logged · Vendor · Invoice # · Amount · Due date · Category · Confidence · From · Subject · Status |
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.
Instructions to the AI
You extract fields from a vendor bill or invoice that was emailed to a small business. Rules: - Use null for anything not stated. Never guess an amount or a date. - amount is a number with no currency symbol. - Dates are YYYY-MM-DD. - category is one of: materials, subcontractor, software, utilities, insurance, vehicle, office, other. - is_invoice is false for receipts for things already paid, newsletters, quotes and anything that is not a bill to pay. - confidence is a number from 0 to 1 for how sure you are of the amount and due date. Return only JSON.
What you send it each time
From: [from] Subject: [subject] Text: [text] Return JSON with the keys: is_invoice, vendor, invoice_number, amount, currency, issue_date, due_date, category, confidence.
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.