Extract invoice data before routing approval through code
At a glance
An n8n implementation keeps Claude on PDF extraction while deterministic checks and Slack approvals control QuickBooks bill creation. This workflow is listed under Workflow Automation, Invoice Processing, Approvals.
- Agents / tools
- n8n, Claude API, Gmail, Google Drive, Google Sheets, Slack, QuickBooks Online
SourceBuilding a tool for these workflows? See weekly rates.
What they did
1) In n8n, import Amplence's template 20234, 'Approve vendor invoices from Gmail using Claude, Google Sheets, Slack and QuickBooks'. Have those accounts, Drive and an Anthropic API key. 2) Create a Sheet with Vendors, Purchase orders and Invoice log tabs, copying the headers from the imported canvas note; enter vendor and QuickBooks expense-account IDs. Set sheet, Drive folder, Slack user/channel, Gmail label and QuickBooks company IDs in Settings, plus approval limits. Connect service credentials and an Anthropic Header Auth credential using x-api-key. 3) Set the workflow as its own error workflow. Run the pinned invoice sample twice and check the duplicate hold. Unpin Read the invoice with Claude before activating. 4) Incoming PDFs run individually: Claude extracts fields; code checks vendor, sender, bank details, totals, PO balance and duplicates. Inspect Slack approvals and holds. 5) Verify approved bills in QuickBooks and corresponding log entries, Gmail labels and AP-channel messages.
Worth knowing
Bank-detail mismatches are held and alert finance without replying to the sender. The PO requester cannot approve that invoice.