This workflow corresponds to n8n.io template #8473 — we link there as the canonical source.
This workflow follows the Emailsend → Google Sheets recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"meta": {
"templateCreatedBy": {
"id": "template-creator",
"name": "n8n Template Creator"
},
"templateCredentials": [
"gmailOAuth2",
"googleSheetsOAuth2Api",
"openAiApi",
"smtp"
]
},
"name": "Auto-Finance Tracker: Sync Receipts, Forecast Cash Flow & Get Monthly Reports",
"nodes": [
{
"id": "sticky-description",
"name": "\ud83d\udccb Template Description",
"type": "n8n-nodes-base.stickyNote",
"position": [
50,
50
],
"parameters": {
"content": ""
},
"typeVersion": 1
},
{
"id": "cron-trigger-node",
"name": "Monthly Report Trigger",
"type": "n8n-nodes-base.cron",
"position": [
250,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "user-config",
"name": "User Config",
"type": "n8n-nodes-base.set",
"position": [
50,
200
],
"parameters": {},
"typeVersion": 2
},
{
"id": "gmail-fetch-node",
"name": "Fetch Receipt Emails",
"type": "n8n-nodes-base.gmail",
"position": [
250,
300
],
"parameters": {},
"typeVersion": 2
},
{
"id": "gmail-get-attachments",
"name": "Get Email with Attachments",
"type": "n8n-nodes-base.gmail",
"position": [
450,
300
],
"parameters": {},
"typeVersion": 2
},
{
"id": "parse-email-body",
"name": "Parse Email Body & Check Attachments",
"type": "n8n-nodes-base.function",
"position": [
650,
300
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ai-extract-receipt",
"name": "AI: Extract Receipt Data (GPT-4o)",
"type": "n8n-nodes-base.openAi",
"position": [
850,
300
],
"parameters": {},
"typeVersion": 1
},
{
"id": "clean-ai-output",
"name": "Clean & Parse AI Output",
"type": "n8n-nodes-base.function",
"position": [
1050,
300
],
"parameters": {},
"typeVersion": 1
},
{
"id": "check-duplicates",
"name": "Check for Duplicates",
"type": "n8n-nodes-base.googleSheets",
"position": [
1250,
300
],
"parameters": {},
"typeVersion": 4
},
{
"id": "filter-missing-vendor",
"name": "Filter: Skip if Missing Vendor",
"type": "n8n-nodes-base.if",
"position": [
1450,
300
],
"parameters": {},
"typeVersion": 2
},
{
"id": "append-to-sheet",
"name": "Append to Finance Sheet",
"type": "n8n-nodes-base.googleSheets",
"position": [
1650,
300
],
"parameters": {},
"typeVersion": 4
},
{
"id": "generate-date-range",
"name": "Generate Month Range",
"type": "n8n-nodes-base.function",
"position": [
450,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "read-finance-data",
"name": "Read All Finance Data",
"type": "n8n-nodes-base.googleSheets",
"position": [
650,
100
],
"parameters": {},
"typeVersion": 4
},
{
"id": "aggregate-monthly",
"name": "Aggregate Monthly Data",
"type": "n8n-nodes-base.function",
"position": [
850,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "ai-generate-insights",
"name": "AI: Generate Insights",
"type": "n8n-nodes-base.openAi",
"position": [
1050,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "generate-chart",
"name": "Generate Chart & Final Data",
"type": "n8n-nodes-base.function",
"position": [
1250,
100
],
"parameters": {},
"typeVersion": 1
},
{
"id": "email-report",
"name": "Send Monthly Report",
"type": "n8n-nodes-base.emailSend",
"position": [
1450,
100
],
"parameters": {},
"typeVersion": 2
}
],
"settings": {
"executionOrder": "v1"
},
"versionId": "v2.1-production-ready",
"connections": {
"Check for Duplicates": {
"main": [
[
{
"node": "Filter: Skip if Missing Vendor",
"type": "main",
"index": 0
}
]
]
},
"Fetch Receipt Emails": {
"main": [
[
{
"node": "Get Email with Attachments",
"type": "main",
"index": 0
}
]
]
},
"Generate Month Range": {
"main": [
[
{
"node": "Read All Finance Data",
"type": "main",
"index": 0
}
]
]
},
"AI: Generate Insights": {
"main": [
[
{
"node": "Generate Chart & Final Data",
"type": "main",
"index": 0
}
]
]
},
"Read All Finance Data": {
"main": [
[
{
"node": "Aggregate Monthly Data",
"type": "main",
"index": 0
}
]
]
},
"Aggregate Monthly Data": {
"main": [
[
{
"node": "AI: Generate Insights",
"type": "main",
"index": 0
}
]
]
},
"Monthly Report Trigger": {
"main": [
[
{
"node": "Generate Month Range",
"type": "main",
"index": 0
},
{
"node": "Fetch Receipt Emails",
"type": "main",
"index": 0
}
]
]
},
"Clean & Parse AI Output": {
"main": [
[
{
"node": "Check for Duplicates",
"type": "main",
"index": 0
}
]
]
},
"Get Email with Attachments": {
"main": [
[
{
"node": "Parse Email Body & Check Attachments",
"type": "main",
"index": 0
}
]
]
},
"Generate Chart & Final Data": {
"main": [
[
{
"node": "Send Monthly Report",
"type": "main",
"index": 0
}
]
]
},
"Filter: Skip if Missing Vendor": {
"main": [
[
{
"node": "Append to Finance Sheet",
"type": "main",
"index": 0
}
]
]
},
"AI: Extract Receipt Data (GPT-4o)": {
"main": [
[
{
"node": "Clean & Parse AI Output",
"type": "main",
"index": 0
}
]
]
},
"Parse Email Body & Check Attachments": {
"main": [
[
{
"node": "AI: Extract Receipt Data (GPT-4o)",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
This automation helps small business owners track income and expenses effortlessly, turning scattered emails and WhatsApp messages into structured financial data — all without manual entry.
Source: https://n8n.io/workflows/8473/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Personalized Outreach & Follow-Up - Phase 2. Uses googleSheets, openAi, gmail, gmailTrigger. Scheduled trigger; 59 nodes.
Watch on Youtube▶️
This advanced workflow automates brand monitoring and media coverage tracking for musicians, bands, and music labels. The system uses multiple search queries (dorky) to discover mentions across the we
Stop wasting billable hours on manual time-tracking. AutoTimesheet Pro uses AI to collect emails, meetings, and GitHub work, then writes a clean timesheet straight into Google Sheets. Perfect for deve
This workflow finds local business leads on Google Maps, enriches them with website and AI analysis, and sends personalized cold emails to qualified prospects automatically.