See llms.txt for all machine-readable content.
Who's it for
Anyone whose accounts-payable inbox fills up with supplier invoices and who wants the routine ones to go straight through, but refuses to let a machine pay something it only half-understood. The interesting part is not the extraction — it is deciding, with reasons, which invoices a human still has to look at.
How it works
subject, text and optionally html. Anything that can hand you an email works — the Gmail node, the Email Trigger (IMAP), a forwarding service, or a MailMint inbound address.required, one line of description — and it returns each value with a confidence, the layer it came from, and the verbatim text it was read out of. With Route Messages Needing Review Separately switched on, the node has a second output: a required field it could not find, a value it could not coerce, or evidence it could not locate leaves by the lower branch, carrying the flag that says which. No IF node needed.How to set up
Requirements
How to customize
The schema in Read the invoice fields is a plain JSON list — add po_number, vat_rate or supplier_name and they appear in the output with their own confidence and evidence. The scoring in Score it against your policy is ordinary JavaScript: change a threshold, or add a rule of your own. Swap Return it for human review for a Slack, Jira or Notion node to file the doubtful ones where your team actually looks, and point Return it as approved at your accounting system.
Sender authentication
It is off by default, because a message posted to a webhook has no envelope to check. Switch it on when the mail arrives through a MailMint inbound address: there SPF, DKIM and DMARC are verdicts computed on the message as it was received, not guesses made afterwards — MailMint runs its own inbound SMTP server, so it sees the envelope and the raw bytes.
Disclosure
I build and run MailMint. This template is a self-submission, not a third-party recommendation.