by Mychel Garzon
Stop managing onboarding as a checklist. Let automation handle the infrastructure so you can focus on the people. Manually provisioning a new hire's digital workspace is a recipe for human error and "Day 1" friction. This workflow orchestrates the entire Microsoft 365 onboarding stack in a single, parallel execution. It doesn't just run tasks; it verifies them, handles API failures gracefully, and reports a live status dashboard directly back to HR. How it works The workflow operates in four synchronized stages: Ingestion & Smart Parsing: The workflow triggers via Microsoft Agent 365 (Teams @mentions or Outlook emails). A JavaScript engine parses the unstructured HR request using flexible regex to extract the employee's name, role, department, and start date. True Parallel Execution: Once parsed, the data fans out into four independent branches: SharePoint: Creates a structured entry in the HR Onboarding master list. OneDrive: Provisions a personal root folder and automatically generates 5 templated sub-folders (Contracts, Equipment, Training, etc.). Teams: Creates a private onboarding channel for the employee's cohort. AI Communications: Leverages Claude 3.5 Sonnet to draft a warm, personalized welcome email based on the specific role and department, then sends it via Outlook. Fault-Tolerant Merging: The workflow uses a multi-stage Merge Cascade. Every node is configured with Continue on Fail logic. This means if one branch hits an API limit or error, it passes an error object forward rather than crashing the entire process. Verified Status Delivery: The final stage gathers all outputs, validates whether each task actually returned a success ID/URL, and generates a Microsoft Teams Adaptive Card. HR receives a clean summary with live links to provisioned assets and clear ❌ markers for any step that requires manual intervention. Key Benefits Zero-Hang Resilience:** Built with "Continue on Fail" logic. If SharePoint is down, the employee still gets their welcome email and OneDrive folder. Live Asset Verification:** The final report doesn't just "hope" things worked; it checks for live IDs and URLs from the Microsoft Graph API before showing a green checkmark. Parallel Performance:** Provisioning happens concurrently. The total wait time is only as long as the slowest single task (usually the AI generation). Global Error Handling:* Includes a dedicated *Error Trigger** flow that catches catastrophic system crashes and alerts IT with a full stack trace and the name of the failed node. Setup Credentials: Add credentials for Microsoft SharePoint, OneDrive, Teams, Outlook, and Anthropic (Claude). Environment Config: Open the Parse New Hire + Config node and replace the placeholder IDs with your specific SharePoint Site ID, List ID, and Teams Team ID. Entra ID Permissions: Ensure your registered Azure App has the necessary Graph API permissions (Sites.ReadWrite.All, Files.ReadWrite.All, Channel.Create, Mail.Send). Activate: Turn the workflow on and trigger it by @mentioning your Agent in Teams with new hire details. Who this is for IT Operations Teams** looking to standardize M365 provisioning without expensive third-party SaaS. HR Departments** that want immediate, transparent feedback on onboarding progress. Managed Service Providers (MSPs)** providing automated "Hiring-as-a-Service" for their clients. Required APIs & Credentials Microsoft 365 Stack:** SharePoint, OneDrive, Teams, Outlook. AI Provider:** Anthropic (Claude 3.5 Sonnet) or OpenAI (GPT-4o). How to customise it Add More Branches:** Easily add nodes for Jira, Slack, or HRIS updates by fanning out from the Parser and adding them to the Merge Cascade. Adjust Folder Templates:** Modify the Build SubFolder Paths code node to match your company's specific folder structure. Modify AI Tone:** Change the System Message in the AI node to match your company's unique brand voice. Custom Triggers:** Swap the Agent 365 trigger for a Webhook (to connect to Workday/HiBob) or a Typeform trigger.
by Placetel
Quick overview This workflow exposes a secured webhook for a Placetel AI Voice Agent and routes each request to Salesforce to either look up an existing contact by phone, create a callback task, open a case, update a contact via REST PATCH, or create a new lead, then returns a JSON response. How it works Receives a POST webhook request from Placetel AI and reads the vorgang field in the request body to determine the requested operation. For bestandskunde_pruefen, normalizes the phone number, searches Salesforce Contacts by Phone/MobilePhone, and returns whether a matching customer was found along with contact details. For rueckruf_erfassen, creates a high-priority Salesforce Task with the caller details and preferred callback time, then returns a success response with the task ID. For ticket_anlegen, creates a Salesforce Case with the provided subject, description, and priority, then returns a success response with the case ID. For kontakt_aktualisieren, builds a field map from only the provided values and sends a Salesforce REST API PATCH request to update the Contact, then returns a success response. For lead_anlegen, creates a Salesforce Lead using the supplied name/company/phone/email and returns a success response with the lead ID. If vorgang is not recognized, returns an HTTP 400 error with the list of allowed operations. Setup Add a Salesforce OAuth2 connection and select it for the Salesforce nodes and the REST API request that updates Contacts. Replace https://YOUR_INSTANCE.my.salesforce.com in the contact update request URL with your Salesforce My Domain. Configure the webhook header authentication credential (for example, a shared token header) and set the same header in Placetel AI. Copy the webhook URL from n8n and configure Placetel AI to call it via POST while sending the required vorgang and corresponding fields in the JSON body.
by Cheng Siong Chin
How It Works Automates financial aggregation, validation, and intelligent tax assessment. Integrates revenue, expenses, and invoices via scheduled connectors, merges data into unified records, and applies AI-driven analysis for anomaly detection and tax calculations. The system evaluates tax liability against configurable thresholds, intelligently routes filings to government portals or tax agents based on jurisdiction rules, and triggers automated email notifications for compliance deadlines and payment reminders. Designed for accountants, small business owners, and finance teams managing quarterly tax obligations while minimizing manual errors and compliance risks across multiple entities. Setup Steps Configure OpenAI, Gmail, and Google Sheets credentials Connect revenue and expense data sources Define tax thresholds and jurisdiction-specific rules in workflow nodes Map output fields to government or tax agent systems Create email templates for notifications Test the workflow with sample financial data before enabling Prerequisites OpenAI API key, Gmail account, Google Sheets, accounting software or data source connectivity Use Cases Quarterly tax filing automation, multi-client accountant workflows, enterprise compliance monitoring Customization Adjust tax thresholds by jurisdiction, integrate additional data sources Benefits Significant reduction in calculation errors, faster filing timelines, automated deadline alerts
by vinci-king-01
How it works This workflow automatically analyzes website visitors in real-time, enriches their data with company intelligence, and provides lead scoring and sales alerts. Key Steps Webhook Trigger - Receives visitor data from your website tracking system. AI-Powered Company Intelligence - Uses ScrapeGraphAI to extract comprehensive company information from visitor domains. Visitor Enrichment - Combines visitor behavior data with company intelligence to create detailed visitor profiles. Lead Scoring - Automatically scores leads based on company size, industry, engagement, and intent signals. CRM Integration - Updates your CRM with enriched visitor data and lead scores. Sales Alerts - Sends real-time notifications to your sales team for high-priority leads. Set up steps Setup time: 10-15 minutes Configure ScrapeGraphAI credentials - Add your ScrapeGraphAI API key for company intelligence gathering. Set up HubSpot connection - Connect your HubSpot CRM to automatically update contact records. Configure Slack integration - Set up your Slack workspace and specify the sales alert channel. Customize lead scoring criteria - Adjust the scoring algorithm to match your target customer profile. Set up website tracking - Configure your website to send visitor data to the webhook endpoint. Test the workflow - Verify all integrations are working correctly with a test visitor. Key Features Real-time visitor analysis** with company intelligence enrichment Automated lead scoring** based on multiple factors (company size, industry, engagement) Intent signal detection** (pricing interest, demo requests, contact intent) Priority-based sales alerts** with recommended actions CRM integration** for seamless lead management Deal size estimation** based on company characteristics
by WeblineIndia
KYC Risk Profiling Form with n8n, OpenAI, Google Sheets & Slack This workflow captures customer KYC details through an n8n Form, validates the submitted input, sends the cleaned data to OpenAI for automated risk profiling, formats the AI response and routes the result based on whether the applicant is classified as High Risk or not. High-risk cases are saved separately and trigger a Slack alert, while lower-risk cases are simply logged into Google Sheets for recordkeeping and review. Quick Implementation Steps Import the workflow into n8n. Configure your OpenAI credentials. Connect your Google Sheets credentials. Connect your Slack credentials. Open the KYC Form Submission node and publish the form. Make sure your form collects these exact fields: Income Geography Occupation Configure the two Google Sheets nodes for: High-risk records Normal-risk records Set the Slack channel for high-risk alerts. Test the form using sample submissions. Activate the workflow once everything is verified. What It Does The KYC Risk Profiling Form workflow automates the first layer of customer risk assessment by collecting basic applicant information and using AI to classify the risk level. Instead of manually reviewing every entry, the workflow accepts a form submission, validates the data and sends it to an AI model that returns a structured risk decision. Once the AI analysis is returned, the workflow extracts the important risk fields, formats them into a clean structure and checks whether the applicant should be considered High Risk. If the risk category is high, the record is routed into a separate review path where it is saved and also sent to Slack as an alert. If the customer is Low or Medium risk, the record is saved without triggering an alert. This makes the workflow useful as a lightweight KYC intake and triage layer, especially for teams that want faster screening without building a full compliance platform. Who It's For This workflow is useful for businesses and teams that need a simple way to screen customer or applicant risk during intake. Ideal users include: Compliance teams KYC / AML operations teams Risk analysts Fintech startups Financial service providers Customer onboarding teams Internal operations teams Workflow automation teams building compliance intake systems It is especially helpful for teams that want to automate basic risk profiling before manual review. Requirements to Use This Workflow Before using this workflow, make sure you have the following: Required Platforms & Accounts n8n account OpenAI API access** Google Sheets** Slack** Required n8n Credentials You will need to configure: OpenAI credentials** Google Sheets OAuth2 credentials** Slack credentials** Required Form Fields This workflow expects the form to collect the following exact field names: Income Geography Occupation These names are important because they are used directly inside the validation and AI nodes. Required Google Sheets Structure The JSON shows two separate Google Sheets append nodes: 1) High Risk Sheet Used by: Save High Risk Record Recommended columns based on workflow output: riskCategory income geography redFlags 2) Normal Risk Sheet Used by: Save Normal Risk Record Recommended columns based on workflow output: riskCategory redFlags income geography occupation Required Slack Setup You must connect a Slack workspace and choose a valid destination channel in: Send High Risk Alert How It Works & Setup Guide Step 1 — Import the Workflow into n8n Import the provided JSON file into your n8n workspace. After import, the workflow will appear as: KYC-RISK-FORM Step 2 — Understand the Workflow Flow This workflow follows the structure below: KYC Form Submission → Validate KYC Input → Ai Assign The Risk Category → Process AI Response → Format Final Data → Check High Risk ├── High Risk → Format the Data For Sheet → Save High Risk Record → Send High Risk Alert └── Low / Medium Risk → Save Normal Risk Record This structure creates a simple but useful KYC screening pipeline. Step 3 — Configure the KYC Form Node: KYC Form Submission This is the entry point of the workflow. It creates a user-facing form inside n8n. Form title in the workflow: KYC_FORM Fields configured in the form 1) Income Type: number Required: true 2) Geography Type: text Required: true 3) Occupation Type: text Required: true What to do Open the form node Publish the form Share the form link with internal users or customers Keep the field names unchanged unless you also update the downstream nodes This form acts as the customer KYC intake point. Step 4 — Validate the Submitted Input Node: Validate KYC Input This Code node validates the incoming form data before it is sent to AI. Validation logic in this node The workflow checks: Income must be greater than 0 Geography must not be empty Occupation must not be empty It also performs these actions Converts Income into a numeric value Trims extra spaces from text inputs Converts Geography to uppercase Adds: isValid validationErrors createdAt Output fields created Income Geography Occupation isValid validationErrors createdAt Important implementation note Although this node generates isValid and validationErrors, the current JSON does not include an IF node to stop invalid submissions before they reach the AI step. That means invalid or incomplete records may still continue through the workflow unless you manually extend it later. So while validation is present, it is currently used as a data preparation step, not as a hard blocking gate. Step 5 — Configure OpenAI Risk Analysis Node: Ai Assign The Risk Category This node sends the validated KYC data to OpenAI (gpt-4o-mini) for automated risk classification. What the AI is instructed to do The prompt asks the model to: Assign a risk category: Low Medium High List any red flags found Return the original applicant details exactly as received Applicant fields sent to AI Income Geography Occupation Risk rules defined in the workflow The AI is told to classify as High Risk if: the geography is a sanctioned country the geography is a FATF blacklisted country the geography is a high-risk jurisdiction the occupation is in a high-risk sector such as: cryptocurrency gambling arms trade shell companies politically exposed roles The AI is told to classify as Medium Risk if: one moderate concern exists The AI is told to classify as Low Risk if: no major red flags exist Expected AI output format The prompt explicitly requests valid JSON in this structure: { "riskCategory": "High", "redFlags": ["flag1", "flag2"], "income": "5000", "geography": "INDIA", "occupation": "Software Engineer" } This structured format is important because the next node depends on it. Step 6 — Parse and Clean the AI Output Node: Process AI Response This Code node processes the raw AI response and converts it into clean workflow fields. What this node does Reads the AI output text Removes markdown code fences if present Parses the returned JSON Extracts important fields Creates fallback values if parsing fails Fields extracted riskCategory redFlags redFlagText income geography occupation Error handling included If the AI output cannot be parsed correctly, the node returns: riskCategory = Unknown empty redFlags fallback text values an error field with the parsing error message This makes the workflow more stable when handling imperfect AI responses. Step 7 — Format the Final Structured Record Node: Format Final Data This Set node standardizes the processed AI result into a cleaner output structure. Fields included riskCategory redFlags income geography occupation This step prepares the record for final risk routing. Step 8 — Route Based on High Risk Status Node: Check High Risk This IF node checks whether: riskCategory == High Routing behavior If riskCategory = High The record goes to the high-risk path: Format the Data For Sheet Save High Risk Record Send High Risk Alert If riskCategory is not High The record goes to the normal-risk path: Save Normal Risk Record This is the main decision point in the workflow. Step 9 — Prepare the High-Risk Sheet Record Node: Format the Data For Sheet This Set node formats high-risk records before saving them. Fields included in this path riskCategory income geography redFlags Important note This high-risk output currently does not include occupation in this specific formatting node, even though it exists earlier in the workflow. That means if you want occupation saved into the high-risk sheet, you would need to add it manually later. Step 10 — Save High-Risk Cases Node: Save High Risk Record This Google Sheets node appends high-risk KYC records to a dedicated sheet. What to do Connect your Google Sheets OAuth2 account Select the spreadsheet for high-risk KYC review Select the correct sheet tab Map the sheet columns to the workflow output Recommended columns based on the workflow riskCategory income geography redFlags This sheet acts as your high-risk review register. Step 11 — Send Slack Alert for High-Risk Cases Node: Send High Risk Alert This Slack node sends a real-time alert when a high-risk applicant is detected. What to do Connect your Slack account Select the Slack channel where alerts should be sent Slack alert content in the workflow The alert includes: Income Geography Occupation Risk Category Red Flags Why this is useful This helps compliance or operations teams react quickly instead of waiting to review a spreadsheet later. Step 12 — Save Low and Medium Risk Cases Node: Save Normal Risk Record This Google Sheets node stores non-high-risk records. What to do Connect your Google Sheets OAuth2 account Select the spreadsheet for lower-risk KYC records Select the correct sheet tab Recommended columns based on workflow output riskCategory redFlags income geography occupation This gives you a separate audit trail for lower-risk applicants. Step 13 — Test the Workflow Before Going Live Before activating the workflow, run a few test submissions through the form. Recommended test scenarios Test 1 — Low Risk Example Example: Income: 5000 Geography: India Occupation: Software Engineer Expected result: record is saved to normal-risk sheet no Slack alert is sent Test 2 — Medium Risk Example Example: Income: 3000 Geography: Some higher-risk region Occupation: Freelancer Expected result: record is saved to normal-risk sheet no Slack alert is sent Test 3 — High Risk Example Example: Income: 15000 Geography: High-risk jurisdiction Occupation: Crypto Trader Expected result: record is saved to high-risk sheet Slack alert is sent Test 4 — Invalid Submission Example: Income: 0 Geography: blank Occupation: blank Expected result: validation fields should show issues AI may still run in the current workflow unless you add a blocking validation step Once these tests work correctly, the workflow is ready to activate. How To Customize Nodes This workflow is flexible and can be extended depending on your onboarding or compliance process. 1) Add More KYC Form Fields Node: KYC Form Submission You can expand the form to include fields such as: full name email date of birth nationality source of funds business type customer type politically exposed person status If you add fields, remember to update: validation logic AI prompt output formatting Google Sheets mappings 2) Make Validation Strict Node: Validate KYC Input Right now, validation results are created but not used to stop the workflow. You can improve this by adding an IF node after validation to block records where: isValid == false This would let you: stop bad form submissions return cleaner downstream results prevent unnecessary AI usage 3) Customize Risk Rules Node: Ai Assign The Risk Category You can tailor the AI prompt to match your internal compliance rules. Example customizations define your own high-risk geographies add more restricted occupations introduce onboarding thresholds include business-specific risk rules add customer segment rules This is one of the most important places to adapt the workflow to your business. 4) Save More AI Output Nodes: Process AI Response Format Final Data You can extend the structured AI output to include more details such as: risk score explanation summary review recommendation escalation notes due diligence level This is useful if you want more than just a category label. 5) Improve the Slack Alert Node: Send High Risk Alert You can customize the Slack message to include: internal case ID submission timestamp review owner priority level direct review link This helps operational teams respond faster. 6) Unify All Records into One Master Sheet Nodes: Save High Risk Record Save Normal Risk Record Instead of storing high-risk and normal-risk cases separately, you can route both into one master Google Sheet and add a field such as: riskCategory This is useful if you prefer centralized reporting. Add-ons This workflow can be extended into a more advanced KYC onboarding automation system. 1) Email Notification for High-Risk Cases Send an email alert in addition to Slack when a high-risk record is detected. 2) Automatic Case Assignment Assign high-risk cases to a specific compliance reviewer. 3) Manual Review Queue Create a review status field such as: Pending Review Under Investigation Approved Escalated 4) Risk Scoring Dashboard Track the volume of: low-risk submissions medium-risk submissions high-risk submissions common red flags 5) CRM or Database Integration Push the final KYC decision into your CRM, database or onboarding system. 6) Enhanced Sanctions / Jurisdiction Screening Add a dedicated compliance screening step before or after AI analysis. Use Case Examples This workflow can support many different customer onboarding and risk intake scenarios. Below are some of the main ones. 1) Basic KYC Intake Screening Use the form to collect customer information and automatically classify onboarding risk before manual review. 2) Fintech Customer Onboarding Route higher-risk financial users into a flagged review process while logging normal applicants automatically. 3) Internal Risk Triage for Sales or Partnerships Screen leads, vendors or applicants before moving them deeper into your onboarding pipeline. 4) Compliance Team Pre-Screening Help compliance teams reduce repetitive manual work by automatically identifying obviously high-risk submissions. 5) Operational Review Queue Creation Automatically create a structured list of high-risk cases that require follow-up or escalation. 6) Lightweight AI-Assisted KYC Automation Use AI as an early-stage risk assistant before implementing a more advanced compliance stack. There can be many more use cases depending on your industry, customer type, onboarding rules and compliance process. Troubleshooting Guide | Issue | Possible Cause | Solution | |---|---|---| | Form submits but no data is processed | Workflow is inactive or form trigger is not published | Activate the workflow and confirm the form is live | | AI output fails to parse | OpenAI returned text outside the expected JSON structure | Review the AI prompt and confirm the model is returning valid JSON | | High-risk records are not reaching Slack | Slack node is not configured or connected correctly | Reconnect Slack credentials and verify the selected channel | | High-risk records are not being saved | Google Sheets high-risk node is not configured | Set the spreadsheet and sheet tab in Save High Risk Record | | Low / medium records are not being saved | Google Sheets normal-risk node is incomplete | Configure Save Normal Risk Record with the correct destination sheet | | Risk category is always Unknown | AI output could not be parsed properly | Inspect the Process AI Response node and test the AI response format | | Invalid form data still moves forward | Validation node does not block the workflow | Add an IF node after Validate KYC Input if you want strict validation | | Geography looks different than expected | Validation node converts geography to uppercase | This is expected behavior in the current workflow | | Occupation is missing in the high-risk sheet | Format the Data For Sheet does not include occupation | Add occupation to that Set node if needed | | Slack alert shows incomplete values | Some fields were not preserved in the high-risk path | Check the data passed into the Slack node and update the mapping if necessary | Need Help? If you want help setting up, customizing or extending this workflow, our n8n workflow automation developers at WeblineIndia / Global can help you implement it faster and more reliably. We can help you with: n8n workflow setup and deployment AI-powered KYC intake automation Google Sheets and Slack integrations Compliance workflow extensions Form optimization and validation logic Onboarding automation Risk scoring enhancements Custom review and escalation pipelines If you want a customized version of this workflow or need similar automation for onboarding, compliance or risk operations, contact WeblineIndia for workflow setup and development support.
by Mark Cifral
WhatsApp AI Chatbot with Evolution API + Notion CRM What this template does This workflow turns your WhatsApp Business number into a 24/7 AI-powered customer assistant — without any third-party chatbot platform. It receives incoming WhatsApp messages via Evolution API, understands the customer's intent, generates a conversational response using Claude AI, and sends it back — all within seconds. When the conversation requires human attention, the bot alerts you on Telegram and automatically pauses itself for that contact in your Notion CRM so you can take over seamlessly. This is a production-ready workflow built to handle real inbound traffic. It has been tested with cold outreach leads, inbound inquiries, and voice messages. Key features Multi-modal input Handles both text messages and voice notes. Voice messages are transcribed via OpenAI Whisper before being processed by the AI. Smart auto-reply filter A Sentiment Analysis node detects automatic replies (out-of-office bots, delivery confirmations) and silently discards them before the AI agent triggers — preventing the bot from responding to other bots. Notion CRM integration Every incoming message is matched against your Notion database by phone number. Known leads get their status updated. New contacts are created automatically. The bot also checks a WA ChatBot Status field (Active/Paused) before responding — so you can pause the bot per contact directly from Notion. Outreach-aware responses If you use WhatsApp for cold outreach (paired with an outreach workflow), this bot reads the lead's personalization_note and pain_point from Notion and uses them to personalize replies. The AI knows who contacted whom first and adjusts its tone accordingly. Human-in-the-loop escalation When the AI detects buying intent, frustration, or a request it cannot handle, it: Sends a full-context alert to your Telegram Sets WA ChatBot Status = Paused in Notion for that lead Stops auto-replying until you manually re-activate it Dynamic knowledge base (Google Sheets) Business info, products/services, and FAQs live in a Google Sheet with 3 tabs. Update your sheet — the bot adapts instantly. No redeployment needed. Format Cleaner AI responses are automatically stripped of markdown before sending (WhatsApp renders bold as literal asterisks — this node fixes that). Conversation memory Uses n8n's buffer window memory with phone number as session key. Remembers the last 10 message exchanges per contact. How it works WhatsApp Message ↓ Evolution API Webhook ↓ Detect Message Type (normalize payload) ↓ Skip Event? (groups, fromMe, empty text) → skip silently ↓ Is Voice? → Prepare Audio → Transcribe (Whisper) ↓ Sentiment Analysis → Automatic Reply? → skip silently ↓ Check Leads (Notion DB lookup by phone) ↓ Normalize & Match → is_known_lead, bot_status, outreach context ↓ Bot Status = Paused? → skip silently ↓ Information Extractor (intent, reply_sentiment, urgency, needs_human) ↓ Read Business Info + Products + FAQs (Google Sheets) ↓ Build Context (combines KB + lead context) ↓ Wait 10s (avoids responding before user finishes typing) ↓ Generate Response (Claude Haiku, conversation memory) ↓ Format Cleaner (strip markdown) ↓ Send WhatsApp Reply (Evolution API) ↓ Format for Log → Log Conversation (Google Sheets) ↓ Alert Owner? → IF needs_human: → Telegram alert → Pause ChatBot (Notion update: WA ChatBot Status = Paused) ↓ Phone Match (known lead?) → Update Lead Status (Last Contact + WA Status) → Create New Lead (if new contact) ↓ Respond 200 OK What you need Infrastructure Evolution API** (self-hosted or cloud) — WhatsApp messaging layer n8n** (self-hosted or cloud) — this workflow runs here Credentials (configure in n8n) | Credential | Used for | |---|---| | Anthropic API | Information Extractor + Response Generation (Claude Haiku) | | OpenAI API | Voice transcription (Whisper) — optional if no audio support needed | | Google Sheets OAuth2 | Knowledge base reads + conversation log | | Notion API | Lead lookup, BotStatus check, lead update/create | | Telegram Bot | Human-in-the-loop alerts | Google Sheets — 4 tabs required Copy the template sheet and fill in your data: Get your FREE Sheets Template Business_Info (columns: business_info, value) Rows: business_name, business_description, website, email, hours, coverage_area, booking_url, response_tone Products (columns: product_id, name, description, category, available, highlight) FAQs (columns: question, answer, category) Conversation_Log (columns: timestamp, channel, user_id, username, user_name, message_type, message, response, intent, needs_human) Notion Database — required fields | Field | Type | |---|---| | Name (title) | Title | | Phone | Phone number | | Status | Status | | WA ChatBot Status | Select (options: Active, Paused) | | WA Status | Select (options: Positive Reply, Negative Reply, Neutral Reply) | | Lead Source | Select | | Last Contact | Date | | Personalization Note | Rich text | | Pain Point | Rich text | > 💡 A ready-to-use Notion CRM template pre-configured for this workflow is available separately. Setup steps Import this workflow into your n8n instance Configure credentials for all 5 services listed above Create your Google Sheet with the 4 required tabs and fill in your business data Set up your Notion database with the required fields (or purchase the pre-built Notion template Get Notion Template ) Update the Evolution API URL in the Send WhatsApp Reply node: https://YOUR-EVOLUTION-DOMAIN/message/sendText/YOUR-INSTANCE-NAME Add your Evolution API key to the Send WhatsApp Reply node header Configure your Telegram Chat ID in the Alert Owner node (send a message to @userinfobot to get your ID) Register the webhook in Evolution Manager: URL = https://YOUR-N8N-URL/webhook/evo-inbound, events: MESSAGES_UPSERT + CONNECTION_UPDATE, Base64: ON, webhookByEvents: OFF Activate the workflow Test by sending a WhatsApp message to your number Customizing the AI The system prompt in the Generate Response node is where you define your bot's personality and conversation rules. It already includes: Role and business context (pulled dynamically from your Sheets) Formatting rules (no markdown, WhatsApp-friendly style) One-idea-per-message conversation discipline Outreach context awareness Pricing and booking redirect logic Negative sentiment handling (polite close, no insistence) Handoff escalation triggers Edit it to match your industry, tone, and specific business logic. Compatible with outreach workflows This chatbot is designed to work as the inbound layer of a complete WhatsApp automation stack: Outreach Workflow** — sends cold outreach messages and writes lead data to Notion Follow-up Workflow** — sends follow-up sequences to non-responders This Chatbot** — handles inbound replies intelligently using the outreach context from Notion When all three are connected, your entire WhatsApp funnel runs on autopilot. Notes The Check Leads node fetches all leads with a phone number from Notion and matches in JavaScript. This works well for databases up to ~1,000 leads. For larger CRMs, consider filtering by phone number directly in the Notion query. Voice message transcription requires OpenAI Whisper. If you don't need audio support, you can disable the Is Voice? branch entirely. The 10-second Wait node before response generation reduces the chance of sending a reply while the user is still typing. Adjust or remove it based on your needs. About the creator Mark Cifral — System Sales Engineer turned automation founder. I build production-grade n8n workflows for B2B lead enrichment, WhatsApp AI agents, and proposal automation. Founder @ Cifral Solutions (cifral.io).
by Dr. Firas
💥 Scrape leads from businesses with Claude and Apify to Gmail outreach 📄 Documentation: Notion Guide Automatically scrape business leads with Claude Co-Work and Apify, send the data to n8n through a webhook, store it in Google Sheets, generate personalized outreach emails, and send them automatically with Gmail. This workflow combines lead scraping, lead qualification, data organization, AI copywriting, and cold outreach into one automated pipeline. Who is this for? This template is ideal for: Agencies offering SEO, automation, web design, or lead generation services Freelancers looking to automate prospecting Sales teams doing cold outreach Entrepreneurs searching for local business leads Anyone using AI to scale outbound email campaigns What problem is this workflow solving? / Use case Manual prospecting is slow and repetitive. Most businesses waste hours every week: Searching for leads manually Copying business data into spreadsheets Writing cold emails one by one Sending outreach emails manually This workflow solves that by automating the full process from lead discovery to email delivery. Example use case: Use Claude Co-Work with Apify to find restaurants in Paris Scrape lead data such as business name, address, website, phone number, email, and booking status Automatically send the collected leads to n8n through a webhook Save lead data in Google Sheets Generate a personalized outreach email for each valid lead Send the email automatically with Gmail What this workflow does Claude Co-Work uses Apify to scrape business leads and collect their data Claude Co-Work automatically triggers the n8n webhook with the scraped lead data n8n splits each business lead into separate items n8n appends lead data to Google Sheets n8n checks whether the lead has an email address n8n uses Claude to generate a personalized outreach email n8n extracts the email subject and body automatically n8n sends the email via Gmail Expected outcome: Automated lead scraping with Claude Co-Work and Apify Organized lead database in Google Sheets Personalized AI-generated outreach emails Automated email sending Faster prospecting with less manual work Setup Before using this template, create and connect the following accounts: Google Sheets account Gmail account Anthropic / Claude account required to run Claude Co-Work Apify account required for scraping lead data Then configure: 1. Claude Co-Work + Apify Set up Claude Co-Work so it can use Apify to scrape lead data before n8n starts. Claude Co-Work should collect fields such as: collection_date business_category region_state city_name street_address business_name business_description website_url phone_number customer_rating email_address contact_status 2. Webhook Configure Claude Co-Work to send the scraped data to the n8n Webhook node. The webhook receives the lead payload and starts the workflow automatically. 3. Google Sheets Replace: YOUR_ID_GOOLE_SHEETS YOUR_ID-sheet_GOOLE_SHEETS With your own Google Sheet ID and Sheet tab ID. 4. Claude Prompt Customize the outreach message inside the Outreach email copywriter node. How to customize this workflow to your needs Change target industry Replace restaurants with: Dentists Lawyers Real estate agencies Coaches Ecommerce stores Local businesses Change outreach offer Instead of SEO or booking systems, promote: Web design AI chatbots Lead generation Marketing automation CRM setup Ads management Notes Claude Co-Work and Apify handle the lead scraping step before n8n starts The webhook is triggered automatically after the lead data is collected Phone numbers are automatically cleaned before saving to Google Sheets Only leads with email addresses continue to outreach Gmail errors continue without stopping the workflow Built for users who want to automate scraping, prospecting, and outbound sales with AI. 🎥 Watch This Tutorial 👋 Need help or want to customize this? 📩 Contact: LinkedIn 📺 YouTube: @DRFIRASS 🚀 Workshops: n8n courses (in French) Need help customizing? Contact me for consulting and support : Linkedin / Youtube / 🚀 n8n courses (in French)
by shae
How it works This Lead Capture & Auto-Qualification workflow transforms raw leads into qualified prospects through intelligent automation. Here's the high-level flow: Lead Intake → Data Validation → Enrichment → Scoring → Smart Routing → CRM Integration & Notifications The system captures leads from any source, validates the data, enriches it with company intelligence, scores based on qualification criteria, and automatically routes high-value prospects to sales while nurturing lower-priority leads. Set up steps Time to set up: Approximately 30-45 minutes Prerequisites: Active accounts with HubSpot, Clearbit, Apollo, and Slack Step 1: Import Workflow (2 minutes) Copy the workflow JSON and import into your n8n instance The workflow will appear with all nodes and sticky note documentation Step 2: Configure Environment Variables (5 minutes) Set these in your n8n environment: APOLLO_API_URL SLACK_SALES_CHANNEL_ID SLACK_MARKETING_CHANNEL_ID CRM_ASSIGNMENT_URL Step 3: Set Up API Credentials (15 minutes) Create credential connections for: Clearbit API (enrichment) Apollo API (HTTP Header Auth) HubSpot API (CRM integration) Slack API (notifications) Step 4: Customize Scoring Logic (10 minutes) Review the qualification criteria in the Code node Adjust scoring weights based on your ideal customer profile Modify industry targeting and company size thresholds Step 5: Test & Activate (8 minutes) Send test webhook requests to validate the flow Verify CRM contact creation and Slack notifications Activate the workflow for live lead processing
by Intuz
This n8n template from Intuz provides a complete solution to automate your entire invoicing process. It intelligently syncs confirmed sales orders from your Airtable base to QuickBooks, automatically creating new customers if they don't exist before generating a perfectly matched invoice. It then logs all invoice details back into Airtable, creating a flawless, end-to-end financial workflow. Use Cases 1. Accounting & Finance Teams: Automatically generate QuickBooks invoices from new orders confirmed in Airtable. Keep all invoices and customer details synced across systems in real time. 2. Sales & Operations Teams: Track order status and billing progress directly from Airtable without switching platforms. Ensure every confirmed sale automatically triggers an invoice in QuickBooks. 3. Business Owners / Admins: Eliminate double-entry between Airtable and QuickBooks. Maintain accurate, audit-ready financial records with minimal effort. How it works 1. Trigger from Airtable: The workflow starts instantly when a sales order is ready to be invoiced in your Airtable base (triggered via a webhook). 2. Check for Customer in QuickBooks: It searches your QuickBooks account to see if the customer from the sales order already exists. 3. Create New Customer (If Needed): If the customer is not found, it automatically creates a new customer record in QuickBooks using the details from your Airtable Customers table. 4. Create QuickBooks Invoice: Using the correct customer record (either existing or newly created), it gathers all order line items from Airtable and generates a detailed invoice in QuickBooks. 5. Log Invoice Back to Airtable: After the invoice is successfully created, the workflow updates your Airtable base by adding a new record to your Invoices & Payments table and updating the original Confirmed Orders record with the new QuickBooks Invoice ID, marking it as synced. Key Requirements to Use This Template 1. n8n Instance: An active n8n account (Cloud or self-hosted). 2. Airtable Base: An Airtable base on a "Pro" plan or higher with tables for Confirmed Orders, Customers, Order Lines, Product & Service, and Invoices & Payments. Field names must match those in the setup guide. 3. QuickBooks Online Account: An active QuickBooks Online account with API access. Step-by-Step Setup Instructions Step 1: Import and Configure the n8n Workflow Import Workflow:** In n8n, import the Client-Quickbook-Invoices-via-AirTable.json file. Get Webhook URL:** Click on the first node, "Webhook". Copy the "Test URL". Keep this n8n tab open. Configure Airtable Nodes:** There are six Airtable nodes. For each one, connect your Airtable credentials and select the correct Base and Table. Configure QuickBooks Nodes:** There are four QuickBooks-related nodes. For each one, connect your QuickBooks Online credentials. CRITICAL:** Click on the "Create Invoice URL" (HTTP Request) node. You must edit the URL and replace the placeholder number (9341455145770046) with your own QuickBooks Company ID. (Find this in your QuickBooks account settings under "Billing & Subscription"). Save and Activate**: Click "Save", then toggle the workflow to "Active". After activating, copy the new "Production URL" from the Webhook node. Customization Guide You can adapt this template for various workflows by tweaking a few nodes: Use a different Airtable Base:** Update the Base ID and Table ID in all Airtable nodes (Get Orders Records, Get Customer Details, Get Products, etc.). Switch from Sandbox to Live QuickBooks:** Replace the Sandbox company ID and endpoint in the “Create Invoice URL” node with your production QuickBooks company ID. Add more invoice details:** Edit the Code and Parse in HTTP nodes to include additional fields (like Tax, Shipping, or Notes). Support multiple currencies:** Add a “Currency” field mapping in both Airtable and QuickBooks nodes. Connect with us Website: https://www.intuz.com/services Email: getstarted@intuz.com LinkedIn: https://www.linkedin.com/company/intuz Get Started: https://n8n.partnerlinks.io/intuz For Custom Workflow Automation Click here- Get Started
by vinci-king-01
Sales Pipeline Automation Dashboard with AI Lead Intelligence 🎯 Target Audience Sales managers and team leads Business development representatives Marketing teams managing lead generation CRM administrators and sales operations Account executives and sales representatives Sales enablement professionals Revenue operations (RevOps) teams 🚀 Problem Statement Manual lead qualification and sales pipeline management is inefficient and often leads to missed opportunities or poor lead prioritization. This template solves the challenge of automatically scoring, qualifying, and routing leads using AI-powered intelligence to maximize conversion rates and sales team productivity. 🔧 How it Works This workflow automatically processes new leads using AI-powered intelligence, scores and qualifies them based on multiple factors, and automates the entire sales pipeline from lead capture to deal creation. Key Components Dual Trigger System - Scheduled monitoring and webhook triggers for real-time lead processing AI-Powered Lead Intelligence - Advanced scoring algorithm based on 7 key factors Multi-Source Data Enrichment - LinkedIn and Crunchbase integration for comprehensive lead profiles Automated Sales Actions - Intelligent routing, task creation, and follow-up sequences Multi-Platform Integration - HubSpot CRM, Slack notifications, and Google Sheets dashboard 📊 Google Sheets Column Specifications The template creates the following columns in your Google Sheets: | Column | Data Type | Description | Example | |--------|-----------|-------------|---------| | timestamp | DateTime | When the lead was processed | "2024-01-15T10:30:00Z" | | lead_id | String | Unique lead identifier | "LEAD-2024-001234" | | first_name | String | Lead's first name | "John" | | last_name | String | Lead's last name | "Smith" | | email | String | Lead's email address | "john@company.com" | | company_name | String | Company name | "Acme Corp" | | job_title | String | Lead's job title | "Marketing Director" | | lead_score | Number | AI-calculated score (0-100) | 85 | | grade | String | Lead grade (A+, A, B+, B, C+) | "A+" | | category | String | Lead category | "Enterprise" | | priority | String | Priority level | "Critical" | | lead_source | String | How the lead was acquired | "Website Form" | | assigned_rep | String | Assigned sales representative | "Senior AE" | | company_size | String | Company employee count | "201-500 employees" | | industry | String | Company industry | "Technology" | | funding_stage | String | Company funding stage | "Series B" | | estimated_value | String | Estimated deal value | "$50K-100K" | 🛠️ Setup Instructions Estimated setup time: 25-30 minutes Prerequisites n8n instance with community nodes enabled ScrapeGraphAI API account and credentials HubSpot CRM account with API access Google Sheets account with API access Slack workspace for notifications (optional) Email service for welcome emails (optional) Step-by-Step Configuration 1. Install Community Nodes Install required community nodes npm install n8n-nodes-scrapegraphai npm install n8n-nodes-slack 2. Configure ScrapeGraphAI Credentials Navigate to Credentials in your n8n instance Add new ScrapeGraphAI API credentials Enter your API key from ScrapeGraphAI dashboard Test the connection to ensure it's working 3. Set up HubSpot CRM Integration Add HubSpot API credentials Grant necessary permissions for contacts, deals, and tasks Configure custom properties for lead scoring and qualification Test the connection to ensure it's working 4. Set up Google Sheets Connection Add Google Sheets OAuth2 credentials Grant necessary permissions for spreadsheet access Create a new spreadsheet for sales pipeline data Configure the sheet name (default: "Sales Pipeline") 5. Configure Lead Scoring Parameters Update the lead scoring weights in the Code node Customize ideal customer profile criteria Set automation trigger thresholds Adjust sales rep assignment logic 6. Set up Notification Channels Configure Slack webhook or API credentials Set up email service credentials for welcome emails Define notification preferences for different lead grades Test notification delivery 7. Configure Triggers Set up webhook endpoint for real-time lead capture Configure scheduled trigger for periodic monitoring Choose appropriate time zones for your business hours Test both trigger mechanisms 8. Test and Validate Run the workflow manually with sample lead data Check HubSpot for proper contact and deal creation Verify Google Sheets data formatting Test all notification channels 🔄 Workflow Customization Options Modify Lead Scoring Algorithm Adjust scoring weights for different factors Add new scoring criteria (geographic location, technology stack, etc.) Customize ideal customer profile parameters Implement industry-specific scoring models Extend Data Enrichment Add more data sources (ZoomInfo, Apollo, etc.) Include social media presence analysis Add technographic data collection Implement intent signal detection Customize Sales Automation Modify follow-up sequences for different lead categories Add more sophisticated sales rep assignment logic Implement territory-based routing Add automated meeting scheduling Output Customization Add data visualization and reporting features Implement sales pipeline analytics Create executive dashboards with key metrics Add conversion rate tracking and analysis 📈 Use Cases Lead Qualification**: Automatically score and qualify incoming leads Sales Pipeline Management**: Streamline the entire sales process Lead Routing**: Intelligently assign leads to appropriate sales reps Follow-up Automation**: Ensure consistent and timely follow-up Sales Intelligence**: Provide comprehensive lead insights Performance Tracking**: Monitor sales team and pipeline performance 🚨 Important Notes Respect LinkedIn and Crunchbase terms of service and rate limits Implement appropriate delays between requests to avoid rate limiting Regularly review and update your lead scoring parameters Monitor API usage to manage costs effectively Keep your credentials secure and rotate them regularly Ensure GDPR compliance for lead data processing 🔧 Troubleshooting Common Issues: ScrapeGraphAI connection errors: Verify API key and account status HubSpot API errors: Check API key and permissions Google Sheets permission errors: Check OAuth2 scope and permissions Lead scoring errors: Review the Code node's JavaScript logic Rate limiting: Adjust request frequency and implement delays Support Resources: ScrapeGraphAI documentation and API reference HubSpot API documentation and developer resources n8n community forums for workflow assistance Google Sheets API documentation for advanced configurations Sales automation best practices and guidelines
by Shahzaib Anwar
📌 Overview This workflow automatically processes incoming Shopify/Gmail leads and pushes them into HubSpot as both Contacts and Deals. It helps sales and marketing teams capture leads instantly, enrich CRM data, and avoid missed opportunities. ⚡ How it works Trigger: Watches for new emails in Gmail. Extract Data: Parses email body (Name, Email, City, Phone, Message, Product URL/Title). Condition: Checks if sender is Shopify before processing. HubSpot: Creates/updates a Contact with customer details. Creates a Deal associated with that contact. 🎯 Benefits 📥 Automates lead capture → CRM 🚫 Eliminates manual copy-paste from Gmail 🔄 Real-time sync between Gmail and HubSpot 📈 Improves sales follow-up speed and accuracy 🛠 Setup Steps Import this workflow into your n8n instance. Connect your Gmail and HubSpot credentials. Replace the HubSpot Deal Stage ID with your own pipeline stage. (Optional) Adjust the Code Node regex if your email format differs. Activate the workflow and test with a sample lead email. 📝 Example Email Format Name: John Doe Email: john@example.com City: London Phone: +44 7000 000000 Body: Interested in product Product Url: https://example.com/product Product Title: Sample Product sticky_notes: name: Gmail Trigger note: > 📧 Watches for new emails in Gmail. Polls every minute and passes email data into the flow. name: Get a Message note: > 📩 Fetches the full Gmail message content (body + metadata) for parsing. name: Extract From Email note: > 🔍 Extracts the sender’s email address from Gmail to identify the source. name: If Sender is Shopify note: > ✅ Condition node that ensures only Shopify-originated emails/leads are processed. name: Code Node (Regex Parser) note: > 🧾 Parses the email body using regex to extract Name, Email, City, Phone, Message, Product URL, and Title. name: Edit Fields (Set Node) note: > 📝 Cleans and structures the extracted fields into proper JSON format before sending to HubSpot. name: HubSpot → Create/Update Contact note: > 👤 Creates or updates a HubSpot Contact with the extracted lead details. name: HubSpot → Create Deal note: > 💼 Creates a HubSpot Deal linked to the Contact, including campaign/product information.
by ainabler
Overall Description & Potential << What Does This Flow Do? >> Overall, this workflow is an intelligent sales outreach automation engine that transforms raw leads from a form or a list into highly personalized, ready-to-send introductory email drafts. The process is: it starts by fetching data, enriches it with in-depth AI research to uncover "pain points," and then uses those research findings to craft an email that is relevant to the solutions you offer. This system solves a key problem in sales: the lack of time to conduct in-depth research on every single lead. By automating the research and drafting stages, the sales team can focus on higher-value activities, like engaging with "warm" prospects and handling negotiations. Using Google Sheets as the main dashboard allows the team to monitor the entire process—from lead entry, research status, and email drafts, all the way to the send link—all within a single, familiar interface. << Potential Future Enhancements >> This workflow has a very strong foundation and can be further developed into an even more sophisticated system: Full Automation (Zero-Touch): Instead of generating a manual-click link, the output from the AI Agent can be directly piped into a Gmail or Microsoft 365 Email node to send emails automatically. A Wait node could be added to create a delay of a few minutes or hours after the draft is created, preventing instant sending. Automated Follow-up Sequences: The workflow can be extended to manage follow-up emails. By using a webhook to track email opens or replies, you could build logic like: "If the intro email is not replied to within 3 days, trigger the AI Agent again to generate follow-up email #1 based on a different template, and then send it." AI-Powered Lead Scoring: After the research stage, the AI could be given the additional task of scoring leads (e.g., 1-10 or High/Medium/Low Priority) based on how well the target company's profile matches your ideal customer profile (ICP). This helps the sales team prioritize the most promising leads. Full CRM Integration: Instead of Google Sheets, the workflow could connect directly to HubSpot, Salesforce, or Pipedrive. It would pull new leads from the CRM, perform the research, draft the email, and log all activities (research results, sent emails) back to the contact's timeline in the CRM automatically. Multi-Channel Outreach: Beyond email, the AI could be instructed to draft personalized LinkedIn Connection Request messages or WhatsApp messages. The workflow could then use the appropriate APIs to send these messages, expanding your outreach beyond just email.