Skip to main content

Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram

Workflow preview

Workflow preview
100%
Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

This n8n template creates an intelligent expense tracking system that processes text, voice, and receipt images through Telegram. The assistant automatically categorizes expenses , handles curre...

Best for

  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

@n8n/n8n-nodes-langchain.agent, n8n-nodes-base.telegramtrigger, @n8n/n8n-nodes-langchain.mcpclienttool, @n8n/n8n-nodes-langchain.mcptrigger, @n8n/n8n-nodes-langchain.toolcalculator, n8n-nodes-base.googlesheetstool, n8n-nodes-base.httprequesttool, n8n-nodes-base.set

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Oussama.

Original n8n.io source

1.1 Workflow description

Title
Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram
Workflow name
Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram

This n8n template creates an intelligent expense tracking system πŸ€– that processes text, voice, and receipt images through Telegram. The assistant automatically categorizes expenses, handles currency conversions 🌍, and maintains financial records in Google Sheets while providing smart spending insights πŸ’‘.

Use Cases:

  • πŸ—£οΈ Personal expense tracking via Telegram chat
  • 🧾 Receipt scanning and data extraction
  • πŸ’± Multi-currency expense management
  • πŸ“‚ Automated financial categorization
  • πŸŽ™οΈ Voice-to-expense logging
  • πŸ“Š Daily/weekly/monthly spending analysis

How it works:

  1. Multi-Input Processing: Telegram trigger captures text messages, voice notes, and receipt images.
  2. Content Analysis: A Switch node routes different input types (text, audio, images) to appropriate processors.
  3. Voice Processing: ElevenLabs converts voice messages to text for expense extraction.
  4. Receipt OCR: Google Gemini analyzes receipt images to extract amounts and descriptions.
  5. Expense Classification: An LLM determines if the input is an expense or a general query.
  6. Expense Parsing: For multiple expenses, the AI splits and normalizes each item.
  7. Currency Conversion: An exchange rate API converts foreign currencies to USD.
  8. Smart Categorization: The AI agent assigns expenses to predefined categories with emojis.
  9. Data Storage: Google Sheets stores all expense records with automatic totals.
  10. Intelligent Responses: The agent provides spending summaries, alerts, and financial insights.

Requirements:

  • 🌐 Telegram Bot API access
  • πŸ€– OpenAI, Gemini, or any other AI model
  • πŸ—£οΈ ElevenLabs API for voice processing
  • πŸ“ Google Sheets API access
  • πŸ’Ή Exchange rate API access

Good to know:

  • ⚠️ Daily spending alerts trigger when expenses exceed 100 USD.
  • 🏷️ Supports 12 predefined expense categories with emoji indicators.
  • πŸ”„ Automatic currency detection and conversion to USD.
  • 🎀 Voice messages are processed through speech-to-text.
  • πŸ“Έ Receipt images are analyzed using computer vision.

Customizing this workflow:

  • ✏️ Modify expense categories in the system prompt.
  • πŸ“ˆ Adjust spending alert thresholds.
  • πŸ’΅ Change the base currency from USD to your preferred currency.
  • βœ… Add additional expense validation rules.
  • πŸ”— Integrate with other financial platforms.

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Agent

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 1.7

Block 2 - Telegram Trigger

Type / Role
n8n-nodes-base.telegramTrigger - telegramTrigger
Config choices
Version 1.2

Block 3 - MCP Client

Type / Role
@n8n/n8n-nodes-langchain.mcpClientTool - mcpClientTool
Config choices
Version 1

Block 4 - MCP Server Trigger

Type / Role
@n8n/n8n-nodes-langchain.mcpTrigger - mcpTrigger
Config choices
Version 1

Block 5 - Calculator

Type / Role
@n8n/n8n-nodes-langchain.toolCalculator - toolCalculator
Config choices
Version 1

Block 6 - Total_Spent_Tool

Type / Role
n8n-nodes-base.googleSheetsTool - googleSheetsTool
Config choices
Version 4.5

Block 7 - Balance_Tool

Type / Role
n8n-nodes-base.googleSheetsTool - googleSheetsTool
Config choices
Version 4.5

Block 8 - Expenses_Tool

Type / Role
n8n-nodes-base.googleSheetsTool - googleSheetsTool
Config choices
Version 4.6

Block 9 - Exchange_Rate

Type / Role
n8n-nodes-base.httpRequestTool - httpRequestTool
Config choices
Version 4.2

Block 10 - Add_Expenses_Tool

Type / Role
n8n-nodes-base.googleSheetsTool - googleSheetsTool
Config choices
Version 4.5

Block 11 - Read_Rows_Tool

Type / Role
n8n-nodes-base.googleSheetsTool - googleSheetsTool
Config choices
Version 4.6

Block 12 - Rename Fields

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.4

Block 13 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 14 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 15 - Get Voice File from Telegram

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 16 - Convert Voice to Text (ElevenLabs)

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 17 - Route Input by Message Type

Type / Role
n8n-nodes-base.switch - switch
Config choices
Version 3.2

Block 18 - Download Receipt Image

Type / Role
n8n-nodes-base.telegram - telegram
Config choices
Version 1.2

Block 19 - Extract Receipt Data

Type / Role
@n8n/n8n-nodes-langchain.googleGemini - googleGemini
Config choices
Version 1

Block 20 - Classify Message Intent

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.6

Block 21 - Route to Expense or Query Processing

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 22 - Parse and Split Multiple Expenses

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.7

Block 23 - Intent Classification Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Block 24 - Expense Parsing Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAzureOpenAi - lmChatAzureOpenAi
Config choices
Version 1

Showing the first 24 of 33 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram
Complexity advanced
Nodes 33
Categories Multimodal AI
Author Oussama
Published 29 Aug 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/8035/8035.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Multi-modal expense tracking with GPT-4, Gemini OCR, and voice via Telegram do?

This n8n template creates an intelligent expense tracking system that processes text, voice, and receipt images through Telegram. The assistant automatically categorizes expenses , handles curre...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Multimodal AI use case.