by Ali Amin
🎯 Accounting Alerts Automation Purpose: Automatically track Companies House filing deadlines for UK accounting firms and prevent costly penalties (£150-£1,500 per missed deadline). How it works: Daily automated checks pull live deadline data from Companies House API Color-coded email alerts (Red/Orange/Yellow/Green) prioritize urgent deadlines Interactive "Yes/No" buttons let recipients confirm completion status All data syncs back to Google Sheets for complete audit trail Value: Saves 2-3 hours/week per firm while eliminating manual tracking errors. ⚙️ Daily Deadline Check & Alert System Runs: Every weekday at 5 PM (Mon-Fri) What happens: Read Company Database - Fetches all tracked companies from Google Sheets Get Company Data - Pulls live filing deadlines from Companies House API for each company Update Due Dates - Syncs latest deadline data back to the tracking sheet Build Interactive Email - Creates HTML email with: Color-coded urgency indicators (days remaining) Sortable table by due date Clickable Yes/No confirmation buttons for each company Send via Gmail - Delivers consolidated report to accounting team Why automated: Manual deadline checking across 10-50+ companies is time-consuming and error-prone. This ensures nothing falls through the cracks. ✅ Email Response Handler (Webhook Flow) Triggered when: Recipient clicks "Yes" or "No" button in the alert email What happens: Webhook - Receives confirmation status (company_number, company_name, yes/no) Process Data - Extracts response details from the webhook payload Update Sheet - Records confirmation status in Google Sheets with timestamp Confirmation Page - Displays success message to user Why this matters: Provides instant feedback to the user and creates an audit trail of who confirmed what and when. No separate tracking system needed—everything updates automatically in the same spreadsheet. Result: Accountability without administrative burden. 📋 Setup Requirements Google Sheets Database Structure: Create a sheet with these columns: company_number (manually entered) company_name (manually entered) accounts_due (auto-updated) confirmation_due (auto-updated) confirmation_submitted (updated via email clicks) last_updated (auto-timestamp) Required Credentials: Google Sheets OAuth (for reading/writing data) Companies House API key (free from api.company-information.service.gov.uk) Gmail OAuth (for sending alerts) Webhook Configuration: Update webhook URL in "Build Interactive Email" node to match your n8n instance. Time to Setup: ~15 minutes once credentials are configured.
by Rakin Jakaria
Use cases are many: Manage your Gmail inbox, schedule calendar events, and handle contact details — all from one central AI-powered assistant. Perfect for freelancers managing clients, agency owners who need streamlined communication, or busy professionals who want a personal AI secretary handling their email and calendar. Good to know At time of writing, each Gemini request is billed per token. See Gemini Pricing for the latest info. The workflow requires Gmail, Calendar, Sheets, and Telegram integrations. Ensure you’ve set up OAuth2 credentials correctly before running. How it works Triggers: The workflow listens for **new Gmail messages or Telegram commands. Smart AI Processing**: Incoming emails are summarized, classified (Client, Sponsorship, or Not Business), and labeled automatically. Auto-Replies**: Depending on classification, the assistant sends pre-written replies (e.g., client acknowledgment, sponsorship rates, or polite rejection). Calendar Management**: Through natural language requests in Telegram, you can schedule, update, or delete calendar events with conflict-checking in place. Contact Handling**: If you send an email to someone not yet in your database, the agent will prompt you for their email, add it to Google Sheets, and reuse it for future tasks. Memory**: The AI maintains conversation context, so repeated tasks feel seamless and natural. How to use Send commands via Telegram like: “Schedule a meeting with Sarah on Monday at 3 PM” “Send an email to David about the proposal” Watch as the assistant checks your calendar, sends emails, and keeps your contacts updated — all automatically. Requirements Gmail account (with labels created for Client, Sponsorship Request, and Not Business) Google Calendar for scheduling Google Sheets for contact management Google Gemini API key Telegram bot for live interaction Customising this workflow You can expand it to: Handle Slack or WhatsApp messages in addition to Telegram. Add more classification categories (e.g., Invoices, Personal, Leads). Extend auto-replies with dynamic templates stored in Google Sheets. Log all interactions to Notion or Airtable for a CRM-style history of communications. 👉 Rakin Jakaria
by WeblineIndia
WooCommerce VIP Customer Automation This workflow automatically identifies VIP customers from your WooCommerce store based on their total spending and number of completed orders. It pulls new orders on a schedule, filters valid transactions, groups customers, calculates their VIP tier, stores them into Airtable and notifies your team in Slack.It removes all manual checking and ensures your team instantly knows when a high-value customer places an order. Quick Start – Implementation Steps Add your WooCommerce store domain and API credentials inside n8n. Configure Airtable and Slack credentials. Adjust VIP rules (lifetime spend or total orders) if needed. Activate the workflow — it will automatically detect VIPs and alert your team. What It Does This workflow fully automates VIP customer detection for WooCommerce stores. Every few minutes, it retrieves new orders via WooCommerce API. It filters only processing or completed orders and extracts essential fields such as customer ID, customer name order total and timestamps. The workflow then groups orders by customer to ensure duplicate orders don’t inflate metrics. For each customer, it fetches their complete order history, calculates lifetime value, counts total paid orders and assigns a VIP tier (Platinum, Gold or Silver). Once a customer qualifies, their details are saved into Airtable for tracking. A Slack message is simultaneously sent to inform your team so they can take immediate action — such as providing priority support, follow-up messages or special offers. This system runs completely on its own and keeps customer insights up-to-date without manual checks. Who’s It For This workflow is ideal for: WooCommerce store owners Customer support teams Marketing teams CRM & retention specialists eCommerce operations teams Businesses wanting automated VIP alerts Requirements to Use This Workflow You will need: A running n8n instance (cloud or self-hosted) A WooCommerce store with API keys A Slack workspace with API permissions An Airtable Base to store VIP customers Basic understanding of WooCommerce and Airtable fields How It Works Scheduled Trigger – Runs every few minutes to check for new orders. Domain Setup – Assigns the WooCommerce store domain used across API calls. Fetch Orders – Retrieves all orders from WooCommerce. Filter Valid Orders – Only keeps completed or processing orders. Format & Clean Data – Extracts only key order details. Deduplicate Customers – Only the first order per customer is processed. Fetch Order History – Gets lifetime order history for each customer. Calculate VIP Tier – Determines Platinum/Gold/Silver based on spend or order count. Filter VIP Only – Removes customers who do not qualify. Save to Airtable – Creates/updates VIP records. Notify Team on Slack – Sends VIP alerts instantly. Setup Steps Import this workflow JSON into n8n. Enter your WooCommerce API credentials in the HTTP Request nodes. Update the wc\_domain value in the “Set WooCommerce Domain” node. Configure Airtable credentials and select your Base + Table. Set your Slack channel ID inside the Slack node. Adjust VIP rules inside the “Calculate VIP Tier” code node if needed. Activate the workflow — it will now run automatically. How to Customize Nodes Adjust VIP Rules Edit the logic inside Calculate VIP Tier: Change Platinum threshold (₹20,000 or your value) Change Gold rule (5 orders or more) Add new VIP tiers Customize Airtable Fields You can modify: Table columns Field naming Additional customer details Customize Slack Alerts In the Slack node, change: Message format Channel ID Emoji, headings or urgency indicators Add-Ons (Optional Enhancements) You can extend this workflow with: Automatic email to VIP customers Loyalty point calculation Google Sheets export Integration with CRM platforms Send SMS notifications Separate VIP tiers into dedicated Slack channels Use Case Examples Notify support about high-value customers Track customers crossing spending milestones Identify loyal customers with 5+ repeat purchases Automatically sync VIP customers to CRM Trigger loyalty coupon generation Troubleshooting Guide | Issue | Possible Cause | Solution | |---------------------------|--------------------------------------------------|--------------------------------------------------------------| | No orders fetched | Wrong domain or API keys | Update WooCommerce credentials | | VIP not detected | Customer has low spend or low orders | Verify VIP rules in “Calculate VIP Tier” | | Airtable record not created | Incorrect table schema | Match Airtable fields with node mapping | | Slack alert missing | Wrong Slack channel ID or credentials | Re-check Slack authentication | | Guest users included | Missing customer_id filter | Ensure customer_id != 0 condition stays in place | Need Help? If you need assistance integrating this workflow, customizing VIP rules or adding new automations, our automation team at WeblineIndia is happy to help. You can also extend this system with loyalty engines, advanced analytics, multi-store support or any custom automation tailored for your eCommerce business.
by WeblineIndia
WooCommerce Seasonal Sales Planning & Monitor → SET Pattern Compare → Slack This workflow automatically aggregates sales data, calculates performance trends (Revenue & Orders) against previous months and years, identifies the top-selling SKU and sends a strictly formatted, professional summary report to Slack. This workflow runs on a schedule (e.g., daily or weekly) to generate a snapshot of your business performance. It fetches sales data from your database or e-commerce platform, calculates growth percentages (vs. Month, vs. Year), formats the data into a clean JSON structure and sends a structured report to Slack without unnecessary clutter or emojis. You receive: Automated comparison of Revenue & Order counts** Trend analysis (Percentage change & directional trend)** Identification of the Top Performing SKU** A clean, professional Slack alert for team visibility** Ideal for management teams needing a quick, data-driven pulse check on store performance without manually running reports. Quick Start – Implementation Steps Add your Database or API Credentials (e.g., Postgres, Shopify, WooCommerce) in the data fetching nodes. Connect your Slack account credentials and select the target channel. Ensure your data source provides current, vsMonth and vsYear metrics (or use the calculation nodes provided). Review the Slack Node to ensure the JSON block formatting matches your preference. Activate the workflow — automated reporting begins instantly. What It Does This workflow automates the generation of your business trend report: Trigger: Starts automatically based on a schedule (e.g., every morning at 8 AM). Fetch Data: Retrieves raw sales numbers for the current period, previous month and previous year. Process Trends: Calculates the percentage difference and determines the trend direction (Increase, Flat, Decrease). Identify Top SKU: Sorts product sales to find the highest-performing item of the period. Format Report: Constructs a strict JSON object containing: Revenue (Current, vs Month, vs Year) Orders (Current, vs Month, vs Year) Top SKU Name Send Slack Alert: Pushes a cleanly formatted message (using Block Kit or Markdown) to your team channel. This ensures your team focuses on the numbers that matter, with zero manual effort. Who’s It For This workflow is ideal for: E-commerce Store Owners Sales & Marketing Managers Data Analysts Operations Teams Executive leadership requiring daily snapshots Teams preferring data-heavy, emoji-free reports Requirements to Use This Workflow To run this workflow, you need: n8n instance** (cloud or self-hosted) Data Source** (PostgreSQL, MySQL, Shopify, WooCommerce or Google Sheets) Slack workspace** with API permissions (Webhook or Bot Token) Basic understanding of JSON structure for Slack Block Kit How It Works Scheduled Trigger – Initiates the workflow at a specific time. Get Sales Data – Queries your backend to get the raw numbers. Calculate Logic – Compares current numbers vs. historical data to generate percentages. Create Report Object – Maps the values into a standardized JSON format (e.g., revenue.current, orders.vsYear). Format Message – Converts the JSON object into a Slack-readable text block or UI block. Send Notification – Posts the final report to Slack. Setup Steps Import the provided n8n JSON file. Open the Data Fetch nodes and configure your database/API connection. Ensure your query returns the necessary fields (Revenue Orders, SKU). Verify the Format Data node is correctly mapping your variables to the JSON structure: {{ $json"revenue" }} {{ $json"orders"["percent"] }} Connect Slack API credentials and choose your channel. Run a test execution to verify the numbers appear correctly in Slack. Activate the workflow — done! How To Customize Nodes Customize Report Metrics Modify the Set/Calculation nodes: Add Average Order Value (AOV) Include Customer Acquisition Cost (CAC) Change the comparison period (e.g., vs Last Week instead of Month) Customize Slack Layout You can modify the JSON in the Slack node to: Use Block Kit for a table-like structure (columns for Revenue/Orders) Use Plain Text for a simple list view Add or remove bold formatting (bold) Add a "View Dashboard" button link Customize Data Source Replace the generic database node with: Shopify Node** (Get Orders) WooCommerce Node** (Get Sales Report) Stripe Node** (Get Balance Transactions) Google Sheets** (Read Row) Add-Ons (Optional Enhancements) You can extend this workflow to: Send reports to Email or Microsoft Teams in addition to Slack. Generate a PDF report using an HTML-to-PDF service. Save the daily snapshot into a "History" table in Airtable/Database. Add conditional alerts (e.g., @mention the CEO if Revenue drops by >20%). Integrate with OpenAI to write a qualitative analysis of the trends. Use Case Examples 1. Morning Standup Report Delivers key metrics to the team channel 15 minutes before the daily meeting. 2. Performance Monitoring Quickly identifies if a new marketing campaign is driving order volume. 3. Inventory Awareness Highlights the "Top SKU" so the warehouse team knows what is moving fast. 4. Executive Summaries Provides leadership with a noise-free, "just the numbers" view of the business. Troubleshooting Guide | Issue | Possible Cause | Solution | | :--- | :--- | :--- | | "N/A" in Trend | No historical data found | Ensure database has data for previous month/year | | Slack formatting broken | Invalid JSON syntax | Check quotes and brackets in Slack node | | Wrong Top SKU | Sorting logic incorrect | Verify the "Sort" node is ordering by Count DESC | | Authentication Error | Slack token expired | Re-connect Slack credentials in n8n | | Workflow not running | Schedule disabled | Toggle "Active" switch to ON | Need Help? If you need help customizing or extending this workflow — integrating specific ERPs, creating complex visual dashboards or scaling your data reporting, feel free to contact our n8n workflow development experts at WeblineIndia. We are happy to assist you with advanced automation solutions.
by kota
What this workflow does This workflow monitors your Gmail inbox for new, unreplied emails and automatically generates a professional reply draft using AI. Instead of sending the email automatically, the draft is sent to Slack so a human can review and decide whether to send it. This makes it ideal for teams that want to save time on email replies while keeping full control over outgoing communication. How it works Checks Gmail on a schedule for new, unreplied emails Limits the number of emails processed per run to avoid overload Extracts the email body and sends it to an AI model Generates a polite, professional reply draft Sends the draft to a Slack channel for review Adds a Gmail label to prevent duplicate processing Setup time ~10–15 minutes Who this is for Customer support teams Freelancers and consultants Small businesses handling frequent email inquiries Anyone who wants AI-assisted email replies with human approval Requirements Gmail account Slack workspace OpenAI (or compatible AI) credentials
by FlyCode
⚙️ Automated Stripe Failed Payment Recovery (with Postmark + AI Email Generator) Recover failed Stripe subscription payments with AI-personalized emails sent via Postmark. 📝 Template Description Recover failed subscription payments automatically with Stripe, Postmark, and AI. This workflow listens for Stripe invoice.payment_failed webhooks, checks that the event is related to an auto-charged subscription, and then automatically sends a personalized email (generated with AI) to the customer. The email is polite, branded, but also urgent — encouraging the customer to pay quickly and avoid service cancellation. 🛠️ How it works 📣 Webhook Listens for Stripe webhook events. Make sure to connect it in your Stripe dashboard (see setup below). 🧹 Filter (Guard) Ensures the event is indeed an invoice event and filters out unrelated webhooks. 💡 Code Node Extracts useful fields (firstName, lastName, customer email, amount, currency, invoice number, hosted invoice URL, subscription description, account name). ✅ If Node Verifies that: Event type = invoice.payment_failed Billing reason = subscription_cycle Collection method = charge_automatically 👉 This ensures only recurring subscription invoices with auto-payment are processed. 🤖 AI Agent + OpenAI Generates a ready-to-send email JSON (to, subject, HTML body) using the extracted Stripe data. ✍️ You can customize the prompt here to match your brand’s tone of voice and style. 🧩 Code Parser Parses the AI model’s JSON output into fields (to_email, email_subject, email_body). 📧 HTTP Request (Postmark) Sends the email using Postmark’s API. You’ll need your own Postmark Server Token, From address, and Message Stream. 🚀 Setup Instructions 1. Stripe Webhook Go to Stripe Dashboard → Developers → Webhooks. Click + Add endpoint. Use your n8n Webhook URL (from the Webhook node) as the endpoint. Select event type: invoice.payment_failed. Save and deploy. 👉 Example docs: Stripe: Listen to events with webhooks. 2. Disable Stripe’s Default Failed Payment Emails In Stripe, go to Billing → Settings → Customer emails → Manage failed payments. Turn off “Failed payment” emails under the Revenue Recovery section. This prevents customers from receiving duplicate or conflicting emails. 3. Postmark Setup Create a Postmark account. Add a Server and copy the Server API Token. In n8n, add Postmark credentials with this token. Configure: From = your verified sending email (must be verified in Postmark). MessageStream = typically "outbound" (or any custom stream you set up). Docs: Postmark API overview. 4. OpenAI Setup Add your OpenAI credentials in n8n. Attach them to the OpenAI Chat Model node. You can modify the prompt in the AI Agent node to fit your company’s style. ✨ Customization Tips Update the AI prompt with your brand’s tone of voice (friendly, formal, playful, etc.). Adjust the HTML email design inside the prompt (button colors, footer, etc.). Add extra guard conditions (e.g., only trigger if invoice_amount > 0). Change the sending service: replace Postmark with Gmail, SMTP, or another provider. 💬 Or talk to our Billing Recovery Experts at flycode.com for hands-on help. ✅ Outcome Whenever a customer’s subscription payment fails, this workflow: Detects it instantly via Stripe Generates a polite but urgent recovery email Sends it automatically via Postmark Result: Fewer cancellations, higher recovered revenue, and a smoother customer experience. 💸💌
by Cheng Siong Chin
How It Works Automates fraud risk detection for financial transactions by analyzing real-time webhook events through AI-powered scoring. Target audience: fintech companies, payment processors, and banking teams preventing fraud losses. Problem solved: manual fraud checks are reactive and slow; automated detection catches suspicious transactions instantly. Workflow receives transactions via webhook, configures processing parameters, runs OpenAI GPT-4 fraud analysis, calculates risk scores, branches on risk level, holds high-risk transactions, alerts fraud teams, logs incidents, and documents evidence for compliance investigations. Setup Steps Configure webhook endpoint for transaction ingestion. Set OpenAI API key and fraud detection prompts. Connect Google Sheets for incident logging. Enable email alerts to fraud team distribution list. Map risk thresholds (high/low). Prerequisites OpenAI API key, webhook-capable transaction source, Gmail for alerts, Google Sheets access, incident tracking database. Use Cases Payment processors detecting card fraud, fintech platforms catching account takeovers Customization Adjust risk thresholds and scoring logic. Add phone/SMS alerts for urgency. Benefits Detects fraud within seconds, reduces financial losses by up to 90%
by PollupAI
Who’s it for This workflow is built for B2B SaaS and CX teams that are drowning in unstructured customer feedback across tools. It’s ideal for Customer Success, Product and Support leaders who want a light “voice of customer engine” without rebuilding their stack: Gmail for interactions, Slack for conversations, Pipedrive for notes and Zendesk for tickets, plus Notion for follow-up tasks. How it works / What it does The workflow runs on a schedule or manual trigger and first sets the CSM’s email address. It then uses an AI “Data agent” to pull recent customer signals from multiple sources: Gmail messages, Slack messages, Pipedrive notes and Zendesk tickets. A “Signals agent” compresses each piece of feedback into a concise, neutral summary, which is then grouped by topic via a “Clustering agent”. Each cluster gets a label, count and examples. Finally, an “Action agent” routes clusters based on their label: Create Zendesk tickets for product/performance issues Post to a dedicated Slack channel for billing / contract topics Create Notion tasks for sales-related feedback Send targeted Gmail messages to the CSM for high-risk or engagement-related items How to set up Import the workflow into n8n. Connect credentials for Gmail, Slack, Pipedrive, Zendesk, Notion and OpenAI. Update the CSM email in the “Set CSM email” node. Adjust date filters, send-to addresses and Slack channel IDs as needed. Enable the schedule trigger for weekly or daily digests. Requirements Active accounts & credentials for: Gmail, Slack, Pipedrive, Zendesk and Notion OpenAI (or compatible) API key for the LLM node At least one Slack channel for posting feedback (e.g. #billing-feedback) How to customize the workflow Change the time window or filters (sender, channel, query) for each data source. Edit the clustering and routing prompts to match your own categories and teams. Add new destinations (e.g. Jira, HubSpot) by connecting more tools to the Action agent. Modify thresholds (e.g. minimum count) before a cluster triggers an action. Localize labels and email copy to your team’s language and tone.
by Ronnie Craig
Healthcare Email Autoresponder - Daily Outreach 📧 A production-ready n8n workflow for automated healthcare email marketing with AI-powered personalization. 🎯 What This Workflow Does This automated email system sends daily personalized healthcare-themed emails to your contact list. Perfect for: Healthcare professionals building patient relationships Medical practices maintaining client engagement Wellness coaches staying connected with clients Health educators sharing daily motivation ✨ Key Features AI-Powered Personalization**: Uses OpenAI to customize each email with recipient's name Smart Rate Limiting**: Random 2-5 minute delays between emails to avoid spam filters Batch Processing**: Limits to 10 emails per run for better deliverability Email Tracking**: Updates Google Sheets to prevent duplicates and track progress Professional Templates**: Healthcare-themed content with customizable signatures Automated Scheduling**: Runs daily at 1 PM (customizable) 🛠️ Setup Instructions Prerequisites n8n instance (cloud or self-hosted) Gmail account for sending emails Google Sheets for contact management OpenAI API key Step 1: Import the Workflow Download the Healthcare_Email_Autoresponder_Community_Template.json file In n8n, go to Templates and click "Import from File" Select the downloaded JSON file The workflow will be imported as inactive Step 2: Configure Credentials Gmail OAuth2 Setup: Click on the "Send Email" node Create new Gmail OAuth2 credential Follow n8n's Gmail setup guide Test the connection Google Sheets Setup: Click on the "Healthcare_Contact_List" node Create new Google Sheets OAuth2 credential Replace YOUR_GOOGLE_SHEET_ID_HERE with your actual sheet ID Ensure your sheet has these columns: First Name Email Emailed (for tracking timestamps) OpenAI API Setup: Click on the "OpenAI Chat Model" node Create new OpenAI credential Add your OpenAI API key Select your preferred model (gpt-4o-mini recommended for cost efficiency) Step 3: Customize Your Email Template Click on the "AI Email Generator" node Edit the system message to include your details: Replace [YOUR NAME HERE] with your actual name Replace [YOUR TITLE HERE] with your professional title Replace [YOUR COMPANY HERE] with your company name Replace [YOUR PHONE NUMBER] with your phone number Replace [YOUR EMAIL] with your email address Replace [YOUR WEBSITE] with your website URL Step 4: Prepare Your Contact List Create a Google Sheet with the following structure: | First Name | Email | Emailed | |------------|-------------------|------------| | John | john@example.com | | | Jane | jane@example.com | | Important Notes: Leave the "Emailed" column empty initially The workflow will populate timestamps as emails are sent Only contacts with empty "Emailed" cells will receive emails Step 5: Test and Activate Test the workflow with a few sample contacts Check that emails are being generated and sent correctly Verify that Google Sheets is being updated with timestamps Once satisfied, activate the workflow 📊 Google Sheets Structure Your contact sheet should include these columns: First Name** (required): Used for personalization Email** (required): Recipient email address Emailed** (required): Timestamp tracking (leave empty initially) Optional columns you can add: Last Name Company Phone Notes ⚙️ Customization Options Change Email Frequency Edit the "Daily Trigger (1 PM)" node Modify the schedule (hourly, daily, weekly) Set preferred time zones Adjust Batch Size Edit the "Limit to 10 Contacts" node Change maxItems value (recommend staying under 50) Modify Wait Times Edit the "Random Wait (2-5min)" node Adjust the random delay formula Current: {{ Math.floor(Math.random() * 4) + 2 }} (2-5 minutes) Update Email Content Edit the system message in "AI Email Generator" node Change the joke, signature, or entire email structure Add seasonal content or special promotions 🔧 Troubleshooting Common Issues: Emails not sending Verify Gmail credentials are active Check email quota limits Ensure recipient emails are valid Google Sheets not updating Confirm sheet ID is correct Check column names match exactly Verify Google Sheets credentials AI not generating content Validate OpenAI API key Check API quota and billing Test with different model if needed Rate limiting issues Increase wait times between emails Reduce batch size Check Gmail sending limits 📈 Best Practices Start Small: Begin with 5-10 contacts to test deliverability Monitor Metrics: Track open rates and responses Respect Privacy: Include unsubscribe options Stay Relevant: Update content regularly Follow Regulations: Comply with CAN-SPAM and GDPR 🤝 Contributing to the Community This template is designed to be: Easy to understand**: Clear node names and documentation Production ready**: Includes error handling and rate limiting Customizable**: Template placeholders for personalization Well documented**: Comprehensive setup instructions Feel free to adapt this workflow for your specific healthcare niche! 📄 License This workflow template is provided free to the n8n community under MIT License. 🆘 Support For questions or issues: Check the n8n community forum Review n8n's official documentation Test each node individually to isolate problems Made with ❤️ for the n8n community
by GYEONGJUN CHAE
Get top Binance Earn yields sent to Email This workflow automates the tracking of passive income opportunities on Binance by fetching real-time Flexible Earn APY rates, calculating potential returns, and delivering a daily summary to your inbox. Manually checking crypto savings rates is tedious. This template handles the complex authentication required by Binance (HMAC-SHA256 signing), filters through hundreds of assets to find the highest yields, and calculates exactly how much you would earn daily on a simulated capital amount. 👥 Who is this for? Crypto Investors** looking to maximize passive income on idle assets. DeFi/CeFi Analysts** monitoring market rate fluctuations. Hodlers** who want to ensure their assets are generating the best possible yield without daily manual checks. ⚙️ How it works Schedule Trigger: Initiates the workflow every 24 hours (customizable). Authentication Handler: Generates a timestamp and creates a secure HMAC-SHA256 signature required by the Binance API. Data Fetching: specific HTTP Request retrieves the full list of "Flexible Earn" products. Processing: The workflow splits the data, standardizes field names, and sorts all assets by Annual Percentage Rate (APR) in descending order. Analysis: It limits the list to the top 15 assets and calculates estimated daily earnings based on a $10,000 reference capital (customizable via code). Reporting: A formatted HTML email is sent via Gmail with the top opportunities. 🛠️ Setup Guide Binance API: Log in to Binance and create a Read-Only API Key. Configure Nodes: Open the Set Credentials 1 node: Paste your API_KEY and SECRET_KEY in each field. Email Setup: Open the Send Email node. Select or connect your Gmail credentials. Update the "To" address to your email. 🔌 Requirements An active Binance account. Binance API Key & Secret (Read-Only permissions are sufficient). A Gmail account (or you can swap the Gmail node for Outlook/Slack/Telegram). 🎨 How to customize Change Capital Calculation:** Open the "Filter & Analyze" Code node and change const capital = 10000; to your actual portfolio size to see real projected earnings. Filter Assets:** Add an If node after the "Split Out" node to only filter for specific assets (e.g., USDT, BTC, ETH) if you don't want to see altcoins. Change Frequency:** Open the "Daily Trigger" node to run this hourly or weekly.
by Florent
Restore workflows & credentials from FTP - Remote Backup Solution This n8n template provides a safe and intelligent restore solution for self-hosted n8n instances, allowing you to restore workflows and credentials from FTP remote backups. Perfect for disaster recovery or migrating between environments, this workflow automatically identifies your most recent FTP backup and provides a manual restore capability that intelligently excludes the current workflow to prevent conflicts. Works seamlessly with date-organized backup folders stored on any FTP/SFTP server. Good to know This workflow uses n8n's native import commands (n8n import:workflow and n8n import:credentials) Works with date-formatted backup folders (YYYY-MM-DD) stored on FTP servers The restore process intelligently excludes the current workflow to prevent overwriting itself Requires FTP/SFTP server access and proper Docker volume configuration All downloaded files are temporarily stored server-side before import Compatible with backups created by n8n's export commands and uploaded to FTP Supports selective restoration: restore only credentials, only workflows, or both How it works Restore Process (Manual) Manual trigger with configurable pinned data options (credentials: true/false, worflows: true/false) The Init node sets up all necessary paths, timestamps, and configuration variables using your environment settings The workflow connects to your FTP server and scans for available backup dates Automatically identifies the most recent backup folder (latest YYYY-MM-DD date) Creates temporary restore folders on your local server for downloaded files If restoring credentials: Lists all credential files from FTP backup folder Downloads credential files to temporary local folder Writes files to disk using "Read/Write Files from Disk" node Direct import using n8n's import command Credentials are imported with their encrypted format intact If restoring workflows: Lists all workflow JSON files from FTP backup folder Downloads workflow files to temporary local folder Filters out the credentials subfolder to prevent importing it as a workflow Writes workflow files to disk Intelligently excludes the current restore workflow to prevent conflicts Imports all other workflows using n8n's import command Optional email notifications provide detailed restore summaries with command outputs Temporary files remain on server for verification (manual cleanup recommended) How to use Prerequisites Existing n8n backups on FTP server in date-organized folder structure (format: /ftp-backup-folder/YYYY-MM-DD/) Workflow backups as JSON files in the date folder Credentials backups in subfolder: /ftp-backup-folder/YYYY-MM-DD/n8n-credentials/ FTP/SFTP access credentials configured in n8n For new environments: N8N_ENCRYPTION_KEY from source environment (see dedicated section below) Initial Setup Configure your environment variables: N8N_ADMIN_EMAIL: Your email for notifications (optional) FTP_BACKUP_FOLDER: FTP path where backups are stored (e.g., /n8n-backups) N8N_PROJECTS_DIR: Projects root directory (e.g., /files/n8n-projects-data) GENERIC_TIMEZONE: Your local timezone (e.g., Europe/Paris) N8N_ENCRYPTION_KEY: Required if restoring credentials to a new environment (see dedicated section below) Create your FTP credential in n8n: Add a new FTP/SFTP credential Configure host, port, username, and password/key Test the connection Update the Init node: (Optional) Configure your email here: const N8N_ADMIN_EMAIL = $env.N8N_ADMIN_EMAIL || 'youremail@world.com'; Set PROJECT_FOLDER_NAME to "Workflow-backups" (or your preferred name) Set FTP_BACKUP_FOLDER to match your FTP backup path (default: /n8n-backups) Set credentials to "n8n-credentials" (or your backup credentials folder name) Set FTPName to a descriptive name for your FTP server (used in notifications) Configure FTP credentials in nodes: Update the FTP credential in "List Credentials Folders" node Verify all FTP nodes use the same credential Test connection by executing "List Credentials Folders" node Optional: Configure SMTP for email notifications: Add SMTP credential in n8n Activate "SUCCESS email Credentials" and "SUCCESS email Workflows" nodes Or remove email nodes if not needed Performing a Restore Open the workflow and locate the "Start Restore" manual trigger node Edit the pinned data to choose what to restore: { "credentials": true, "worflows": true } credentials: true - Restore credentials from FTP worflows: true - Restore workflows from FTP (note: typo preserved from original) Set both to true to restore everything Update the node's notes to reflect your choice (for documentation) Click "Execute workflow" on the "Start Restore" node The workflow will: Connect to FTP and find the most recent backup Download selected files to temporary local folders Import credentials and/or workflows Send success email with detailed operation logs Check the console logs or email for detailed restore summary Important Notes The workflow automatically excludes itself during restore to prevent conflicts Credentials are restored with their encryption intact. If restoring to a new environment, you must configure the N8N_ENCRYPTION_KEY from the source environment (see dedicated section below) Existing workflows/credentials with the same names will be overwritten Temporary folders are created with date prefix (e.g., 2025-01-15-restore-credentials) Test in a non-production environment first if unsure Critical: N8N_ENCRYPTION_KEY Configuration Why this is critical: n8n generates an encryption key automatically on first launch and saves it in the ~/.n8n/config file. However, if this file is lost (for example, due to missing Docker volume persistence), n8n will generate a NEW key, making all previously encrypted credentials inaccessible. When you need to configure N8N_ENCRYPTION_KEY: Restoring to a new n8n instance When your data directory is not persisted between container recreations Migrating from one server to another As a best practice to ensure key persistence across updates How credentials encryption works: Credentials are encrypted with a specific key unique to each n8n instance This key is auto-generated on first launch and stored in /home/node/.n8n/config When you backup credentials, they remain encrypted but the key is NOT included If the key file is lost or a new key is generated, restored credentials cannot be decrypted Setting N8N_ENCRYPTION_KEY explicitly ensures the key remains consistent Solution: Retrieve and configure the encryption key Step 1: Get the key from your source environment Check if the key is defined in environment variables docker-compose exec n8n printenv N8N_ENCRYPTION_KEY If this command returns nothing, the key is auto-generated and stored in n8n's data volume: Enter the container docker-compose exec n8n sh Check configuration file cat /home/node/.n8n/config Exit container exit Step 2: Configure the key in your target environment Option A: Using .env file (recommended for security) Add to your .env file N8N_ENCRYPTION_KEY=your_retrieved_key_here Then reference it in docker-compose.yml: services: n8n: environment: N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY} Option B: Directly in docker-compose.yml (less secure) services: n8n: environment: N8N_ENCRYPTION_KEY=your_retrieved_key_here Step 3: Restart n8n docker-compose restart n8n Step 4: Now restore your credentials Only after configuring the encryption key, run the restore workflow with credentials: true. Best practice for future backups: Always save your N8N_ENCRYPTION_KEY in a secure location alongside your backups Consider storing it in a password manager or secure vault Document it in your disaster recovery procedures Requirements FTP Server FTP or SFTP server with existing n8n backups Read access to backup folder structure Network connectivity from n8n instance to FTP server Existing Backups on FTP Date-organized backup folders (YYYY-MM-DD format) Backup files created by n8n's export commands or compatible format Credentials in subfolder structure: YYYY-MM-DD/n8n-credentials/ Environment Self-hosted n8n instance (Docker recommended) Docker volumes mounted with write access to project folder Access to n8n CLI commands (n8n import:credentials and n8n import:workflow) Proper file system permissions for temporary folder creation Credentials FTP/SFTP credential configured in n8n Optional: SMTP credentials for email notifications Technical Notes FTP Connection and Download Process Uses n8n's built-in FTP node for all remote operations Supports both FTP and SFTP protocols Downloads files as binary data before writing to disk Temporary local storage required for import process Smart Workflow Exclusion During workflow restore, the current workflow's name is cleaned and matched against backup files This prevents the restore workflow from overwriting itself The exclusion logic handles special characters and spaces in workflow names A bash command removes the current workflow from the temporary restore folder before import Credentials Subfolder Filtering The "Filter out Credentials sub-folder" node checks for binary data presence Only items with binary data (actual files) proceed to disk write Prevents the credentials subfolder from being imported as a workflow Timezone Handling All timestamps use UTC for technical operations Display times use local timezone for user-friendly readability FTP backup folder scanning works with YYYY-MM-DD format regardless of timezone Security FTP connections should use SFTP or FTPS for encrypted transmission Credentials are imported in n8n's encrypted format (encryption preserved) Temporary files stored in project-specific folders Consider access controls for who can trigger restore operations No sensitive credential data is logged in console output Troubleshooting Common Issues FTP connection fails: Verify FTP credentials are correctly configured and server is accessible No backups found: Ensure the FTP_BACKUP_FOLDER path is correct and contains date-formatted folders (YYYY-MM-DD) Permission errors: Ensure Docker user has write access to N8N_PROJECTS_DIR for temporary folders Path not found: Verify all volume mounts in docker-compose.yml match your project folder location Import fails: Check that backup files are in valid n8n export format Download errors: Verify FTP path structure matches expected format (date folder / credentials subfolder / files) Workflow conflicts: The workflow automatically excludes itself, but ensure backup files are properly named Credentials not restored: Verify the FTP backup contains a n8n-credentials subfolder with credential files Credentials decrypt error: Ensure N8N_ENCRYPTION_KEY matches the source environment Error Handling "Find Last Backup" node has error output configured to catch FTP listing issues "Download Workflow Files" node continues on error to handle presence of credentials subfolder All critical nodes log detailed error information to console Email notifications include stdout and stderr from import commands Version Compatibility Tested with n8n version 1.113.3 Compatible with Docker-based n8n installations Requires n8n CLI access (available in official Docker images) Works with any FTP/SFTP server (Synology NAS, dedicated FTP servers, cloud FTP services) This workflow is designed for FTP/SFTP remote backup restoration. For local disk backups, see the companion workflow "n8n Restore from Disk". Works best with backups from: "Automated n8n Workflows & Credentials Backup to Local/Server Disk & FTP"
by Jitesh Dugar
Streamline your manufacturing quality control process with automated inspection tracking, compliance documentation, and real-time alerts. This workflow eliminates manual QC paperwork while ensuring ISO compliance and instant visibility into product quality. 🎯 Use Case Perfect for manufacturing facilities that need to: Document quality inspections for compliance audits Track product defects and non-conformities Generate certificates of compliance automatically Alert teams instantly when products fail inspection Maintain ISO 9001:2015 documentation requirements ✨ Key Features Automated Data Collection Accepts inspection data from web forms (Typeform) or Google Sheets Processes measurements against predefined specifications Calculates PASS/FAIL status automatically Smart Documentation Stores all inspection records in Google Drive Maintains searchable tracking spreadsheet Generates HTML compliance certificates Creates audit-ready documentation trail Real-Time Alerts Instant Slack notifications for failed inspections Detailed non-conformity reporting Escalation to quality managers Daily Analytics Automated daily quality summaries at 8 AM Pass rate calculations and trend analysis Product and inspector performance metrics 🔧 Setup Requirements Google Workspace - For Sheets and Drive storage Slack - For team notifications Jotform (optional) - For web-based inspection forms Email (SMTP) - For sending compliance certificates 📝 Customization Tips Modify specifications in the "Process Inspection Data" node to match your products Add custom fields for industry-specific requirements Adjust alert thresholds and notification channels Extend certificate templates with your company branding 🏭 Industries Ideal for: Electronics, Automotive Parts, Medical Devices, Consumer Goods, Food & Beverage, Aerospace Components 💡 Example Scenario A electronics manufacturer uses this workflow to inspect PCB assemblies. When an inspector submits measurements via Jotform, the workflow automatically checks if dimensions and weight meet specifications, stores the report, and generates a certificate. If any board fails, the quality manager receives an immediate Slack alert with details. Time Saved: ~2 hours daily on documentation and reporting Error Reduction: 90% fewer data entry mistakes Compliance: 100% audit-ready documentation