Approve employee expense receipts with Gmail, Google Sheets, and OpenAI
Ready for 3.0What this workflow does
This AI workflow has 49 nodes and runs on Gmail events (plus 2 other triggers). Along the way it connects Gmail, Google Sheets, OpenAI and OpenAI Chat Model.
How it runs
Trigger: On Gmail events (plus 2 other triggers).
- Set Expense Policy (Edit Fields (Set)): sets or maps fields
- Set Payout Settings (Edit Fields (Set)): sets or maps fields
- Alert on Workflow Failure (Gmail): uses Gmail
- Read Employees from Sheets (Google Sheets): uses Google Sheets
- Read Claims for Payout (Google Sheets): uses Google Sheets
- Aggregate: combines items into one
- Aggregate: combines items into one
- Read Policy from Sheets (Google Sheets): uses Google Sheets
- Read Employees for Payout (Google Sheets): uses Google Sheets
- Aggregate: combines items into one
…plus 32 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.
- Still check Gmail Trigger below v1.4 runs as v1.4 (drafts skipped, max emails per poll) (When Receipts Are Emailed).
Nodes used (17)
- Gmail Trigger
n8n-nodes-base.gmailTrigger - Edit Fields (Set)
n8n-nodes-base.set - Google Sheets
n8n-nodes-base.googleSheets - Aggregate
n8n-nodes-base.aggregate - Code
n8n-nodes-base.code - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - Switch
n8n-nodes-base.switch - OpenAI
@n8n/n8n-nodes-langchain.openAi - Extract from File
n8n-nodes-base.extractFromFile - Information Extractor
@n8n/n8n-nodes-langchain.informationExtractor - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - HTTP Request
n8n-nodes-base.httpRequest - Gmail
n8n-nodes-base.gmail - No Operation, do nothing
n8n-nodes-base.noOp - Schedule Trigger
n8n-nodes-base.scheduleTrigger - If
n8n-nodes-base.if - Error Trigger
n8n-nodes-base.errorTrigger
From the author
Quick Overview This workflow processes expense receipts emailed to Gmail, extracts receipt data with OpenAI, checks it against rules and historical data stored in Google Sheets, and routes claims for manager/finance approval, then runs a weekly payout with…