by Mahmoud Shrouf
Overview Automate your personal productivity with this intelligent n8n workflow that integrates Telegram, Google Sheets, and OpenAI (GPT-4o). This system uses multiple AI agents to manage work hours, tasks, finances, and emails—all through natural language commands sent via Telegram. Every action is synced to Google Sheets for persistent, structured data storage. What This Template Does This automation system deploys several specialized AI agents: 📊 Work Hours Analyzer**: Analyzes work logs from Google Sheets, calculates total hours by workplace, and generates detailed monthly reports in Arabic. 🛠️ Work Tracking Agent**: Handles start/end work commands, calculates total hours, and updates Google Sheets. 📋 Task Manager Agent**: Manages to-do lists—adding, listing, updating, completing, and deleting tasks—with real-time sync to Google Sheets. 💰 Finance Agent**: Tracks income and expenses in multiple currencies, summarizes daily financial activity, and maintains a full transaction history. 📧 Email Analysis Agent**: Processes incoming Gmail messages, generates AI-powered summaries in Arabic with priority, sentiment, and recommended actions. 📅 Monthly Report Generator**: Automatically triggers at the start of each month to compile a professional PDF report of work hours and sends it to a Telegram topic. Prerequisites & Setup Required Accounts & API Keys Before setup, ensure you have: Telegram Bot Token – from @BotFather OpenAI API Key – with access to gpt-4o-mini or gpt-3.5-turbo Google Sheets API – OAuth2 credentials enabled Gmail Account (Optional) – for email analysis n8n Instance – self-hosted or cloud Google Sheets Structure Create a Google Sheet with the following sheets and columns: Sheet: work Date start at end at place note Total hours Sheet: task Task Status Created At Due Date Notes Sheet: Expenses id Amount Currency Note Type (debit/credit) Date Time Sheet: email name email Step-by-Step Setup Step 1: Import the Workflow In n8n, go to Workflows > Import from file Upload the JSON template Open the canvas and verify all nodes are connected Step 2: Configure Credentials Telegram: Add your bot token under "Telegram account" OpenAI: Enter your API key in "OpenAi account" Google Sheets: Connect using OAuth2 under "Google Sheets account" Gmail (Optional): Set up if using email analysis Step 3: Link Google Sheets Share your Google Sheet with the service account email (if using service account) Copy the Document ID from the sheet URL Update all Google Sheets nodes with the correct sheet names and IDs Ensure column names match exactly Step 4: Set Up Telegram Start a chat with your bot Use /start to initialize Ensure chatId and message_thread_id in Telegram nodes match your group/topic Test sending a message like "Start work at the factory" Step 5: Test the Agents Try these sample commands via Telegram: "Start work at the factory" → Logs start time "Finished work" → Logs end time and calculates hours "Add task: pay the bill" → Adds a new task "How much did I spend today?" → Shows today’s expenses "Send last month's report" → Triggers monthly PDF report (on the first of the month) Key Features Smart Work Tracking Automatic time calculation Query by date, place, or period Real-time Google Sheets sync Task Management Add, list, update, complete, delete tasks Friendly, conversational responses Daily summaries of completed and upcoming tasks Financial Tracking Supports multiple currencies (JOD, USD, ILS, etc.) Daily income/expense summaries Full transaction history Arabic-language responses Email Intelligence AI-powered email summaries Priority, sentiment, and action recommendations Plain-text output in Arabic No JSON or code blocks Automated Monthly Reports Triggered on the 1st of each month Generates detailed work hour reports by workplace Outputs clean, formatted PDF Sends directly to Telegram topic Customization Options Modify AI Prompts Edit the systemMessage in any AI agent node to: Change tone (formal, friendly, concise) Add new response formats Support additional commands or languages Extend Functionality Add daily reminders using Schedule Trigger Implement budget alerts when expenses exceed a threshold Add weekly summaries for tasks or work hours Support multi-currency conversion Enhance Telegram Interaction Add inline buttons for quick actions Create shortcuts like /work, /tasks, /finance Use message_thread_id to organize topics Troubleshooting | Issue | Solution | |------|----------| | Bot not responding | Check webhook URL, bot token, and chatId | | Google Sheets not updating | Verify OAuth2 permissions and sheet sharing | | AI not understanding commands | Review prompt clarity and test input phrasing | | Monthly report not sending | Confirm Schedule Trigger timezone and execution time | Benefits ✅ Full automation with minimal user input 📱 Control everything from Telegram 📊 Data stored securely in Google Sheets 📄 Professional PDF reports generated automatically 💬 Natural, friendly Arabic responses 🔁 Seamless sync across all components This template transforms personal productivity by combining AI intelligence with powerful automation—turning simple Telegram messages into structured data, actionable insights, and professional reports.
by Rahul Joshi
📊 Description Automatically analyze your Instagram posts’ engagement and audience sentiment using GPT-4 to uncover top-performing content and improvement opportunities. 💬📈 This workflow fetches your latest Instagram posts using the Facebook Graph API, evaluates likes, comments, and tone, then generates structured performance insights. The results are logged into Google Sheets, shared via Slack alerts, and emailed through Outlook — empowering your social media team with daily, AI-powered engagement intelligence. 🚀 What This Template Does 1️⃣ Trigger – Runs daily at 10 AM to fetch the latest Instagram posts. ⏰ 2️⃣ Data Fetching – Uses the Facebook Graph API to extract post data, captions, likes, and comments. 📲 3️⃣ Formatting – Cleans and structures post and comment data for analysis. 🧩 4️⃣ AI Evaluation – GPT-4 analyzes engagement metrics and comment sentiment to score post performance. 🤖 5️⃣ Decision Routing – Flags high- and low-performing posts for separate processing. ⚙️ 6️⃣ Notifications – Sends positive performance summaries or negative alerts to Slack. 💬 7️⃣ Logging – Records engagement metrics, sentiment labels, and AI recommendations in Google Sheets. 📊 8️⃣ Reporting – Emails detailed performance summaries to the marketing team via Outlook. 💌 Key Benefits ✅ Automates social performance tracking across Instagram posts ✅ Provides AI-driven sentiment and engagement insights ✅ Flags top or underperforming content for immediate action ✅ Delivers Slack and email reports for team visibility ✅ Centralizes analytics in Google Sheets for trend tracking Features Facebook Graph API integration for Instagram post and comment retrieval GPT-4 sentiment and engagement evaluation Structured JSON insights and recommendations Slack alerts for both positive and negative performance Google Sheets data logging with trend metrics Outlook email reporting for management visibility Customizable scheduling and thresholds Requirements Facebook Graph API credentials connected to your Instagram Business account OpenAI API key for GPT-4 or GPT-4o-mini Slack Bot token with chat:write permissions Google Sheets OAuth2 credentials with edit rights Microsoft Outlook OAuth2 credentials for email delivery Optional environment variables for IDs: SHEET_ID, SLACK_CHANNEL_ID, OUTLOOK_EMAIL Target Audience Marketing and social media teams optimizing engagement 📣 Agencies managing multiple Instagram accounts 🧑💼 Analysts tracking performance metrics and audience tone 📊 Brands automating daily performance reports 📅 Step-by-Step Setup Instructions 1️⃣ Connect your Facebook Graph API to your Instagram Business Account. 2️⃣ Add OpenAI API credentials (use GPT-4 model for best results). 3️⃣ Configure Slack for team notifications and specify the channel ID. 4️⃣ Link Google Sheets and set your sheet ID for data logging. 5️⃣ Connect Microsoft Outlook for daily performance email reports. 6️⃣ Adjust the schedule (default: 10 AM daily) to suit your workflow. 7️⃣ Run a test once, verify data mapping, and enable automation. ✅
by Oneclick AI Squad
This workflow automatically notifies travelers about their pending trip payments and provides secure payment links through Email and WhatsApp. It runs twice daily (at 7 AM and 7 PM) to ensure timely reminders before the due date. Designed for travel agencies, it simplifies payment tracking, reduces manual follow-up, and ensures every traveler receives personalized reminders with real-time payment status updates. 🔧 Main Components Daily Payment Check – 7 AM & 7 PM Scheduled triggers that start the workflow daily at 7 AM and 7 PM. Read Pending Travel Payment Fetches traveler payment records from an Excel sheet (using getAll method). Process Payment Reminders Filters records to find pending payments due within the next 3 days. Create Payment Reminders Generates personalized payment reminders. Make Reminder For Email Prepares email-friendly messages with payment links. Send Email Reminder Sends the payment reminder email with a secure payment link to the traveler. Prepare WhatsApp Reminder Generates WhatsApp-friendly messages with payment and payment details. Send WhatsApp Message Sends the message to the traveler’s WhatsApp number using a message API. Update Status Of Reminder Updates the Excel file to mark reminders as sent to avoid duplicates. 🧩 Channels Used 📧 Email – with personalized payment link 💬 WhatsApp – formatted reminder message 🔐 Payment Integration Secure payment links are auto-generated per traveler to enable direct and safe online payments. ✅ Essential Prerequisites Excel sheet with payment records (travel_payment_data.xlsx) SMTP credentials for sending email WhatsApp API or provider integration (like Twilio or Gupshup) Access to a payment gateway or service for link generation File storage access to update reminder status in Excel 📁 Required Excel File Structure (travel_payment_data.xlsx) | Traveler ID | Name | Email | Phone | Payment Due Date | Amount | Reminder Sent | |-------------|------------|-------------------|---------------|------------------|---------|---------------| | TR001 | Arjun Patel| arjun@example.com | +919876543210 | 2025-10-20 | ₹3000 | No | 🧾 Expected Input Format Example { "travelerId": "TR001", "name": "Arjun Patel", "email": "arjun@example.com", "phone": "+919876543210", "dueDate": "2025-10-20", "amount": "₹3000", "reminderSent": "No" } 🚀 Key Features ⏰ Scheduled Daily Execution – Fully automated at 7 AM and 7 PM 🧮 Due-Date Filtering – Only targets payments due in the next 3 days 💬 Multi-Channel Notifications – Sends reminders via both Email and WhatsApp 🔗 Secure Payment Links – Auto-generated for each traveler 🔄 Reminder Tracking – Prevents duplicate reminders by updating status ⚙️ Quick Setup Guide Import Workflow JSON into your n8n instance. Configure schedule in the “Daily Payment Check” node (default: 7 AM & 7 PM). Set Excel file path in the “Read Pending Travel Payment” node. Update your payment processing logic in the “Process Payment Reminders” node. Add email credentials in the “Send Email Reminder” node. Integrate WhatsApp provider API in the “Send WhatsApp Message” node. Define how you generate secure payment links. Test with sample data and activate workflow.
by Abdullah Alshiekh
📈 Automated Customer Rewards Platform: Jotform Integration This blueprint details a highly efficient, AI-powered workflow designed to automate customer reward fulfillment. Leveraging the accessible interface of Jotform, this system delivers superior reliability and exceptional processing speed. 📊 Reliability, Productivity, and Performance This workflow is engineered to maximize operational efficiency and maintain data integrity: Instant Fulfillment: Automation handles receipt scanning (OCR), AI calculation, logging, and notification in seconds, eliminating manual delays. Seamless Data Capture: Leverages the user-friendly Jotform interface for fast, reliable customer submission and file uploads. 🛠️ Quick Configuration Guide Jotform Webhook:* In your *JotForm* settings, paste the n8n *Jotform Trigger URL** into the Webhook Integration. Done. API Access:* Generate a *"Full Access"** JotForm API key and insert it into the required n8n nodes (Jotform Trigger and Fetch All Receipts). Credential Setup:** Plug in your necessary API keys (Gemini, OCR.Space) and update the Notion Database ID and internal email recipient. 🚀 How It Works (Practical Flow) Submission:* Customer submits their request via *Jotform**. Processing:** System extracts text from the receipt (OCR), the AI calculates the reward, and the If node verifies the total. Fulfillment:** Transaction logged, confirmation emails sent to both the customer and the internal team. If you need any help Get in Touch
by Yassin Zehar
Description This workflow continuously validates data quality using rules stored in Notion, runs anomaly checks against your SQL database, generates AI-powered diagnostics, and alerts your team only when real issues occur. Notion holds all data quality rules (source, field, condition, severity). n8n reads them on schedule, converts them into live SQL queries, and aggregates anomalies into a global run summary. The workflow then scores data health, creates a Notion run record, optionally opens a Jira issue, and sends a Slack/email alert including AI-generated root cause & recommended fixes. Target users Perfect for: DataOps Analytics Product Data BI Compliance ETL/ELT pipelines Platform reliability teams. Workflow steps How it works 1) Notion → Rules Database Each entry defines a check (table, field, condition, severity). 2) n8n → Dynamic Query Execution Rules are converted into SQL and checked automatically. 3) Summary Engine Aggregates anomalies, computes data quality score. 4) AI Diagnostic Layer Root cause analysis + recommended fix plan. 5) Incident Handling Notion Run Page + optional Slack/Email/Jira escalation. Silent exit when no anomaly = zero noise. Setup Instructions Create two Notion databases: Data Quality Rules → source / field / rule / severity / owner Data Quality Runs → run_id / timestamp / score / anomalies / trend / AI summary/recommendation Connect SQL database (Postgres / Supabase / Redshift etc.) Add OpenAI credentials for AI analysis Connect Slack + Gmail + Jira for incident alerts Set your execution schedule (daily/weekly) Expected outcomes Fully automated, rule-based data quality monitoring with minimal maintenance and zero manual checking. When everything is healthy, runs remain silent. When data breaks, the team is notified instantly: with context, root cause insight, and a structured remediation output. Tutorial video Watch the Youtube Tutorial video About me : I’m Yassin a Project & Product Manager Scaling tech products with data-driven project management. 📬 Feel free to connect with me on Linkedin
by Yang
📄 What this workflow does This workflow automatically turns any uploaded video into structured blog research using AI tools. It transcribes the video, extracts keywords, runs research based on those keywords, and saves the final result to a Google Sheet. It uses Dumpling AI for transcription and research, OpenAI for keyword extraction, and Google Sheets for organizing the output. 👤 Who is this for This workflow is perfect for: Content creators who repurpose video content into blog posts SEO and marketing teams looking to extract topics and keyword insights from video materials Anyone who wants to automate video-to-text and research workflows without doing it manually ✅ Requirements Google Drive** account with a folder to watch for video uploads Dumpling AI** API access for transcription and agent research OpenAI (GPT-4o)** credentials for keyword extraction Google Sheets** document with the following column headers: Keywords topicsFromPerplexity blogPostsFromGoogle ⚙️ How to set up Connect your Google Drive and choose the folder where videos will be uploaded. Set up your Dumpling AI and OpenAI GPT-4o API credentials. Create a Google Sheet with the required columns. Replace the default folder ID and spreadsheet ID in the workflow with your own. Activate the workflow to start watching for new videos. 🔁 How it works (Workflow Steps) Watch Uploaded Videos: Triggers when a new video is added to your selected Google Drive folder. Download Video: Downloads the uploaded video file. Convert Video to Base64: Prepares the video for API submission by converting it to base64. Transcribe with Dumpling AI: Sends the video to Dumpling AI to get a full transcript. Extract Keywords with OpenAI: Analyzes the transcript and extracts five key SEO keywords. Run Competitor Research via Dumpling AI: Uses those keywords to fetch related topics and blog examples from Perplexity and Google. Format Results for Google Sheets: Formats the research results into clean text blocks. Append to Google Sheets: Saves the data into your specified Google Sheet. 🛠️ Customization Ideas Add a translation step after transcription to support multilingual content research. Modify the GPT prompt to extract summaries or titles instead of keywords. Change the Google Sheet structure to log video filenames and timestamps. Add email or Slack notifications to alert you when research is complete.
by Hichul
This workflow is an autonomous AI research assistant that transforms a single topic into a comprehensive, multi-chapter report. Designed for researchers, students, and content creators, it automates the entire process from planning and online research to writing, formatting, and delivering a final PDF report directly to your email. How it works Trigger: The workflow begins when a user submits a research topic and an email address through a form. AI Planning: An AI agent breaks the main topic into five focused subtopics. It then generates an engaging report title, a detailed introduction, and chapter headings, saving this initial structure to a Google Sheet. Parallel Research and Writing: The workflow then splits into five parallel paths, one for each subtopic. In each path, it uses the Tavily Search API to gather real-time information from the web. A dedicated AI writer then synthesizes this research into a complete, well-formatted HTML chapter with inline citations. Content Aggregation: As each chapter is completed, its content, sources, and section titles are saved to the central Google Sheet. Final Assembly and Delivery: Once all chapters are written, the workflow compiles the title, introduction, a newly generated table of contents, all chapters, and a complete list of sources into a single HTML document. This document is sent to APITemplate.io to be converted into a professionally formatted PDF, which is then emailed as an attachment to the address provided in the form. Set up steps Google Sheets: Make a copy of the provided Google Sheet Template. Connect your Google account in the credentials menu. Update all Google Sheets nodes to use your copied sheet by selecting it from the list. AI Language Model (Google Gemini): Sign up for an API key from the Google AI Platform. Connect your account in the Google Gemini Chat Model nodes. This template is pre-configured for the affordable gemini-pro-flash-lite model. Tavily Search API: Sign up for a free account at Tavily and get an API key. In the Tavily HTTP Request nodes, create a new Header Auth credential. For the Name, enter X-Tavily-API-Key and for the Value, paste your Tavily API key. APITemplate.io: Sign up for a free account at APITemplate.io and get an API key. Connect your account in the Generate PDF node's credentials. Gmail: Connect the Gmail account you want to send the final report from in the Send Report node's credentials.
by Michael Taleb
How it works Watches a Google Drive folder for new (scanned) invoices. Each new file automatically triggers the workflow. Downloads and processes each invoice through OCR Space to extract the text. Extracts the company name (e.g. from the “billed to” field) and uses an AI agent to cross-reference it against a database in Google Sheets. If a match is found, retrieves the correct recipient email and sends the invoice as an attachment. If no match or an error occurs, the workflow alerts an operator by email for manual review. Setting up the workflow Connect Google Drive • In n8n, connect your Google Drive account. • Create or select a folder where you will upload scanned invoices. Connect Gmail (or another email service) • Add your Gmail account as a credential in n8n. • This will be used to send the processed invoice to the correct recipient. Set up OCR.Space • Create a free OCR.Space account: https://ocr.space • In n8n, create a Generic Credential (Header Auth). • Use apikey as the name and your OCR API key as the value. Connect the AI Agent • Add your OpenAI API key as a credential in n8n. • The AI Agent will extract the company name from the invoice text and match it against your database. • If a match is found, it retrieves the correct email. Prepare the Google Sheet database • Make a copy of the database sheet: Google Sheet Template • Fill it with company names and recipient emails. • Connect your Google account to n8n and link this sheet to the workflow. Run the workflow • When a new invoice is uploaded to your Google Drive folder, the workflow will: • Extract the text with OCR.Space • Use the AI Agent to identify the company name • Cross-reference it with your Google Sheet database • Send the invoice automatically to the correct recipient via Gmail • If no match is found, an error email is sent to you for manual review
by WeblineIndia
Zoho CRM – Deal Health Predictor with AI Scoring This n8n automation monitors open Zoho CRM Deals every week, identifies stalled opportunities, scores their health using Google Gemini AI and triggers sales intervention by emailing the deal owner and creating a high-priority task in Zoho CRM — before the deal goes cold. Quick Start — Implementation in 6 Steps Import workflow into your n8n instance. Connect Zoho OAuth2 credential in all Zoho nodes. Connect Gmail OAuth2 account for outbound alerts. Confirm stage names & inactivity thresholds match your CRM. Test with sample deals before scheduling. Activate the workflow once validated by your sales team. What It Does This workflow dynamically analyzes every open sales deal retrieved from Zoho CRM. It calculates key metrics per deal such as inactivity duration, stage aging and deal age to understand whether the opportunity has stalled. Only deals with significant inactivity move forward to AI scoring. Using Google Gemini, each deal receives a Health Score (0–100), along with a risk level, reasons and recommended next actions. If a deal is considered “At-Risk,” the system automatically: Sends an alert email to the assigned sales rep Creates a high-priority Task in Zoho CRM linked to that deal It ensures timely sales intervention without needing manual checks. Who’s It For Sales teams using Zoho CRM RevOps & Sales Managers monitoring deal movement Teams wanting data-backed alerts for slow-moving deals Businesses wanting proactive pipeline management with AI Requirements | Requirement | Why | |------------|-----| | n8n instance (Self-hosted or Cloud) | Runs the workflow | | Zoho CRM OAuth2 Credentials | Fetch deals + Create tasks | | Gmail (or SMTP) credentials | Send alert emails | | Google Gemini API access | AI scoring on deals | | Deals must have Stage + Owner + Activity history | Ensures accurate scoring | How It Works — Setup & Configuration Steps Step-by-Step Setup Import workflow into n8n Enable Zoho CRM OAuth2 credentials in: Fetch Open Deals Create At-Risk Task Enable Gmail OAuth2 on the email alert node Validate fields from Zoho API: Last_Activity_Time Stage Owner.email Update the deal stage list in the Fetch URL if needed: Example: Qualification, Negotiation, Proposal, etc. Confirm scanning frequency in the Weekly Trigger Run the workflow manually once → check logs + emails + tasks Turn workflow Active How To Customize Nodes | Node | What You Can Customize | Example | |------|-----------------------|---------| | Weekly Trigger | Change execution frequency | Daily scan | | Fetch Deals | Include additional deal stages | Add “Value Proposition” | | Filter Stalled Deals | Adjust inactivity threshold | > 15 days instead of 30 | | AI Prompt | Add more data points | Probability to close | | Email Alert | Modify message template | Localization | | Task creation | Add reminder / follow-up info | Due date +1 day | Add-Ons (Optional Enhancements) You can easily extend this workflow by adding: Stage Change Webhook Trigger** → near real-time monitoring Google Sheets or Database Logging** for reporting Duplicate task checker** so the same deal isn’t flagged repeatedly Slack / Microsoft Teams alerts** SLA-based scoring** (pipeline aging logic) Manager escalation** if no response in X days Practical Use Cases This workflow is ideal for: Sales manager auto-alert system for aging deals Leaderboard tracking for untouched deals Weekly CRM hygiene and rep performance tracking Early detection of churn risk in B2B sales cycles AI-assisted deal coaching and next-step suggestions Many more scenarios are possible based on deal movement automation. Troubleshooting Guide | Issue | Possible Cause | Fix / Solution | |------|----------------|----------------| | No deals processed | Stage filters too narrow | Update fetch URL stage list | | Emails not sent | Gmail credentials missing or expired | Reconnect Gmail OAuth2 | | Tasks not created | Zoho API permissions missing | Enable write permissions | | Owner email missing | CRM field not mapped correctly | Update sendTo expression | | Health score always null | Output parser mismatch | Check prompt & parser config | | Workflow runs but no alerts sent | No stalled deals or score >= threshold | Temporarily lower threshold for testing | Need Help? If you would like expert help customizing this workflow or implementing additional automation like stage-based triggers, dashboards or integration with Slack/Teams, our n8n automation team at WeblineIndia can assist you.
by Raymond Camden
How It Works This N8N template demonstrates using Foxit's Extraction API to get information from an incoming document and then using Diffbot's APIs to turn the text into a list of organizations mentioned in the document and create a summary. How it works Listen for a new file added to a Google Drive folder. When executed, the bits are downloaded. Upload the bits to Foxit. Call the Extract API to get the text contents of the document. Poll the API to see if it's done, and when it is, grab the text. Send the text to Diffbot API to get a list of entities mentioned in the doc as well as the summary. Use a code step to filter the entities returned from Diffbot to ones that are organizations, as well as filtering to a high confidence score. Use another code step to make an HTML string from the previous data. Email it using the GMail node. Requirements A Google account for Google Drive and GMail Foxit developer account (https://developer-api.foxit.com) Diffbot developer account (https://app.diffbot.com/get-started) Next Steps This workflow assumes PDF input, but Foxit has APIs to convert Office docs to PDF and that flow could be added before the Extract API is called. Diffbot returns an incredible set of information and more could be used in the email. Instead of emailing, you could sort documents by organizations into new folders.
by Alex
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. This n8n template automatically parses bank transaction emails (HDFC, Indian Bank, Indian Overseas Bank, UPI apps like Google pay, Paytm, etc.) - The from email(bank name/UPI apps) is changable, classifies them using Gemini AI, and logs them into a structured Google Sheets budget tracker. It helps you consolidate expenses, compare against monthly budgets, and get real-time alerts when limits are exceeded. 📝 Problem Statement Tracking expenses manually from different bank emails and UPI apps is frustrating, time-consuming, and error-prone. Small transactions often slip through, making budget control difficult. This workflow solves that by: Automatically extracting financial data from Gmail. Categorizing expenses using AI parsing. Saving all data into Google Sheets in a structured way. Comparing with monthly budgets and raising alerts. Target Audience: Individuals who want personal budget automation. Families managing shared household spending. Small teams looking for a lightweight financial log. ⚙️ Setup Prerequisites An n8n instance (self-hosted or cloud). A Google account with Gmail + Google Sheets enabled. Pre-created Google Sheets file with 2 tabs: Expenses Budgets A configured Gemini API connection in n8n. 📊 Google Sheets Template Expenses Tab (columns in order): Timestamp | Date | Account | From | To | Type | Category | Description | Amount | Currency | Source | MessageId | Status Budget Tab (columns in order): Month | Category | Budget Amount | Notes | UpdatedAt Yearly Summary Tab (auto-calculated): Year | Month | Category | Total Expense | Budget | Variance | Alert Variance = Budget - Total Expense Alert = ⚠️ Over Budget when spending > budget 🚀 How It Works Gmail: Gmail Trigger captures new bank/UPI emails. Gemini AI Parser extracts structured details (date, amount, category, etc.). Filter Node ensures only valid financial transactions are logged. Information extractor will extract the information like Date, account, transaction type(Credit/Debit), description, currency, status, messageId, from email, to email, category -> checks if the transaction is 'Credit' or 'Debit' then appends the details to the respective google sheet Budget Validator checks against monthly allocations. If the expense is above the budget is raises an alert and will send a email to the connected account. For sending email I wrote a Google Sheet App script: var ss = SpreadsheetApp.getActiveSpreadsheet(); var monthly = ss.getSheetByName("MonthlySummary"); var yearly = ss.getSheetByName("YearlySummary"); // Get values from Monthly Summary var totalExpense = monthly.getRange("D2").getValue(); var budget = monthly.getRange("E2").getValue(); // Get current date info var now = new Date(); var month = Utilities.formatDate(now, "GMT+5:30", "MM"); var year = Utilities.formatDate(now, "GMT+5:30", "yyyy"); var status = (totalExpense > budget) ? "Alert" : ""; // Append to Yearly Summary yearly.appendRow([year, month, totalExpense, status]); // If budget exceeded, send alert email if (status === "Alert") { var emailAddress = "YOUR EMAIL"; var subject = "⚠️ Budget Exceeded - " + month + "/" + year; var body = "Your total expenses this month (" + totalExpense + ") have exceeded your budget of " + budget + ".\n\n" + "Please review your spending."; MailApp.sendEmail(emailAddress, subject, body); } // 🔄 Reset Monthly Summary var lastRow = monthly.getLastRow(); if (lastRow > 3) { // assuming headers in first 2-3 rows monthly.getRange("A4:C" + lastRow).clearContent(); } // Reset total in D2 monthly.getRange("D2").setValue(0); } Monthly summary auto-calculates the expense and updates the expense for every month and budgets(sum all budgets if there are more than 1 budgets). Yearly Summary auto-updates and raises over-budget alerts. Telegram: Takes input from a telegram bot which is connected to the n8n workflow telegram trigger. Gemini AI Parser extracts structured details (date, amount, category, etc.). Then it checks, whether the manually specified details is 'budget' or 'expense', then splits the data -> parse the data -> then again check whether it is 'Budget' or 'Expense' then appends the structured data to the respective google sheet. Monthly summary auto-calculates the expense and updates the expense for every month and budgets(sum all budgets if there are more than 1 budgets). Yearly Summary auto-updates and raises over-budget alerts. 🔧 Customization Add support for more banks/UPI apps by extending the parser schema. const senderEmail = $input.first().json.From || ""; // Account detection let account = ""; // you can modify the bank names and UPI names here if (/alerts@hdfcbank\.net/i.test(senderEmail)) account = "HDFC Bank"; // you can modify the bank names and UPI names here else if (/ealerts@iobnet\.co\.in/i.test(senderEmail)) account = "Indian Overseas Bank"; else if (/alerts@indianbank\.in/i.test(senderEmail)) account = "Indian Bank"; else if (/@upi|@okhdfcbank|@okaxis|@okicici/i.test(emailBody)) { if (/gpay|google pay/i.test(emailBody)) account = "Google Pay"; else if (/phonepe/i.test(emailBody)) account = "PhonePe"; else if (/paytm/i.test(emailBody)) account = "Paytm"; else account = "UPI"; } else { account = "Other"; } // If account is "Other", skip output if (account === "Other") { return []; } // Output return [{ account, from: senderEmail, // exact Gmail "From" metadata snippet: emailBody, messageId: $input.first().json.id || "" }]; Create custom categories (e.g., Travel, Groceries, Subscriptions). Send real-time alerts via Telegram/Slack/Email using n8n nodes. Share the Google Sheet with family or team for collaborative use. 📌 Usage The workflow runs automatically on every new Gmail transaction email and financial input on the telegram bot. At the end of each month, totals are calculated in the Yearly Summary tab. Users only need to maintain the Budget tab with updated monthly allocations.
by Avkash Kakdiya
How it works The workflow detects incoming job-application emails, extracts resumes, and parses them for AI analysis. It evaluates each candidate against three open roles and assigns a fit score with structured reasoning. Low-scoring applicants are stored for review, while strong candidates move into an automated scheduling flow. The system checks availability on the next business day, books the slot, sends a confirmation email, and records all details in Airtable. Step-by-step Detect and collect job-application data Gmail Trigger** – Monitors inbox for all new emails. Message a model** – Classifies whether the email is a job application. If** – Continues only when the AI result is YES. Get a message** – Fetches the full message and attachments. Upload file** – Uploads the resume to Google Drive. Extract from File** – Converts the PDF resume into text. Analyze the resume and evaluate fit Available Positions** – Defines the three open roles. Message a model1** – Produces recommended role, fit score, strengths, gaps, skills, and reasoning. If1** – Routes candidates based on fit_score ≥ 8. Create a record1** – Stores lower-scoring applicants in Airtable. Get Next Business Day** – Calculates the schedule window for qualified candidates. Check availability on the next business day AI Agent** – Orchestrates availability search using calendar nodes. Get Events** – Retrieves events for the target day. Check Availability** – Evaluates free 1-hour slots. OpenAI Chat Model** – Reasoning engine for the agent. Structured Output Parser** – Returns clean JSON with start_time and end_time. OpenAI Chat Model1** – Supports structured parsing. Schedule the interview and notify the candidate Create an event** – Books the interview in Google Calendar. Send a message** – Sends an HTML confirmation email to the candidate. Create a record** – Saves shortlisted candidate and interview data in Airtable. Why use this? Removes manual screening by automating email intake and resume parsing. Ensures consistent AI-based role matching and scoring. Books interviews automatically using real calendar availability. Keeps all applicant and scheduling data organized in Airtable. Provides a fully hands-off, end-to-end hiring pipeline.