by Vinay
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. π Extract Data from Invoices with OCR, Gemini AI, and Airtable This template automates the process of extracting key details from invoices (PDF, JPG, PNG) and storing them in Airtable using OCR + AI. It eliminates manual data entry by leveraging Tesseract OCR, Google Gemini AI, and Airtable, with optional Telegram notifications. The workflow is ideal for freelancers, small businesses, and finance teams who need a lightweight and automated solution for handling invoice data. π Features β Supports JPG, PNG, and PDF invoices π§ Automatically extracts: Invoice Number, Invoice Date (standardized to YYYY-MM-DD), Subtotal, Tax, Total, Currency, Vendor Name, Email, Phone, and Ship-to Address π€ Sends structured data into Airtable automatically π¬ Sends a Telegram notification once data is processed (optional) π Triggers automatically when new files are dropped into a folder β οΈ Disclaimer This workflow uses community nodes (n8n-nodes-tesseractjs, n8n-nodes-pdf-page-extract). It works best on self-hosted n8n or n8n cloud instances where these nodes are available. You must install and configure these nodes before importing the workflow. βοΈ Setup & Configuration Install Docker with n8n. Mount your folder (e.g., ~/self-hosted-ai/ocr-bot:/shared) so invoices can be dropped into /shared/ocr/. Import the provided JSON workflow into n8n. Replace credentials: Google Gemini API key Airtable base + token Telegram bot token (optional) Drop a sample invoice (PDF/JPG/PNG) into the configured folder. Check Airtable for structured data and Telegram (if enabled) for confirmation. π§ Customization Modify the AI prompt to extract additional fields. Replace Airtable with Google Sheets or another database if preferred. Update the Telegram node with your own Chat ID for notifications. π‘ Tip: Add a screenshot of the workflow in n8n to help users quickly understand the node structure.
by Roshan Ramani
Nano Banana AI Image Editor Transform your Telegram photos with AI-powered image processing using the revolutionary Nano Banana technology. This workflow automatically receives photos via Telegram, processes them through Google's advanced Gemini 2.5 Flash vision model, and sends back intelligently enhanced images - all powered by the innovative Nano Banana processing pipeline. Who's it for Perfect for content creators, social media managers, photographers, and anyone who wants to automatically enhance their Telegram photos with AI. Whether you're running a photo editing service, creating content for clients, or just want smarter image processing in your personal chats, the Nano Banana AI editor delivers professional-grade results. How it works The Nano Banana workflow creates an intelligent Telegram bot that processes images in real-time. When you send a photo with a caption to your bot, it automatically downloads the image, converts it to the proper format, sends it to Google's Gemini AI for analysis and enhancement, then returns the processed result. The Nano Banana engine optimizes every step for speed and quality. How to set up Create Telegram Bot: Get your bot token from @BotFather on Telegram OpenRouter Account: Sign up at openrouter.ai for free Gemini access Configure Credentials: Add your Telegram and OpenRouter API keys to n8n Update Chat ID: Replace "YOUR_CHAT_ID_HERE" with your actual Telegram chat ID Activate Webhook: Enable the Telegram trigger to start receiving messages Requirements n8n instance (cloud or self-hosted) Telegram Bot API credentials OpenRouter account (free tier available) Basic understanding of webhook configuration How to customize the workflow The Nano Banana editor is highly customizable: Change AI Model:** Modify the model parameter in "Nano Banana Image Processor" node Add Filters:** Insert additional processing nodes before the AI analysis Custom Prompts:** Edit the text content sent to Gemini for different processing styles Multiple Chats:** Duplicate the final node for different Telegram destinations Error Handling:** Add conditional logic for failed processing attempts Batch Processing:** Extend to handle multiple images simultaneously The Nano Banana technology ensures optimal performance while maintaining flexibility for your specific use cases.
by Incrementors
Description: Automatically extracts all page URLs from website sitemaps, filters out unwanted sitemap links, and saves clean URLs to Google Sheets for SEO analysis and reporting. How It Works: This workflow automates the process of discovering and extracting all page URLs from a website's sitemap structure. Here's how it works step-by-step: Step 1: URL Input The workflow starts when you submit a website URL through a simple form interface. Step 2: Sitemap Discovery The system automatically generates and tests multiple possible sitemap URLs including /sitemap.xml, /sitemap_index.xml, /robots.txt, and other common variations. Step 3: Valid Sitemap Identification It sends HTTP requests to each potential sitemap URL and filters out empty or invalid responses, keeping only accessible sitemaps. Step 4: Nested Sitemap Processing For sitemap index files, the workflow extracts all nested sitemap URLs and processes each one individually to ensure complete coverage. Step 5: Page URL Extraction From each valid sitemap, it parses the XML content and extracts all individual page URLs using both XML <loc> tags and HTML links. Step 6: URL Filtering The system removes any URLs containing "sitemap" to ensure only actual content pages (like product, service, or blog pages) are retained. Step 7: Google Sheets Integration Finally, all clean page URLs are automatically saved to a Google Sheets document with duplicate prevention for easy analysis and reporting. Setup Steps: Estimated Setup Time: 10-15 minutes 1. Import the Workflow: Import the provided JSON file into your n8n instance. 2. Configure Google Sheets Integration: Set up Google Sheets OAuth2 credentials in n8n Create a new Google Sheet or use an existing one Update the "Save Page URLs to Sheet" node with your Google Sheet URL Ensure your sheet has a tab named "Your sheet tab name" with a column header "Column name" 3. Test the Workflow: Activate the workflow in n8n Use the form trigger URL to submit a test website URL Verify that URLs are being extracted and saved to your Google Sheet 4. Customize (Optional): Modify the sitemap URL patterns in the "Build sitemap URLs" node if needed Adjust the filtering criteria in the "Exclude the Sitemap URLs" node Update the Google Sheets column mapping as required Important Notes: Ensure your Google Sheets credentials have proper read/write permissions The workflow handles both XML sitemaps and robots.txt sitemap references Duplicate URLs are automatically prevented when saving to Google Sheets The workflow continues processing even if some sitemap URLs are inaccessible Need Help? For technical support or questions about this workflow: βοΈ info@incrementors.com or fill out this form: Contact Us
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 Trung Tran
AWS IAM Access Key Rotation Reminder Automation Workflow Watch the demo video below: Whoβs it for DevOps/SRE teams responsible for AWS account security. Security/compliance officers ensuring key rotation policies are followed. Any AWS account owner who wants automatic detection of stale access keys. How it works / What it does Weekly Scheduler β triggers the workflow on a recurring basis. Get Many Users β fetches all IAM users in the AWS account. Get User Access Key(s) β retrieves the access keys associated with each user. Filter Out Inactive Keys β removes keys that are not active (e.g., status Inactive). Access Key Older Than 365 Days β checks the key creation date and flags keys older than one year. Send Slack Message β notifies a Slack channel with details of the outdated key(s) for review and action. No Operation β safely ends the workflow if no keys match the condition. How to set up Configure the Weekly Scheduler to run at your desired cadence (e.g., every Monday). Use Get Many Users to list all IAM users. For each user, call ListAccessKeys (Get User Access Key(s)) to fetch their key metadata. Apply a filter to keep only keys with status Active. Add a condition to compare CreateDate against today - 365 days. Send results to Slack using the Slack Post Message node. Requirements n8n (latest version). AWS credential in n8n configured for us-east-1 (IAM requires signing with this region). IAM permissions: iam:ListUsers iam:ListAccessKeys Slack bot credentials with permission to post messages in the desired channel. How to customize the workflow Change threshold** β adjust the 365 days condition to 90, 180, or any other rotation policy. Escalation** β mention @security or create a Jira/Ticket when old keys are found. Logging** β push flagged results into a Google Sheet, database, or log management system for audit. Automation** β instead of only notifying, add a step to automatically deactivate keys older than the threshold (after approval). Multi-account support** β duplicate or loop across multiple AWS credentials if you manage several AWS accounts.
by Peliqan
How it works This template is an end-to-end demo of an in-house AI agent that can answer a wide range of questions by retrieving information from the Cin7 ERP system. For example users can ask questions related to products, stock, accounting or any other type of information contained in Cin7. Peliqan.io is used as a "cache" of all Cin7 data. Peliqan uses one-click ELT to sync all data from Cin7 to the built-in data warehouse, allowing for fast & accurate queries. The AI agent uses Text-to-SQL to answer questions. Text-to-SQL is performed via the Peliqan node, added as a tool to the AI Agent. The question of the user - in natural language - is converted to an SQL query by the AI Agent. The query is executed by Peliqan.io on the source Cin7 data and the result is interpreted by the AI Agent. Preconditions You signed up for a Peliqan.io free trial account You have a Cin7 Omni or Cin7 Core ERP system Set up steps Sign up for a free trial on peliqan.io Add Cin7 Omni or Cin7 Core as a connection in Peliqan (using an API key from Cin7) Copy your Peliqan API key (in Peliqan go to Settings > API key) and use it in n8n to add a Peliqan connection Select your data warehouse in the Peliqan node "Execute an SQL query via Peliqan" in the drop-down field "Data warehouse name or id" Optional: run the template script in Peliqan that outputs your specific Cin7 datamodel (tables & columns). Copy your datamodel and paste it in the System Message of the AI Agent (replace the standard Cin7 model already present in this workflow) Visit peliqan.io/n8n for more information. Need help ? Contact Peliqan at support@peliqan.io Disclaimer: This template contains a community node and therefore only works for n8n self-hosted users.
by Stephan Koning
WhatsApp Micro-CRM with Baserow & WasenderAPI Struggling to manage WhatsApp client communications? This n8n workflow isn't just automation; it's your centralized CRM solution for small businesses and freelancers. How it works Capture Every Message:** Integrates WhatsApp messages directly via WasenderAPI. Effortless Contact Management:** Automates contact data standardization and intelligently manages records (creating new or updating existing profiles). Rich Client Profiles:** Retrieves profile pictures and decrypts image media, giving you full context. Unified Data Hub:** Centralizes all conversations and media in Baserow, no more scattered interactions. Setup Steps Setup is incredibly fast; you can deploy this in under 15 minutes. Here's what you'll do: Link WasenderAPI:** Connect your WasenderAPI webhooks directly to n8n. Set up Baserow:** Duplicate our pre-built 'Contacts' (link) and 'Messages' (link) Baserow table templates. Secure Your Data:** Input your API credentials (WasenderAPI and Baserow) directly into n8n. Every single step is fully detailed in the workflow's sticky notes β we've made it foolproof. Requirements What do you need to get started? An active n8n instance (self-hosted or cloud). A WasenderAPI.com subscription or trial. A Baserow account. Note: Keep the flow layout as is! This will ensure that the flow is running in the correct order.
by Sri Kolagani
Transform your lead qualification process with automated AI-powered phone calls triggered directly from Salesforce lead creation. What this workflow does: Webhook Trigger: Receives new lead data from Salesforce Automated Calling: Initiates phone calls via Retell AI Smart Monitoring: Polls call status until completion AI Analysis: Uses OpenAI to analyze call transcripts Salesforce Integration: Creates follow-up tasks with insights Perfect for: Sales teams wanting to qualify leads faster Companies using Salesforce CRM Organizations looking to automate initial prospect outreach Teams wanting AI-powered call analysis You'll need: Salesforce org with lead creation triggers Retell AI account and agent setup OpenAI API access Basic n8n workflow knowledge Setup time: ~15 minutes Author: Sri Kolagani Template Type: Free
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 Edisson Garcia
π Google Drive Image Enhancement with Gemini nano banana This workflow automates image enhancement by integrating Google Drive with Google Gemini. It fetches unprocessed images from a source folder, applies AI-driven transformations based on a customizable prompt (e.g., clean and realistic product backgrounds), and uploads the enhanced results into a destination folderβstreamlining e-commerce catalog preparation or creative pipelines. π Key Features Customizable Prompt Node** β Easily adjust the style/instructions for Gemini (e.g., backgrounds, lighting, focus). Google Drive Integration** β Automatically fetches images from a source folder and uploads results to a target folder. AI Processing via Gemini** β Converts original images to Base64, sends them with the prompt to Gemini, and returns enhanced versions. Image Filtering** β Processes only files whose mimeType contains "image". Loop Handling** β Iterates over all images in the source folder until all are processed. βοΈ Setup Instructions Configure Prompt Open the promt node. Replace the text with your desired Gemini instructions (e.g., "Add a clean, realistic background for baby products"). Set Google Drive Folders In origin_folder β set Search Query to the name of the source folder (with unprocessed images). In destination_folder β set Search Query to the name of the target folder (to save results). Credentials Provide valid Google Drive OAuth2 credentials for both Drive nodes. Provide a Google Gemini API credential for the banana-request node. Run the Workflow Trigger from the init node. Workflow will download β convert β send to Gemini β reconvert β upload results automatically. π Customization Guidance Modify the prompt text to change how Gemini processes the images (background, style, product focus). Swap Search Query for folder IDs in Drive nodes if you need more precise targeting. Extend the workflow by chaining post-processing (e.g., watermarking, resizing, or tagging metadata). Β© 2025 Innovatex β’ Automation & AI Solutions β’ innovatexiot.carrd.co β’ LinkedIn
by Xavier Tai
π° Package Recommender with Sales Pipeline Tracking What It Does Automatically recommends the right service package based on budget, sends beautifully formatted proposal emails with case studies, logs everything to a sales pipeline tracker, and schedules your follow-up reminders. Converts inquiries into booked calls without manual proposal writing. How It Works Form Trigger β Lead submits budget and challenge details Log to Pipeline β All inquiry data saved to tracking sheet Budget Router β Directs to Basic ($0-3K), Standard ($3-6K), or Premium ($6K+) Set Package Variables β Loads appropriate features, pricing, case study Send Proposal Email β Gorgeous HTML email with personalized package details Update Pipeline β Marks "Package Sent" and sets follow-up date (+3 days) Calendar Reminder β Creates event in 3 days reminding you to follow up π SETUP INSTRUCTIONS Step 1: Create Sales Pipeline Sheet Create Google Sheet with tab "Package Inquiries" Add columns: Timestamp | Name | Email | Phone | Budget | Timeline | Challenge | Package Recommended | Package Price | Status | Date Sent | Follow-Up Date Update YOUR_GOOGLE_SHEET_ID in nodes 2, 7, and calendar description Step 2: Customize Package Details Edit nodes 4, 5, 6 (Set Package Details nodes) Update pricing, features, and case studies for your services Replace booking links with your actual Calendly/scheduling URLs Adjust package names if needed Step 3: Configure Email Template Edit node 7 email design/branding Update "Your Name" and signature Customize colors (currently: purple gradient, green CTA) Test email rendering across devices Step 4: Setup Calendar Integration Add Google Calendar OAuth2 credentials Verify follow-up timing (currently +3 days) Customize reminder description with your workflow Update Google Sheet link in calendar event