by Jitesh Dugar
Title Hackathon Participant Badge Generator with QR Code & Email Delivery Description A fast, reliable, and fully automated workflow that generates professional participant badges for hackathons, tech events, and workshops — complete with unique Badge ID, QR verification, PDF output, and email delivery. This workflow takes any simple registration input and transforms it into a verified, branded participant badge in under 10 seconds. What this workflow does Accepts event registrations via a POST Webhook (name, email, event, team, role). Performs input validation and disposable/fake email detection using VerifiEmail. Creates a unique Badge ID (e.g., HACK-2025-1763560499-AB3XYF). Generates a public verification URL and QR code for check-in. Builds a high-resolution badge (1056×816px) with event branding, logo, gradient background, and QR code. Converts the HTML badge design into a print-ready PDF using PDFMunk (htmlcsstopdf). Sends a beautiful HTML email via Gmail that includes: Inline badge preview (visible immediately) Attached PDF badge Verification URL + Badge ID Logs all badge metadata to Google Sheets for audit and check-in tracking. Returns a clean JSON success response to the caller. Use Cases Ideal for: Hackathons & tech conferences Engineering fests & competitions Workshops, meetups, bootcamps Any event requiring verified digital badges with QR check-in Key Features Real-time email verification** blocks fake/disposable registrations. QR code check-in** powered by a reliable public QR API. Fully customizable badge design** — swap logos, colors, fonts easily. Inline email preview** means participants see their badge instantly. Complete event log** stored in Google Sheets with timestamps, PDF links, and verification URLs. Extendable** (add Slack alerts, Drive uploads, role-based templates, etc.) Setup Instructions (5 Minutes) Add your credentials: VerifiEmail PDFMunk (HTML → PDF) Gmail Google Sheets Update your: Logo URL Verification domain Activate the workflow and start sending POST requests to the Webhook. Badges will be generated and emailed automatically — no manual work needed. Why this workflow is special It’s built for speed, reliability, visual quality, and zero manual overhead. Participants receive a sleek, branded badge instantly, organizers get automated logs, and your event gets a professional identity. Perfect for teams who want enterprise-grade badge automation without writing a single line of code. Tags hackathon, badge, qr-code, pdf, email, gmail, automation, participant, event, check-in, google-sheets
by Vitorio Magalhães
Overview This workflow automatically enriches Brazilian company data by fetching comprehensive CNPJ information from the MinhaReceita.org API and updating your Google Sheets spreadsheet. Perfect for data analysts, sales teams, and anyone working with Brazilian business databases who needs to enrich company information at scale. What it does Reads CNPJ numbers** from your Google Sheets spreadsheet Fetches complete company data** from Brazil's Federal Revenue database via MinhaReceita.org API Updates your spreadsheet** with comprehensive business information including address, tax status, partners, and more Sends Telegram notifications** when the process is complete Processes data in batches** to handle large datasets efficiently Key Features ✅ Free API - No authentication required, completely free to use ✅ Comprehensive Data - 47+ fields of official Brazilian company information ✅ Batch Processing - Handles up to 100 CNPJs per batch automatically ✅ Smart Filtering - Only processes CNPJs that don't already have data ✅ Real-time Updates - Updates your spreadsheet as data is retrieved ✅ Progress Notifications - Get notified via Telegram when complete Setup Requirements Google Sheets Structure Your spreadsheet must contain at minimum: cnpj** column with Brazilian CNPJ numbers (numbers only, no formatting) razao_social** column (used to identify records without data) Credentials Needed Google Sheets OAuth2** credentials configured in n8n Telegram Bot** credentials for notifications (optional but recommended) Available Data Fields The workflow can populate your spreadsheet with any or all of these official fields from Brazil's Federal Revenue: 🏢 Company Information cnpj, razao_social, nome_fantasia, capital_social porte, codigo_porte, natureza_juridica, codigo_natureza_juridica 📍 Address & Location uf, municipio, codigo_municipio, codigo_municipio_ibge bairro, logradouro, descricao_tipo_de_logradouro numero, complemento, cep pais, codigo_pais, nome_cidade_no_exterior 📞 Contact Information email, ddd_telefone_1, ddd_telefone_2, ddd_fax 💼 Business Classification cnae_fiscal, cnae_fiscal_descricao, cnaes_secundarios regime_tributario, qualificacao_do_responsavel 📋 Registration Status situacao_cadastral, descricao_situacao_cadastral motivo_situacao_cadastral, descricao_motivo_situacao_cadastral situacao_especial, identificador_matriz_filial, descricao_identificador_matriz_filial ente_federativo_responsavel 📅 Important Dates data_inicio_atividade, data_situacao_cadastral, data_situacao_especial 🏛️ Tax Regime Information opcao_pelo_mei, data_opcao_pelo_mei, data_exclusao_do_mei opcao_pelo_simples, data_opcao_pelo_simples, data_exclusao_do_simples 👥 Partners & Shareholders qsa (Complete structured data of company partners and shareholders) How to Use Prepare your spreadsheet with CNPJ numbers in the cnpj column Configure your Telegram ID in the Settings node for notifications Set up Google Sheets credentials in n8n Add the desired data columns to your spreadsheet (any combination from the list above) Run the workflow - it will automatically process all CNPJs without existing data Performance & Limitations API Limits**: None - completely free API from MinhaReceita.org Data Accuracy**: Official data from Brazil's Federal Revenue Service Batch Size**: Configurable (default: 100 records per batch) Use Cases Lead Enrichment**: Enhance prospect databases with complete company information Market Research**: Gather comprehensive data about Brazilian companies Compliance & Due Diligence**: Verify company registration status and details Sales Intelligence**: Access contact information and company classification data Data Cleaning**: Standardize and complete existing company databases Prerequisites N8N instance with Google Sheets integration Google Sheets document with CNPJ data Basic understanding of Brazilian CNPJ format (14-digit company registration number) Telegram bot token (optional, for notifications) Important Notes CNPJs must be active and registered with Brazil's Federal Revenue Service The workflow only processes CNPJs where razao_social is empty (avoiding duplicates) All data comes from official government sources via MinhaReceita.org No rate limiting needed - the API is designed for bulk requests Supports both matriz (headquarters) and filial (branch) identification
by WeblineIndia
Send Post‑Interview Feedback Nudges from Google Sheets to Slack (with Email Fallback) This n8n workflow automates the process of sending post-interview feedback reminders to interviewers. It checks a Google Sheet daily for pending feedback entries and sends personalized Slack DMs or email nudges based on the availability of Slack IDs. It ensures consistent follow-ups and eliminates manual tracking. Who’s it for HR and Talent Acquisition teams Recruitment coordinators Engineering/Design/Product team leads conducting interviews Anyone managing interview feedback collection using Google Sheets and Slack How it works Trigger: The workflow starts every day at 6:00 PM using the Schedule Trigger. Fetch Data: It reads a Google Sheet with interview entries via the Google Sheets (Read Sheet) node. Check Feedback Submission: An IF node filters entries where feedback has not been marked as “Yes.” Slack Check: Another IF node checks if a valid Slack ID is present. If Slack ID exists: Sends a Slack DM reminder. If Slack ID is missing: Sends a fallback reminder via email using Gmail. Update Status: Updates the sheet to mark the reminder as sent, avoiding future duplicates. How to set up Prepare a Google Sheet with columns: candidate_email, interviewer_email, feedback_submitted, slack_id, reminder_sent. Connect your Google Sheets, Slack, and Gmail accounts in n8n. Set the Schedule Trigger to your preferred time (e.g., 6:00 PM). Map the correct columns in each node. Deploy and test the workflow. Requirements A working n8n instance. Google Sheets with structured feedback data. Slack workspace and bot token with DM permissions. Gmail account connected to n8n for fallback reminders. Interviewers listed with either Slack ID or valid email. How to customize Change the schedule (e.g., run hourly or on specific days). Customize Slack or Email message templates. Add conditional formatting for different interview types or roles. Integrate additional columns for logging timestamps or retries. Expand to MS Teams or other email providers. Add‑ons Google Sheets Timestamping**: Log the exact time when reminders were sent. Multi-language Reminder Support**: Based on interviewer’s preferred language. Feedback Form Auto-linking**: Embed Google Form links dynamically in messages. Notion or Airtable Integration**: Extend tracking to other platforms. Use Case Examples A recruiter managing 10+ interviews daily ensures feedback is collected within 24 hours. An engineering manager automates reminders for panelists to fill candidate scorecards. HR teams use it during hiring surges to eliminate feedback bottlenecks. Common Troubleshooting | Issue | Possible Cause | Solution | | ---------------------------- | --------------------------------- | ------------------------------------------------------- | | Reminders not sending | Schedule Trigger not firing | Check cron expression or timezone settings | | Slack messages not delivered | Slack ID missing or invalid | Ensure Slack IDs are mapped correctly in the Sheet | | Emails not sent | Gmail node not authorized | Reconnect Gmail credentials in n8n | | Entries repeatedly reminded | Sheet not updating after reminder | Confirm Update node is marking reminder_sent as “Yes” | | Slack bot errors | Insufficient permissions | Ensure bot has permission to send DMs | Need Help? Need a hand setting this up or want to customize it further for your recruitment workflow? Just drop a message to our n8n automation team at WeblineIndia — we’re here to help streamline your hiring feedback process!
by Avkash Kakdiya
How it works This workflow captures new leads from Typeform, instantly checks if their budget is above $5,000, and prioritizes them for faster sales follow-up. High-budget leads are enriched in HubSpot as contacts with detailed properties, and a priority task is created for the sales team. Leads are then routed based on their source (Facebook or SurveyMonkey), logged into Google Sheets for marketing or campaign tracking, and finally, a Slack notification is sent to alert the team in real time. Step-by-step Capture & Qualify Leads The workflow triggers on new Typeform submissions. It evaluates the budget field to identify high-priority leads (>$5,000). CRM Enrichment High-priority leads are automatically created or updated as contacts in HubSpot. A priority follow-up task is logged in HubSpot with the lead’s budget details. Source-Based Routing If the lead comes from Facebook or SurveyMonkey, their details are logged in a Google Sheet. This ensures marketing and campaign teams can analyze and track leads separately. Team Notifications Once logged, the workflow sends a Slack message to the sales/marketing channel. The message includes the lead’s name, email, phone, budget, and source, ensuring instant visibility for follow-up. Why use this? Automatically qualifies high-value leads based on budget. Syncs lead details seamlessly with HubSpot CRM. Routes leads by source for better campaign tracking. Keeps sales and marketing teams aligned with real-time Slack alerts. Cuts down manual effort, ensuring faster response times and higher conversion rates.
by WeblineIndia
Customer Feedback Automation Workflow with Webhook, OpenAI, Jira & Slack This workflow collects customer feedback from a webhook, validates the incoming data, analyzes the sentiment using OpenAI and creates Jira tasks for negative or feature-request feedback. It also generates an automated weekly summary using OpenAI and delivers it to Slack. It helps teams stay informed, skip manual reviews and act quickly on customer issues. Quick Start – Implementation Steps Set up the Webhook URL in your application to send customer feedback. Configure Slack, Jira and OpenAI credentials in n8n. Adjust sentiment rules or Jira fields if needed. Activate the workflow — you’re ready to collect and process feedback automatically. What It Does This workflow automates the entire lifecycle of customer feedback handling. When someone submits feedback, the system checks if the required information (feedback text and sentiment) is present. If the payload is invalid or incomplete, the team immediately receives a Slack notification to take action. If the feedback is valid, OpenAI analyzes the content and identifies the sentiment as positive, negative, neutral or a feature suggestion. Based on this result, the system automatically creates a Jira issue for negative feedback or feature requests, ensuring nothing important is missed. Alongside real-time processing, the workflow also compiles a weekly summary. Every week, it gathers all Jira issues created through feedback and sends them to OpenAI for summarization. The summary is then posted to Slack so the team gets a clean, easy-to-read review of customer sentiment trends. Who’s It For This workflow is ideal for: Customer support teams Product managers QA and development teams Companies collecting user feedback Businesses wanting automated sentiment analysis and reporting Requirements to Use This Workflow To fully use this workflow, you need: An n8n instance (self-hosted or cloud) A Webhook endpoint to receive customer feedback A Slack workspace with API access A Jira Software Cloud account An OpenAI API key with access to GPT-4.1 or similar Basic understanding of JSON payloads How It Works Collect Feedback – Receives customer data through an n8n webhook. Validate Payload – Checks required fields; bad input triggers Slack alerts. Determine Sentiment – Sends feedback text to OpenAI for sentiment classification. Conditional Routing – Negative or feature-request items move forward; others are ignored. Create Jira Task – Automatically logs an issue for follow-up. Weekly Summary – A scheduled trigger collects all Jira issues created during the week. Generate Report – Sends all issues to OpenAI for a clean weekly summary. Delivered to Slack – The summary is posted for the team to review. Setup Steps Import the workflow JSON file into n8n. Configure your credentials: Slack Jira OpenAI Update the webhook URL in your application. Edit Jira project ID or fields if required. Customize Slack channel IDs. Enable the schedule trigger (weekly summary). Activate the workflow. How To Customize Nodes Customize Sentiment Rules Modify the IF node that checks OpenAI output: Add new sentiment labels (e.g., “bug”, “urgent”) Adjust rules for what should create a Jira issue Customize Jira Task Fields In the Create Jira Task node, you can change: Project ID Issue type Summary and description templates Labels or assignees Customize Slack Messages Update Slack node text blocks to: Format alerts Add more details Send messages to different channels Add-Ons (Optional Enhancements) You can extend this workflow with: Email notifications for high-priority feedback Auto-reply emails to customers acknowledging their feedback Google Sheets logging for historical data Dashboard creation using Airtable or Notion Multi-language sentiment detection Auto-tagging Jira issues with sentiment categories Use Case Examples Customer Complaint Handling – Automatically detect negative feedback and create a Jira issue. Feature Request Collection – Route suggestions to the product backlog. Weekly Sentiment Reporting – Keep managers updated on trends. Slack Alerts for Bad Payloads – Notify the team when someone sends incomplete or incorrect feedback. Automated Feedback Triage – Assign tasks to specific Jira users based on sentiment or keywords. You can extend to many more such similar use cases. Troubleshooting Guide | Issue | Possible Cause | Solution | |-----------------------------|-----------------------------------------------|---------------------------------------------------| | Slack alert not sent | Wrong API credentials or channel ID | Check Slack credentials and update channel ID | | Jira issue not created | Incorrect project ID or issue type | Verify Jira configuration in n8n | | OpenAI sentiment not reading| Wrong JSON path in IF node | Re-check $json.output[0].content[0].text | | Weekly summary not generated| Schedule trigger disabled | Enable the Schedule Trigger node | | Webhook not receiving data | Application not pointing to correct URL | Verify webhook URL in your app | Need Any Help? If you need any help setting up this workflow, troubleshooting or adding custom features, our n8n experts at WeblineIndia is always here to support. We can help you automate more processes, integrate external systems or build complete workflow solutions tailored to your business.
by Ayis Saliaris Fasseas
How It Works Starts with a Manual Trigger Reads lead list from Google Sheet Filter rows where email wasn’t sent Generate personalized email body (AI) Generate email subject line (AI) Merge AI outputs with original row data Create Gmail draft Update Google Sheet with email content and date Wait 3 seconds between updates to avoid API limits Setup Steps Connect Google Sheets, Gmail, and OpenAI credentials Check sheet column names (business_name, email, contact_name, city, business_type, email_sent) Run Manual Trigger to test one row Adjust AI prompts if needed Customization Add unique ID column to match rows if needed Change AI prompts to adjust email style Increase wait time to avoid rate limits Use Cases Draft cold emails for review before sending Automate lead outreach while keeping human oversight Generate personalized emails and subject lines quickly Troubleshooting Tips Draft not created → check Gmail credentials and scopes Sheet not updating → check matching column exists AI outputs empty → increase tokens or check response path
by Abideen Bello
How it works This workflow automatically monitors your Gmail inbox and uses OpenAI's GPT model to intelligently classify incoming emails into four key categories: High Priority - Urgent emails requiring immediate attention from executives, clients, or stakeholders Promotion - Marketing emails, sales offers, product launches, and event invitations Finance/Billing - Invoices, receipts, payment notifications, and financial records Customer Support - Help requests, troubleshooting queries, and service-related issues Once classified, emails are automatically labeled in Gmail using the appropriate tags, making it easy to filter, search, and prioritize your communications. How to set up Requirements Gmail account with OAuth2 access enabled OpenAI API key with GPT model access Custom Gmail labels created for each category Step-by-step setup Create Gmail Labels In Gmail, create these labels: "High Priority", "Promotion", "Finance/Billing", "Customer Support" Note the label IDs (you'll need to replace the hardcoded ones in the workflow) Configure Credentials Add your Gmail OAuth2 credentials in n8n Add your OpenAI API credentials Update Label IDs Replace the hardcoded label IDs in each Gmail node with your actual label IDs You can find label IDs by testing the Gmail node or using Gmail API Adjust Classification Rules Review the Text Classifier categories and modify descriptions to match your specific needs Add or remove categories as required Set Polling Frequency The workflow is set to check every minute - adjust based on your email volume
by Oneclick AI Squad
This n8n workflow automates the collection and analysis of real-time attendee feedback and engagement data during sessions or live polls. It generates actionable insights for organizers, streamlining the process of gathering, processing, and delivering feedback to enhance event management and attendee experience. Key Features Collects session feedback and live poll responses in real-time. Analyzes sentiment and extracts key trends for actionable insights. Delivers summarized reports and recommendations to organizers via multiple channels. Supports seamless integration with external tools for data logging and communication. Workflow Process The Webhook Trigger node captures incoming feedback or poll data from attendees, initiating the workflow. The Extract Feedback Data node processes the raw input to organize and prepare it for analysis. The Analyze Sentiment node uses AI to evaluate feedback sentiment and identify key themes or trends. The Aggregate Feedback node compiles the analyzed data into a cohesive summary. The Calculate Insights node generates actionable insights and recommendations based on the aggregated data. The Check Urgency node assesses the priority of the feedback for timely responses or actions. The Log to Google Sheets node records the feedback and insights for future reference. The Webhook Response node sends real-time updates or acknowledgments back to the source. The Post to Slack node delivers summary messages to organizers via Slack. The Email Report to Organizers node sends detailed reports to organizers via email. Setup Instructions Import the workflow into n8n and configure the Webhook Trigger with your event platform's API credentials. Set up the AI service for sentiment analysis and insight generation with a suitable language model. Configure Google Sheets integration for logging feedback data. Set up Slack and email credentials for notifications and reports. Test the workflow by sending sample feedback or poll responses to ensure proper data flow and analysis. Monitor the output and adjust AI parameters or node settings as needed for optimal performance. Prerequisites Webhook integration with the event platform or polling system. AI/LLM service for sentiment analysis and insight generation. Google Sheets account for data logging. Slack workspace and email service for notifications and reports. Access to real-time attendee data from the event platform. Modification Options Modify the Extract Feedback Data node to include specific data fields or custom parsing rules. Adjust the Analyze Sentiment node to focus on particular sentiment metrics or keywords. Customize the Calculate Insights node to prioritize certain types of recommendations. Add additional notification channels (e.g., Microsoft Teams) to the Post to Slack or Email Report nodes. Configure the Check Urgency node to include custom urgency criteria based on event needs.
by Matthew
AI-Powered Personalized Email Nurturing This workflow automates sending tailored onboarding and follow-up emails based on lead commitment levels. It's designed for coaches, consultants, and service-based businesses who want to personalize their outreach and nurture prospects more effectively. How It Works Triggered by New Data: The workflow automatically starts whenever a new row is added to your specified Google Sheet. Assess Commitment: An If node checks the "Commitment" score from your Google Sheet data. If the commitment score is 8 or higher, the lead is considered "warm" and receives a detailed onboarding email. If the commitment score is below 8, the lead is considered "colder" and receives a gentle nudge email. Craft Warm Email (for high commitment): For "warm" leads, an OpenAI node generates an aspirational and confident first-touch email. This email highlights their goals, introduces your flagship offers, and invites them to a 30-minute discovery call. Craft Colder Email (for lower commitment): For "colder" leads, a different OpenAI node generates an encouraging, non-pushy follow-up email. This email thanks them for sharing their goals, reinspires them with the ROI of personal branding, asks a reflective question, and offers a no-pressure Q&A session. Send Emails: The appropriate Gmail node sends the personalized email to the lead. Record Activity: Finally, the Google Sheets node appends the lead's information and details of the sent email to a separate "Contacts" sheet, keeping a clear record of all interactions. Google Sheet Structure Your primary Google Sheet (the one triggering the workflow) must have the following exact column headers: Email** First name** Last name** Phone number** Industry** Title** Three goals you wish to achieve this year** 1-10 how commited are you to your goals** Your secondary Google Sheet (for appending contacts) must have these exact column headers: name** email** phone** industry** title** three goals** commitment** Setup Instructions Add Credentials: In n8n, add your OpenAI API key via the Credentials menu. Connect your Google account via the Credentials menu for Google Sheets and Gmail access. Configure Google Sheets Trigger: Select the Google Sheets Trigger node. Choose your Google Sheets credential, select your spreadsheet, and the specific sheet name that contains your incoming lead data. Configure Commitment Logic: Select the Commitment ≥ 8? If node. The condition is set to ={{ $json['1-10 how commited are you to your goals'] }} >= 8. Ensure your Google Sheet column name for commitment matches exactly, including spacing and capitalization. Configure OpenAI Nodes: Select both crafting warmer email and crafting colder email nodes. Choose your OpenAI credential from the dropdown. Crucially: In both nodes' Messages section, replace placeholder information with your actual company name, founder name, and any specific details about your flagship offers and booking links (https://calendly.com/brandied/discovery). Configure Gmail Nodes: Select both Send warmer email and Send colder email nodes. Choose your Gmail credential. Configure Append Row in Sheet: Select the Append row in sheet node. Choose your Google Sheets credential, select the spreadsheet and sheet name where you want to log sent emails (your "Contacts" sheet). Verify that the column mappings correctly align with the "Google Sheet Structure" for your secondary sheet. Customization Options 💡 Commitment Threshold: Adjust the number in the **Commitment ≥ 8? If node to change what constitutes a "warm" lead (e.g., gte 7 for a commitment score of 7 or higher). Email Content & Tone: Modify the prompts in the **crafting warmer email and crafting colder email OpenAI nodes to fine-tune the email tone, length, specific calls to action, or any other elements to better suit your brand voice and strategy. Follow-Up Cadence: Instead of immediate sending, you could introduce a **Wait node after the email crafting to space out follow-ups or integrate with an email sequence tool. CRM Integration: Replace the final **Google Sheets node with an integration to your CRM (e.g., HubSpot, Salesforce) to automatically log these interactions and enrich lead profiles directly within your CRM.
by Baptiste Fort
Automatically Reply to Customer Emails with Airtable, Gmail, and OpenAI Introduction This guide walks you step by step through setting up an automated agent that: Receives emails sent by your customers. Analyzes the content of the email. Generates an appropriate response using an AI model (OpenAI GPT). Stores all information (received email, AI response, date, customer email) in Airtable. Automatically replies to the customer in the same Gmail thread. Prerequisites Before you start, you’ll need: A Gmail account connected to n8n. An Airtable account. An n8n instance (cloud or self-hosted). An OpenAI API key. Prepare the Airtable Base No need to build everything from scratch — here’s a ready-to-use base you can copy: 👉 Open the Airtable base It already contains the following structure: Subject** (text) → email subject. Date** (date/time) → date of reception. Customer Email** (text) → customer’s email address. Message** (long text) → body of the received email. AI Response** (long text) → AI-generated reply. You can reuse it as it is or duplicate it into your Airtable account. 1. Set Up Gmail Trigger in n8n Alright, now that we have our Airtable base ready, we need to capture customer emails. That’s the job of the Gmail Trigger. Basically, this node lies in wait inside your inbox, and as soon as a new message arrives… bam, your workflow fires up. Connect Your Gmail Account In n8n, add a Gmail Trigger node. Click Credential to connect with and select your Gmail account. If you haven’t done it yet, click Add new, connect your Google account, and allow access. Pro tip: don’t worry, it won’t read your personal emails to gossip — everything stays inside your workflow. Basic Settings Poll Times**: select Every Minute. → This way, n8n checks your inbox every minute. Mode**: Message Received. → You want the flow to trigger whenever a customer writes to you. Event**: Message Received. → Same logic, keep it simple. Simplify**: turn it off (OFF). → Why? Because if you enable "Simplify," you only get a stripped-down version of the email. And you want it all: subject, sender, raw message… the full package. Expected Output When you execute the node, you should see: id**: unique identifier of the email. threadId**: conversation identifier (super useful to reply in the same thread). snippet**: a short preview of the email (first lines). From**: your customer’s email address. To**: your email address. Subject**: the subject of the email. payload**: the full body of the email (yep, in base64 — but we’ll handle that later). And that’s it — your Gmail Trigger is set up. In short, the moment a customer writes “Hey, I have an issue with my account,” your workflow kicks in instantly (well, almost — it checks every minute). 2. Set Up the AI Agent in n8n After configuring your Gmail Trigger (which captures incoming customer emails), you now need a brain to take over, analyze the email, and draft a reply. That’s where the AI Agent node comes in. Its Role The AI Agent node is used to: Read the email content (via the Gmail Trigger). Understand the context and tone of the customer. Generate a clear, concise, and human-like response. Prepare a personalized reply that will later be sent back via Gmail and stored in Airtable. In short, it’s your 24/7 support colleague, but coded as a bot. How to Configure It Source for Prompt (User Message)** → choose Define below. Prompt (User Message)** → describe your business and role as if you were training an intern. Example: “You are an AI support agent for a company that sells solar panels. You respond to technical requests, quotes, and customer questions. Your replies must be short, clear, friendly, and precise.” Chat Model** → connect your AI model (e.g. OpenAI GPT-4.1 Mini). Memory (optional but recommended)* → connect a *Conversation Memory** node. → This allows the AI to retain conversation history and better understand follow-ups. Expected Output When you run this node, you should see in the output: A field output containing the automatically generated AI reply. The text should be short, natural, and adapted to the customer’s tone (casual or formal). 👉 With the Gmail Trigger you capture emails, and with the AI Agent you get a reply ready to send — as if you had written it yourself. 3. Save Emails and Responses in Airtable Now that your AI Agent generates replies, you need to store them somewhere to keep a clear record of all interactions. That’s where Airtable comes in. Quick Reminder You’ve already copied my ready-to-use Airtable base: 👉 Access the base This base contains a table Email Support Logs with the following columns: Subject** Date** Customer Email** Message** AI Response** How to Connect Airtable in n8n Add an Airtable node right after your AI Agent. Under Operation, select Create. In Base → choose BASE AGENT IA EMAIL. In Table → select Email Support Logs. Map the Correct Values Then, link the fields as follows: Subject** → {{ $('Email Received').item.json.Subject }} Customer Email** → {{ $('Email Received').item.json.From }} Message** → {{ $('Email Received').item.json.snippet }} AI Response** → {{ $('AI Agent').item.json.output }} Date** → {{ $now }} Expected Output For each new email received: Gmail captures the email. Your AI drafts the reply. All details (email, sender, subject, reply) are automatically stored in your Airtable base. 👉 You now have a fully automated customer support log. 4. Automatically Reply to the Customer in Gmail Now that you’re storing each interaction in Airtable, it’s time to send your AI’s reply directly back to the customer. This closes the loop: customer writes → AI replies → everything gets logged in Airtable. Add the Gmail Reply Node Add a Gmail node right after your AI Agent (or after Airtable if you prefer logging before replying). Under Operation, select Reply. Connect your Gmail account (same credential as your Gmail Trigger). Configure the Reply Thread ID** → {{ $('Email Received').item.json.threadId }} → Ensures the reply is sent in the same conversation thread. To** → {{ $('Email Received').item.json.From }} → Customer’s email address. Subject** → Re: {{ $('Email Received').item.json.Subject }} → The "Re:" keeps the continuity of the conversation. Message Body** → {{ $('AI Agent').item.json.output }} → This is the text automatically generated by your AI. Expected Output When a customer sends an email: Gmail Trigger captures the message. The AI Agent generates a tailored reply. Airtable logs the full interaction. Gmail automatically sends the response in the same conversation thread. Your customer receives a quick, personalized, and natural reply without you typing a single word. 👉 You now have a complete support agent: listen, analyze, log, reply. Want to save hours each week? Visit Agence automatisation 0vni.
by Neal Mcleod
This workflow streamlines accounts receivable management by automatically monitoring invoices in Google Sheets and sending scheduled payment reminders. It is designed for businesses using Gmail and Google Sheets that need a scalable alternative to complex accounting software. How it works Watches for invoices: Triggers daily or via form submission to check for new entries. First Follow-up (Day 7): Checks payment status one week after the invoice date. If unpaid, it sends a friendly email (and optional SMS). Second Follow-up (Day 9): Re-checks status and sends a firmer reminder if funds are still not received. Final Notice (Day 12): Sends a final urgent reminder before closing the cycle. Smart Stopping: The workflow checks the 'Payment Status' column before every single message to ensure clients who have already paid are never disturbed. Setup time: About 20 minutes. Prerequisites: A Google Sheet with columns for Date, Email, and Payment Status.
by Rahul Joshi
Description Automatically scan your Stripe customers daily to detect duplicates and keep your customer database clean. This workflow uses advanced fuzzy matching for emails and names, logs results to Airtable for review, and notifies your team in Slack with actionable insights. 💳🧹💬 What This Template Does Runs every day at 2:00 AM via scheduled trigger ⏰ Fetches all customers from Stripe 💳 Analyzes for potential duplicates using email and name similarity 🔍 Logs duplicate suggestions into Airtable for review 📊 Sends formatted Slack notifications with detailed reports 💬 Key Benefits Keeps your Stripe customer database clean and deduplicated 🧹 Reduces errors in reporting and billing 💵 Provides confidence scoring for duplicate matches 🔑 Centralized review and approval in Airtable 📋 Real-time team notifications in Slack with actionable insights 📲 Features Daily 2 AM schedule with cron expression 0 2 * * * Email-based duplicate detection 📧 Name similarity matching using Levenshtein distance 👤 Smart grouping: oldest record becomes the primary 🏷️ Logs duplicates to Airtable with status tracking 🔄 Slack notifications with statistics, match types, and Airtable link ⚡ Requirements n8n instance (cloud or self-hosted) Stripe API credentials with customer read access Airtable account with a table for duplicate tracking Slack App & Bot Token with chat:write permission Target Audience SaaS companies managing large Stripe customer databases 🏢 Finance and billing teams wanting clean records 💰 Support teams reducing customer confusion from duplicates 🎧 Growth and marketing teams ensuring CRM accuracy 📈 Any business that relies on Stripe for recurring billing 💼 Step-by-Step Setup Instructions Set up Stripe API credentials in n8n (use your Secret Key). Create an Airtable base and table with required fields (Customer IDs, Email, Similarity Score, Status). Add Slack API credentials and choose your target channel. Replace environment variables for Airtable (AIRTABLE_BASE_ID, AIRTABLE_TABLE_ID) and Slack (SLACK_CHANNEL_ID). Import this workflow into n8n and connect your credentials. Run the workflow once manually to validate data flows. Enable the workflow for daily automated duplicate detection. ✅