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 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 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 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 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 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.
by Sidetool
This workflow is a supporting automation to a common Airtable situation, that as of this writing, has no direct solution but has great demand. Interfaces are your secret weapon for managing a variety of tasks – from sales funnels and task tracking to creating dynamic dashboards. But here's a common situation: how do you efficiently bulk upload records (like contacts, leads, or clients) from an interface with just a click? Once set up, you'll be able to upload CSV files directly to your tables from the Interfaces with ease. Workflow Key Points: 1. Bulk Upload Functionality: Say goodbye to the limitations of standard Airtable interfaces. Now, you can upload multiple leads or contacts simultaneously, making your work swift and efficient. 2. Customizable Fields: Tailor the base to meet your specific data needs. This ensures seamless integration with your existing systems and simplifies data management. Perfect for teams in e-commerce, CRM, or any sector where managing a high volume of leads or contacts is key. Our Airtable Base is designed to eliminate the tediousness of importing contacts. It makes large-scale data management straightforward, saving you precious time and hassle. Get ready to streamline your operations and boost your productivity! 🚀💡
by Davide
Drive-to-Store is a multi-channel marketing strategy that includes both the web and the physical context, with the aim of increasing the number of customers and sales in physical stores. This strategy guides potential customers from the online world to the physical point of sale through the provision of a coupon that can be spent in the store or on an e-commerce site. The basic idea is to have a landing page with a form and a series of unique coupons to assign to leads as a "reward" for filling out the form. This workflow is ideal for businesses looking to automate lead generation and management, especially when integrating with CRM systems like SuiteCRM and using Google Sheets for data tracking. How It Works Form Submission: The workflow starts with the On form submission node, which triggers when a user submits a form on a landing page. The form collects the user's name, surname, email, and phone number. Form Data Processing: The Form Fields node extracts and sets the form data (name, surname, email, and phone) for use in subsequent steps. Duplicate Lead Check: The Duplicate Lead? node checks if the submitted email already exists in a Google Sheets document. If the email is found, the workflow responds with a "duplicate lead" message (Respond KO node) and stops further processing. Coupon Retrieval: If the email is not a duplicate, the Get Coupon node retrieves a coupon code from the Google Sheets document based on the lead's email. Lead Creation in SuiteCRM: The Create Lead SuiteCRM node creates a new lead in SuiteCRM using the form data and the retrieved coupon code. The lead includes: First name, last name, email, phone number, and coupon code. Google Sheets Update: The Update Sheet node updates the Google Sheets document with the newly created lead's details, including: Name, surname, email, phone, coupon code, lead ID, and the current date and time. Response to Webhook: The Respond OK node sends a success response back to the webhook, indicating that the lead was created successfully. Set Up Steps Configure Form Trigger: Set up the On form submission node to collect user data (name, surname, email, and phone) via a web form. Set Up Google Sheets Integration: Configure the Duplicate Lead?, Get Coupon, and Update Sheet nodes to interact with the Google Sheets document. Ensure the document contains columns for email, coupon, lead ID, and other relevant fields. Set Up SuiteCRM Authentication: Configure the Token SuiteCRM node with the appropriate client credentials (client ID and client secret) to obtain an access token from SuiteCRM. Set Up Lead Creation in SuiteCRM: Configure the Create Lead SuiteCRM node to send a POST request to SuiteCRM's API to create a new lead. Include the form data and coupon code in the request body. Set Up Webhook Responses: Configure the Respond OK and Respond KO nodes to send appropriate JSON responses back to the webhook based on whether the lead was created or if it was a duplicate. Test the Workflow: Submit a test form to ensure the workflow correctly checks for duplicates, retrieves a coupon, creates a lead in SuiteCRM, and updates the Google Sheets document. Activate the Workflow: Once tested, activate the workflow to automate the process of handling form submissions and lead creation. Key Features Duplicate Lead Check**: Prevents duplicate leads by checking if the email already exists in the Google Sheets document. Coupon Assignment**: Retrieves a coupon code from Google Sheets and assigns it to the new lead. SuiteCRM Integration**: Automatically creates a new lead in SuiteCRM with the form data and coupon code. Data Logging**: Logs all lead details in a Google Sheets document for tracking and analysis. Webhook Responses**: Provides immediate feedback on whether the lead was created successfully or if it was a duplicate.
by Preston Zeller
How It Works This workflow automates the entire property lead generation process in a few simple steps: Property Search: Connects to BatchData's Property Search API with customizable parameters (location, property type, value range, equity percentage, etc.) Lead Filtering & Scoring: Processes results to identify the most promising leads based on criteria like absentee ownership, years owned, equity percentage, and tax status. Each property receives a lead score to prioritize follow-up. Skip Tracing: Automatically retrieves owner contact information (phone, email, mailing address) for each qualified property. Data Formatting: Structures all property and owner data into a clean, organized format ready for your systems. Multi-Channel Output: Generates an Excel spreadsheet with all lead details Pushes leads directly to your CRM (configurable for HubSpot, Salesforce, etc.) Sends a summary email with the spreadsheet attached The workflow can run on a daily schedule or be triggered manually as needed. All parameters are easily configurable through dedicated nodes, requiring no coding knowledge. Who's It For This workflow is perfect for: Real Estate Investors looking to find off-market properties with motivated sellers Real Estate Agents who want to generate listing leads from distressed or high-equity properties Investment Companies that need regular lead flow for acquisitions Real Estate Marketers who run targeted campaigns to property owners Wholesalers seeking to build a pipeline of potential deals Property Service Providers (roof repair, renovation contractors, etc.) who target specific property types Anyone who needs reliable, consistent lead generation for real estate without the manual work of searching, filtering, and organizing property data will benefit from this automation. About BatchData BatchData is a comprehensive property data provider that offers access to nationwide property information, owner details, and skip tracing services. Key features include: Extensive Database: Covers 150+ million properties across all 50 states Rich Property Data: Includes ownership information, tax records, sales history, valuation estimates, equity positions, and more Skip Tracing Services: Provides owner contact information including phone numbers, email addresses, and mailing addresses Distressed Property Indicators: Flags for pre-foreclosure, tax delinquency, vacancy, and other motivation factors RESTful API: Professional API for programmatic access to all property data services Regular Updates: Continuously refreshed data for accurate information BatchData's services are designed for real estate professionals who need reliable property and owner information to power their marketing and acquisition strategies. Their API-first approach makes it ideal for workflow automation tools like N8N.
by GrowSpire Agency
Who this is for B2B companies, including: Founders Marketing and sales professionals Recruiters involved in people search and B2B outreach With this workflow: No more manual list building No time spent researching what each company does No manual CRM work — all found data is saved to a spreadsheet automatically What it does This workflow helps you quickly build a list of prospects for outreach using the LeadIQ provider. It collects: Full name LinkedIn profile Company website and description Emails (when available in the LeadIQ database) You can start contacting people via LinkedIn manually right away. You simply provide a natural language prompt, for example: “Founder at a software engineering firm, 11–50 employees, based in New York, using AI technologies.” The embedded AI agent transforms your input into a GraphQL query, which is then used to pull leads from the database. 📹 Video walkthrough: Click Here Benefits: LeadIQ is an affordable database, with a cost per lead of approximately $0.03–$0.05 USD, depending on your plan and volume No credit card or paid plan is required to start using the LeadIQ API — just sign up and access the API The API includes 50 free credits, which is enough to test the workflow The workflow enriches company details from the open web (company description, HQ address) No need to manually configure filters — use a simple natural language prompt All data is saved automatically to Airtable CRM (using their standard CRM template from the template library) ⚠️ Important: This workflow is not ideal if email addresses are the only data you need, as LeadIQ does not always provide emails. It works best when you need: A curated list of people based on specific criteria Their LinkedIn profiles Automated saving of leads to a database You can later enrich email data using other paid databases by pulling records from Airtable. How to customize the workflow Sign up for LeadIQ: https://leadiq.com Obtain the API string called “Secret Base64 API key” Add the API key to all HTTP nodes: Method: POST URL: https://api.leadiq.com/graphql Enable “Send Headers” and add: Authorization: Basic <your API string here> Content-Type: application/json Sign up for Airtable Find the template: Left panel → Templates & apps → Marketing → “Sales CRM” In Airtable, generate an API key: Builder Hub → Developers → Personal access token Add your Sales CRM database to the token scope Set the correct base and sheet in all Airtable nodes Use the Code node called “Manage number of leads” to control how many records are pulled from the database Default value: 1 (to save LeadIQ credits) To change it, edit: input.limit = 1; Replace 1 with the desired number of leads Launch the workflow using the “Open Chat” trigger node Enter a prompt containing the criteria below Prompt structure: 📌 Contact-level criteria (optional) Job titles**: “Founder” Roles**: “Entrepreneurship”, “Business Development”, “Information Technology”, “Legal”, “Accounting”, etc. Seniority**: Executive, VP, Director, Manager, Senior Individual Contributor, Other Location (city and country only)**: “New York, United States” 📌 Company-level criteria (optional) Employee count range**: “1–10”, “50–200”, or terms like “small startup”, “SMB”, “mid-market”, “enterprise” Industry**: “Business Consulting and Services”, “IT Services and IT Consulting”, etc. Technologies**: “AI”, “HubSpot” (may not always work if the database has limited overlap) Revenue range (in millions USD)**: “0–1M”, “1–10M”, etc. (availability may vary) The workflow includes two AI agents that map your natural language input to the closest existing database filters, so you can write prompts in your own words. Email enrichment note The lower part of the workflow (“Enrichment: Search Data & Email”) attempts to pull emails from the LeadIQ database for existing leads. Not every lead has an email available, so this step is optional and limited. Workflow updates I will continue to add new functionality and improve this workflow, including: Additional enrichment sources New lead databases Email sending infrastructure The latest version will always be available on my Patreon
by Harshil Agrawal
This workflow allows you to trigger a build in Travis CI when code changes are pushed to a GitHub repo or a pull request gets opened. GitHub Trigger node: This node will trigger the workflow when changes are pushed or when a pull request is created, updated, or deleted. IF node: This node checks for the action type. We want to trigger a build when code changes are pushed or when a pull request is opened. We don't want to build the project when a PR is closed or updated. TravisCI node: This node will trigger the build in Travis CI. If you're using CircleCI in your pipeline, replace the node with the CircleCI node. NoOp node: Adding this node is optional.