Extract and validate invoice PDFs into Excel with OpenAI GPT-4o-mini
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
What this workflow does
This AI workflow has 40 nodes and runs on a schedule (every day at 04:00). Along the way it connects OpenAI.
How it runs
Trigger: On a schedule (every day at 04:00).
- Identify Deployment Mode (Code): runs custom JavaScript code
- Check Local Deployment Status (If): checks a condition and branches into true / false
- Verify Invoices Directory (Code): runs custom JavaScript code
- Confirm Invoices Directory Exists (If): checks a condition and branches into true / false
- Configure Local Drive Settings (Code): runs custom JavaScript code
- Compile Final Configuration (Code): runs custom JavaScript code
- Set Initial Configurations (Edit Fields (Set)): sets or maps fields
- Retrieve Execution Info (Code): runs custom JavaScript code
- Initialize Exec Report Content (Code): runs custom JavaScript code
- Route by Input Source (Switch): routes items into 2 branches
…plus 29 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (11)
- Code
n8n-nodes-base.code - OpenAI
@n8n/n8n-nodes-langchain.openAi - Extract from File
n8n-nodes-base.extractFromFile - Schedule Trigger
n8n-nodes-base.scheduleTrigger - Read/Write Files from Disk
n8n-nodes-base.readWriteFile - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - Convert to File
n8n-nodes-base.convertToFile - Edit Fields (Set)
n8n-nodes-base.set - If
n8n-nodes-base.if - Merge
n8n-nodes-base.merge - Switch
n8n-nodes-base.switch
From the author
Quick overview This workflow runs on a daily schedule, reads invoice PDFs from a local folder, extracts structured invoice data with OpenAI (gpt-4o-mini), validates required fields and subtotal math, and writes per-invoice Excel outputs plus an execution…