Extract and organize Colombian invoices with Gmail, GPT-4o & Google Workspace
Needs changesWhat this workflow does
This AI workflow has 22 nodes and runs on Gmail events. Along the way it connects OpenAI Chat Model, Gmail, Google Drive and Google Sheets.
How it runs
Trigger: On Gmail events.
- Get Filename and mimeType (Code): runs custom JavaScript code
- Filter: keeps only the items that match a condition
- Unzip Invoice (Compression): uses Compression
- Loop Over Items (Loop Over Items (Split in Batches)): loops over the items in batches
- Get filename and mimeType on extracted docs (Code): runs custom JavaScript code
- Split XML and PDF (Switch): routes items into 2 branches
- Create initial PDF (Google Drive): uses Google Drive
- Extract PDF Data (Extract from File): extracts data from a file (pdf)
- Extract XML Data (Extract from File): extracts data from a file (xml)
- Merge: merges the data from its input branches
…plus 7 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- AI Agent v1 (old agent modes) in Extract Data from PDF and XML (v1.9): replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
- Also check Gmail Trigger below v1.4 runs as v1.4 (drafts skipped, max emails per poll).
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) Extract Data from PDF and XML (v1.9) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (17)
- Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Calculator
@n8n/n8n-nodes-langchain.toolCalculator - Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured - Gmail Trigger
n8n-nodes-base.gmailTrigger - Code
n8n-nodes-base.code - Filter
n8n-nodes-base.filter - Compression
n8n-nodes-base.compression - No Operation, do nothing
n8n-nodes-base.noOp - Switch
n8n-nodes-base.switch - Extract from File
n8n-nodes-base.extractFromFile - XML
n8n-nodes-base.xml - Merge
n8n-nodes-base.merge - Aggregate
n8n-nodes-base.aggregate - AI Agent
@n8n/n8n-nodes-langchain.agent - Google Drive
n8n-nodes-base.googleDrive - Google Sheets
n8n-nodes-base.googleSheets
From the author
🧾 Personal Invoice Processor This N8N workflow automates the extraction and organization of personal invoices in Colombia received via Gmail. It includes the following key steps: 🔁 Flow Summary 1. Email Trigger - Polls Gmail every 30 minutes for emails with…