What it does
The full pipeline reads PDF invoice attachments from an IMAP mailbox, extracts the text layer, finds supplier, invoice number, dates, currency, net, VAT and total by pattern matching, runs three duplicate checks, and appends each new invoice once to one CSV ledger. The same mail read twice leaves the file unchanged.
- No AI. The parser is plain JavaScript in Code nodes: no model, no prompt, no per-invoice cost.
- No API key. The paid pack makes one outbound request anywhere — a free reference-rate lookup that sends a date and a currency pair, never invoice text.
- No third party. Invoice text stays on the machine that runs n8n.
This site holds the three free starters, which read and report but write nothing. The ledger is the paid pack. That split is repeated under limits, not buried.
The three free workflows
Ordinary n8n workflow JSON files, exported with no instance id, no pinned data and no credentials. They are byte-identical to the files the pack's own tests check.
1. Read one PDF invoice and see the fields
Upload one PDF, get the fields the parser read, and a plain reason for any value it could not find. It also checks that net + VAT equals the total. Writes nothing, needs no credential.
Click to enlarge
Open full size in a new tab ↗ (zoom in with your browser)
Drawn from the workflow's own node positions and connections — the canvas that imports, not a mock-up.
Nodes as they appear in the file: Form: upload an invoice →
Settings → Pick the file → PDF to text →
Parse invoice → Result → Answer the form. The knobs
dateOrder and defaultCurrency live in Settings.
2. Preview what an invoice mailbox contains
Points at your own IMAP mailbox and previews what the parser understood from the PDF attachments: supplier, invoice number, total, currency, whether the totals add up. Writes no ledger, no file, no database.
Click to enlarge
Open full size in a new tab ↗ (zoom in with your browser)
Also drawn from the JSON. The Telegram node ships disabled.
Needs one IMAP credential. Use a dedicated mailbox or a folder you can afford to have marked as read — n8n's IMAP trigger can mark what it fetches as read (its Mark as Read setting).
3. Check an invoice CSV for duplicate rows
Upload the invoice CSV you already have and get back the rows that repeat: the same invoice number twice for one supplier, or the same supplier, date and total under two different numbers. It prints the column mapping it chose and the rows it could not check. Comma-separated only; a required column it cannot recognise stops the check instead of guessing. There is no canvas picture for this one — the two above came from a renderer, and this one was not rendered for the site.
Import any of them
- In n8n open Workflows → Add workflow.
- Workflow menu (⋯) → Import from File, then pick the
file:
free-01-read-one-invoice.json,free-02-inbox-preview.jsonorfree-03-check-invoice-csv-duplicates.json. On some versions the same option is in the Add workflow dropdown on the overview page. - Click Test workflow (or Execute workflow for the IMAP one) and follow what the nodes print.
Run it on n8n Cloud
The three form-based starters write nothing, so they run on n8n Cloud as they are: start n8n Cloud.
The free workflows run on any n8n instance, including the self-hosted one you already have; you do not need Cloud for them. The paid ledger writes files, and Cloud discards its root folder on redeploy, so self-hosted n8n 2.44.4 is the supported setup.
Honest limits
Everything here was found while building and testing the pack.
- No OCR. Scans and phone photos have no text layer, so fields come back
empty. In the paid pack such a row is written with status
needs_review. - n8n Cloud can lose the ledger. The file nodes write inside Cloud's own root folder, which is not kept when the instance is redeployed. Self-hosted n8n 2.44.4 is the version every workflow was run on; newer versions are not verified.
- The mailbox can be marked read at fetch time. n8n's IMAP node has a Mark as Read setting; with it on, a mail fetched by a run that then fails is not fetched again by itself.
- A corrected re-issue is treated as a duplicate. Same number, corrected
amount: the second is classed
duplicateand the wrong amount stays. - Possible duplicates are flagged, not booked. Same supplier, same amount,
within 21 days, different number →
possible_duplicate, out of the totals until a human looks. - Several invoices inside one PDF (a monthly statement): only the first invoice number and the last total are read.
- Ambiguous dates are read day-first unless
dateOrdersays otherwise; amounts with three decimals are misread;$is assumed to be USD unless an ISO code appears. - Non-Latin scripts are untested. Latin-1 accents are handled.
- Execution history keeps the invoice text. n8n stores node output for 336 hours by default — a second copy on your own machine.
- What was tested: the core template ran end to end on n8n 2.44.4 with four PDF invoices, twice. First run booked three and kept one duplicate out; second run classified all four as duplicates and left the ledger byte-identical. Every other template ran once against a seeded ledger. That is not a month of your suppliers' invoices.
- The free starters are not the product: they read and report, they do not write a ledger, and they keep no history between runs.
Full library — eleven workflows, USD 49
$49 one time · no subscription
Get the full Invoice Ledger pack — USD 49
One zip, 21 files: the core inbox-to-ledger workflow with three duplicate checks; a review queue for the rows that need a human; approval requests and an approval callback; bank reconciliation; a duplicate-payment alert; a VAT quarter summary; currency normalisation; an accounting export; a monthly close pack; and a nightly dated copy of the ledger. Plus the three free starters, five sample files showing the real output, and the licence.
Support is by email (invoiceledgerhq@gmail.com, answers within two business days). There is no setup service and no promise of a fix by a date.
Read this before buying. This is a small pack from a new seller with no reviews yet. The eleven workflows are for one business, they are not a bookkeeping service, and someone still has to check the figures. The three free workflows are the sample — run one on your own invoices first. If the parser mishandles your suppliers' layouts, USD 49 will not fix that.
FAQ
- Do I need an AI model or an API key?
- No. No model, no key, no per-invoice cost. The parser is plain JavaScript.
- Do I need to know JavaScript?
- Not to use the free workflows. To add a field or a header spelling, yes — the parser is readable code in a Code node.
- Does this work on n8n Cloud?
- The three free starters do, because they write nothing. The paid ledger writes files, and Cloud discards its root folder on redeploy, so self-hosted n8n 2.44.4 is the supported setup.
- My invoice is a scan or a photo. Will it work?
- No. There is no OCR by design; a PDF without a text layer gives empty fields.
- Where does my invoice data go?
- Nowhere. Parsing happens on your own instance. The only outbound request in the pack is a rate lookup that sends a date and a currency pair.
- Which free workflow should I start with?
free-01for a handful of PDFs,free-03if your invoices are already a spreadsheet export,free-02to see what a whole mailbox yields before touching anything.- Are the free workflows open source?
- They are free to use, change and share, including in public repositories, under the LICENSE — no fee, keep the notice, do not sell them. The eleven paid workflows are not on this site and keep the stricter one-business licence that ships in the zip.
- Refunds?
- Yes: within 14 days if the pack does not import into your n8n or cannot read the invoices you actually receive. The details are in the Terms.
Licence of the free files
The three workflow files on this site are covered by the LICENSE: use them in any business, change them, share them, keep the notice, do not sell them. The eleven paid workflows are not included and are licensed separately, one business per purchase. The licence has not been reviewed by a lawyer, and it says so. Nothing here is accounting, tax or legal advice.