by Madame AI
Scrape industry growth signals from BrowserAct to Slack reports Introduction This workflow automates the monitoring of market growth signals, such as funding rounds, for specific target industries. It scrapes data using BrowserAct, uses AI to filter and format the results for the current month, and delivers a consolidated report directly to Slack. Target Audience Account-Based Marketing (ABM) managers, sales development representatives (SDRs), and venture capital researchers looking to track competitor or prospect activity. How it works Scheduling: A Schedule Trigger initiates the workflow once a month to gather recent data. Configuration: A Set node defines the Target_Industry variable (e.g., "Property Management"), which controls what data acts as a signal. Data Extraction: The BrowserAct node runs the "ABM Signal Monitor" template to scrape raw company data and growth lists from the web. AI Analysis: An AI Agent (powered by OpenRouter/GPT-4o) processes the raw text. It filters companies to ensure they match the target industry and have funding dates within the current month. Data Structuring: The AI formats the valid leads into a structured JSON report, splitting the data if the list exceeds Slack's character limits. Data Splitting: A Split Out node separates the message array into individual items to ensure reliable delivery. Notification: A Slack node posts the curated "Growth Signal Report" to a specified channel. How to set up Configure Credentials: Connect your BrowserAct, OpenRouter, and Slack accounts in the n8n credentials section. Prepare BrowserAct: Ensure you have the ABM Signal Monitor template saved in your BrowserAct account. Define Industry: Open the Set Target Industry node and update the value field to the specific industry you want to track (e.g., "Fintech", "Healthcare"). Select Slack Channel: Open the Send the report to the channel node and select the specific Slack channel where you want the report to appear. Requirements BrowserAct Account:* You must have the *ABM Signal Monitor** template active in your library. OpenRouter Account:** Required to access the GPT-4o model for data filtering and formatting. Slack Account:** Required for receiving the final reports. How to customize the workflow Change the Trigger Frequency: Update the Monthly Trigger node to run weekly or daily if you require more frequent updates on market signals. Modify the AI Logic: Edit the System Message in the AI Agent node to change the filtering criteria (e.g., filter by hiring volume instead of funding). Add a Database: Insert a Google Sheets or Notion node before the Slack step to archive the growth signals for long-term tracking. Need Help? How to Find Your BrowserAct API Key & Workflow ID How to Connect n8n to BrowserAct How to Use & Customize BrowserAct Templates Workflow Guidance and Showcase Video ๐ Automate ABM Sales Signals: Track Startup Funding with n8n & AI
by Jitesh Dugar
Process invoices with UploadToURL, AWS Textract, and Google Sheets Eliminate manual data entry from your accounts payable process. This workflow transforms raw invoice scans into structured financial records by combining UploadToURL for hosting, AWS Textract for OCR data extraction, and Google Sheets for centralized logging. ๐ฏ What This Workflow Does Turns any paper or PDF invoice into a verified spreadsheet entry in seconds: ๐ Captures Invoice Scans - Receives invoices via mobile upload (binary) or remote URL via Webhook. โ๏ธ Instant CDN Hosting - UploadToURL hosts the scan and provides a permanent link for your financial audit trail. ๐๏ธ Intelligent OCR - AWS Textract analyzes the document to extract Vendor Name, Invoice Number, Amount, and Due Date. ๐ฆ Validation & Duplicate Check - Sanitizes currency formats and searches your Google Sheet to prevent double-paying the same invoice. ๐ Automated Logging - Records the extracted data directly into Google Sheets and pings the finance team in Slack. โจ Key Features UploadToURL Integration**: Hosts your financial evidence on a public CDN, making it accessible directly from your spreadsheet cells. High-Accuracy Extraction**: Uses AWS Textract's specialized invoice processing to handle complex table layouts. Audit-Ready Records**: Every entry includes the original file URL, upload timestamp, and department metadata. Smart Formatting**: Automatically normalizes dates and coerces pricing into a standard float format for easy accounting. Instant Notifications**: Keeps the finance team in the loop with real-time Slack alerts for high-priority bills. ๐ผ Perfect For Finance Teams**: Processing 50+ vendor invoices monthly without manual typing. Small Business Owners**: Managing utility bills and receipts on the go via smartphone uploads. Operations Managers**: Tracking departmental spending with a standardized, automated log. Agencies**: Organizing reimbursable expenses across multiple client projects. ๐ง What You'll Need Required Integrations UploadToURL** - To host invoice scans and provide audit links. n8n Community Node** - n8n-nodes-uploadtourl must be installed. AWS Account* - Credentials for *AWS Textract** (OCR). Google Sheets** - OAuth2 credentials to write to your finance spreadsheet. Optional Integrations Slack** - To receive real-time notifications for new invoice entries. Gmail** - To trigger the workflow automatically when an invoice arrives in your inbox. ๐ Quick Start Import Template - Copy the JSON and import it into your n8n canvas. Install Node - Ensure the UploadToURL community node is installed. Set Credentials - Link your UploadToURL, AWS, Google Sheets, and Slack accounts. Configure Spreadsheet - Create a sheet with columns: Invoice No, Vendor, Amount, Due Date, and File URL. Set Variables - Add your GSHEET_SPREADSHEET_ID and SLACK_FINANCE_CHANNEL to n8n variables. Deploy - Switch the workflow to "Active" to begin your automated bookkeeping. ๐จ Customization Options Approval Workflow**: Add a "Wait for Approval" node so a manager must click a Slack button before the row is finalized. Tax Calculation**: Insert a code node to automatically calculate VAT or Sales Tax based on the extracted total. ERP Sync: Replace Google Sheets with **QuickBooks, Xero, or NetSuite to push data directly into your accounting software. Multi-Currency Support**: Add a Currency Conversion node to normalize all totals into your base company currency. ๐ Expected Results 90% reduction** in manual data entry time (from minutes to seconds per bill). Improved Accuracy**: Elimination of typos and transcription errors in financial totals. Better Audit Compliance**: Every line item in your sheet is permanently linked to the original scan. Faster Payment Cycles**: Bills are recorded the moment they are received, preventing late fees. ๐ Use Cases Accounts Payable Automate the entry of monthly recurring bills (utilities, rent, software) directly into your tracking sheet. Employee Reimbursements Staff can snap a photo of a business dinner receipt and upload it to the webhook to start the reimbursement process instantly. Bulk Document Digitization Upload a folder of historical PDF invoices; the workflow will categorize and log them all in one batch. ๐ก Pro Tips Clear Scans**: Ensure invoices are well-lit and flat; high contrast helps AWS Textract achieve 99% accuracy. Folder IDs**: Keep your Google Sheet in a shared Drive folder so your entire finance team can access the linked UploadToURL files. Webhook Security**: Use a unique path or basic auth on your webhook to ensure only authorized devices can submit invoices. Ready to automate your bookkeeping? Import this template and connect UploadToURL to build a hands-free finance pipeline today. Questions about AWS Textract mapping? The workflow includes detailed sticky notes explaining how to extract custom fields from your specific vendor layouts.
by Fahmi Fahreza
This template sets up a weekly ETL (Extract, Transform, Load) pipeline that pulls financial data from QuickBooks Online into Google BigQuery. It not only transfers data, but also cleans, classifies, and enriches each transaction using your own business logic. Who It's For Data Analysts & BI Developers** Need structured financial data in a warehouse to build dashboards (e.g., Looker Studio, Tableau) and run complex queries. Financial Analysts & Accountants** Want to run custom SQL queries beyond QuickBooksโ native capabilities. Business Owners** Need a permanent, historical archive of transactions for reporting and tracking. What the Workflow Does 1. Extract Fetches transactions from the previous week every Monday from your QuickBooks Online account. 2. Transform Applies custom business logic: Cleans up text fields Generates stable transaction IDs Classifies transactions (income, expense, internal transfer) 3. Format Prepares the cleaned data as a bulk-insert-ready SQL statement. 4. Load Inserts the structured and enriched data into a Google BigQuery table. Setup Guide 1. Prepare BigQuery Create a dataset (e.g., quickbooks) and table (e.g., transactions) The table schema must match the SQL query in the "Load Data to BigQuery" node 2. Add Credentials Add QuickBooks Online and Google BigQuery credentials to your n8n instance 3. Configure Business Logic Open the Clean & Classify Transactions node Update the JavaScript arrays: internalTransferAccounts expenseCategories incomeCategories Ensure these match your QuickBooks Chart of Accounts exactly 4. Configure BigQuery Node Open the Load Data to BigQuery node Select the correct Google Cloud project Ensure the SQL query references the correct dataset and table 5. Activate the Workflow Save and activate it The workflow will now run weekly Requirements A running n8n instance (Cloud or Self-Hosted) A QuickBooks Online account A Google Cloud Platform project with BigQuery enabled A BigQuery table with a matching schema Customization Options Change Schedule**: Modify the schedule node to run daily, monthly, or at a different time Adjust Date Range**: Change the date macro in the Get Last Week's Transactions node Refine Classification Rules**: Add custom logic in the Clean & Classify Transactions node to handle specific edge cases
by Yar Malik (Asfandyar)
Whoโs it for This template is perfect for marketers, sales teams, and entrepreneurs who need verified business leads without spending hours on manual research. If youโre running outreach campaigns, selling B2B services, or building prospect databases, this workflow saves you time and ensures your lead list is always fresh. How it works Start with a Google Maps search for a chosen business type and location (e.g., โCall centers in New Yorkโ). The workflow scrapes raw data, extracting business names, phone numbers, addresses, websites, and emails. Using regex logic, it filters and cleans data, ensuring valid contact details. Finally, it exports all leads into Google Sheets, giving you a ready-to-use contact list for outreach or CRM import. How to set up Replace the placeholder values in the Set Form Fields node with your target industry and location. Connect your Google Sheets account and provide the sheet ID. Run the workflow to start building your lead list. Requirements Google Sheets credentials Business type + location input How to customize the workflow Change the max_results field to control the number of businesses scraped. Add extra regex filters to capture more fields (e.g., social links). Integrate with your CRM or email platform to send leads directly to your outreach pipeline.
by AI Underdogs
Quick overview This workflow turns incoming WhatsApp messages into AI-assisted sales replies using Google Gemini, while syncing contacts with HubSpot and pulling product and company information from Google Sheets and Google Docs, then logging the conversation back to Google Sheets. Watch the full step-by-step video: https://www.youtube.com/watch?v=AlxGbatqb_A How it works Triggers when a new WhatsApp message is received via the WhatsApp Business Cloud API. Filters events to only process updates that contain inbound message content. Uses a per-contact memory (keyed by the WhatsApp ID) and Google Gemini to generate a sales reply, calling HubSpot, Google Sheets, and Google Docs as needed. Searches for the sender in HubSpot and creates or updates the contact record with any details collected during the chat. Retrieves matching product information from a Google Sheets product catalog and policies/FAQs from a Google Docs company profile to ground the response. Appends the customer message and the AI-generated reply to a Google Sheets chat log. Sends the final reply back to the customer on WhatsApp. Setup Connect WhatsApp Business Cloud API credentials for both the WhatsApp trigger and the WhatsApp send action, and configure your Meta webhook subscription to send message events to the workflowโs webhook URL. Add a Google Gemini (PaLM / AI Studio) API key credential for the chat model. Add a HubSpot OAuth2 credential with permission to search and create/update CRM contacts. Add Google Sheets OAuth2 credentials and set the spreadsheet document IDs and sheet names for the product catalog and chat log. Add Google Docs OAuth2 credentials and replace the placeholder document URL with your company profile/FAQ document.
by Alex Berman
Who is this for This workflow is for sales teams, growth hackers, and lead generation agencies who want to build a targeted list of Shopify store owners -- complete with emails, phone numbers, and social profiles -- and receive those contacts directly in Slack for immediate follow-up. How it works A manual trigger starts the workflow and passes your search parameters (country, platform, lead count) to the ScraperCity store-leads API. The API returns a runId immediately. Because scrapes can take 10--60 minutes, the workflow enters an async polling loop -- waiting 60 seconds between each status check. Once the scrape status returns SUCCEEDED, the workflow downloads the full CSV result set. A Code node parses the CSV, removes duplicates, and formats each lead into a clean Slack message block. Each contact (store name, email, phone, social links) is posted as a structured Slack message so your team can act on leads in real time. How to set up Create a ScraperCity account at scrapercity.com and copy your API key. In n8n, add an HTTP Header Auth credential named ScraperCity API Key with the header name Authorization and value Bearer YOUR_KEY. Add a Slack credential (OAuth2) and connect it to the Post Lead to Slack node. In the Configure Search Parameters node, update countryCode, totalLeads, and slackChannel to match your needs. Click Execute workflow to run. Requirements ScraperCity account and API key (scrapercity.com) n8n instance (cloud or self-hosted) Slack workspace with a bot token and target channel How to customize the workflow Change platform in Configure Search Parameters from shopify to woocommerce to target WooCommerce stores instead. Increase totalLeads up to 5000 per run. Add a Filter node after CSV parsing to keep only leads with verified emails. Replace the Slack node with a Google Sheets or HubSpot node to store leads in a CRM.
by Alex Berman
Who is this for This workflow is built for digital agencies and sales teams that sell services to ecommerce brands. If you prospect Shopify store owners and want a repeatable, automated pipeline from discovery to CRM -- this template handles the entire process. How it works A configuration node lets you set your target country, lead volume, and filters before anything runs. ScraperCity's store-leads API scrapes live Shopify stores and returns emails, phone numbers, and social profiles. The workflow polls for job completion every 60 seconds, then downloads and parses the CSV results. All harvested emails are sent in bulk to ScraperCity's email-validator API, which checks deliverability, MX records, and catch-all status. Only contacts with valid or acceptable email status pass through a filter node. Duplicate records are removed before each verified lead is created or updated as a contact in HubSpot CRM. How to set up Create a ScraperCity account at app.scrapercity.com and copy your API key. In n8n, create an HTTP Header Auth credential named "ScraperCity API Key" with the header name "Authorization" and value "Bearer YOUR_KEY". Connect your HubSpot account using the HubSpot App Token credential. Open the Configure Search Parameters node and set your target country code and lead volume. Requirements ScraperCity account (app.scrapercity.com) -- store-leads and email-validator products HubSpot account with a private app token n8n instance (cloud or self-hosted) How to customize the workflow Change countryCode in the config node to target any market (GB, AU, CA, etc.) Adjust totalLeads to control scrape volume per run Add a filter node after email validation to restrict to specific domains or revenue signals Swap HubSpot for another CRM by replacing the final node with a Salesforce, Pipedrive, or Airtable node
by Jitesh Dugar
Eliminate the manual chaos of HR and legal document management. This workflow automates the transition from a raw document upload to a structured, audit-ready archive by combining UploadToURL for instant CDN hosting, Google Drive for long-term storage, and Airtable for status tracking and database management. ๐ฏ What This Workflow Does Transforms loose document scans into a structured corporate filing system: ๐ Captures Legal Assets - Receives signed contracts or IDs via mobile scan (binary) or remote URL. ๐ก๏ธ Duplicate Prevention - Checks Airtable first to ensure a contract isn't already filed for that specific Employee ID. โ๏ธ Instant CDN Hosting - UploadToURL hosts the document to provide a high-speed link for immediate HR review. ๐ Smart Folder Logic - Automatically navigates or creates a structured Google Drive path: HR/Contracts/{Year}/{Department}/{EmployeeName}/. ๐๏ธ Database Synchronization - Updates (or creates) an Airtable record to tick "Contract Received," logging both the Drive URL and the CDN backup. ๐ง Automated Confirmation - Sends a professional HTML email to HR and the employee with access links and filing metadata. โจ Key Features UploadToURL Integration**: Provides a redundant, accessible CDN link stored alongside your primary Drive storage for total data reliability. Auto-Nomenclature**: Renames files using a strict audit-ready format: {EmployeeID}{LastName}{Type}_{Date}.pdf. Intelligent Folder Creation**: Never manually create a folder again; the workflow builds the entire hierarchy on the fly. Audit Trail Generation**: Captures "Filed By," "Filed At," and unique "Upload IDs" for every document. Conflict Handling**: Built-in 409 Conflict logic prevents accidental overwrites or double-filing of critical legal papers. ๐ผ Perfect For HR Teams**: Managing onboarding documents and employment contracts at scale. Legal Departments**: Archiving NDAs, vendor agreements, and compliance certifications. Small Businesses**: Moving away from "loose files in folders" to a searchable, automated database. Remote Teams**: Enabling employees to "upload and forget" their paperwork via a simple link. ๐ง What You'll Need Required Integrations UploadToURL** - To host documents and provide public CDN backup links. n8n Community Node** - n8n-nodes-uploadtourl must be installed. Google Drive** - OAuth2 credentials for secure document storage. Airtable** - Personal Access Token to manage your employee/document database. Gmail / SMTP** - To send automated filing confirmations. Configuration Variables GDRIVE_ROOT_FOLDER_ID: The ID of your main HR folder in Google Drive. AIRTABLE_BASE_ID: Your specific Airtable base for HR/Legal tracking. ๐ Quick Start Import Template - Copy the JSON and import it into your n8n workspace. Install Node - Ensure the UploadToURL community node is active. Set Credentials - Link your UploadToURL, Google Drive, Airtable, and Gmail accounts. Define Variables - Set your Root Folder ID and Airtable Base details in n8n variables. Test the Pipeline - Send a test POST with a sample PDF to the Webhook URL. Activate - Enable the workflow to begin hands-free archiving. ๐จ Customization Options Expiration Alerts**: Add a node to calculate 1-year expiry dates and set an automated reminder in Slack. OCR Processing**: Integrate an OCR step to read the content of scans and verify names automatically. Watermarking**: Add a "Confidential" or "Draft" watermark to documents before they are uploaded to the CDN. Multi-Base Routing**: Route documents to different Airtable bases depending on the "Department" field. ๐ Expected Results 100% Consistency** in file naming and folder structures across the entire organization. Zero manual data entry**โemployee records and checkboxes update automatically. Audit-ready in minutes**: Every file has a timestamped trail and redundant storage links. Instant Accessibility**: HR can view documents via the CDN link before Drive permissions even propagate. ๐ Use Cases High-Growth Onboarding A startup hiring 20 people a month can automate all contract filings, ensuring the "Contract Received" flag is always accurate for payroll. Compliance Audits When auditors ask for specific contracts, use the Airtable "Structured Filename" column to find and share the relevant Drive or CDN links in seconds. Field Service Scans Technicians in the field can upload signed site reports via a mobile app; the workflow handles the filing and notifies the office immediately. ๐ก Pro Tips Folder IDs**: You can find your GDRIVE_ROOT_FOLDER_ID by looking at the last string in the URL when you are inside that folder in your browser. Structured JSON**: Use the returned auditTrail object to build a log of all uploads in a separate "Master Audit" spreadsheet. Employee IDs**: If no ID is provided, the workflow generates a temporary one using a timestamp to ensure the archive never breaks. Ready to secure your document pipeline? Import this template and connect UploadToURL to build a world-class archiving system in under 20 minutes. Need help with Airtable field mapping? The workflow includes detailed sticky notes explaining the exact field names required for the automation to run.
by Madame AI
Automate B2B lead research from Google Sheets to Airtable With BrowserAct This workflow automates the time-consuming process of B2B market research. It takes a list of company website URLs from a Google Sheet, uses BrowserAct to scrape their profiles and news sections, analyzes the data using AI to determine strategic focus and key activities, and saves a comprehensive executive summary into an Airtable database. Target Audience Sales operations managers, SDRs (Sales Development Representatives), market researchers, and venture capital analysts who need to process large volumes of company data efficiently. How it works Ingest Data: The workflow retrieves a list of target company URLs from a Google Sheet. Scrape Content: It loops through each URL and triggers BrowserAct (using the "B2B Contact Research" template) to scrape company profiles, about pages, and news sections. Analyze & Stage: An AI Agent (using OpenRouter/GPT-5) processes the raw scraped text to identify whether it is news or profile data, extracting key insights like strategic focus and recent updates. This raw analysis is staged back into the Google Sheet. Synthesize: The workflow retrieves the staged data and aggregates it. Final Summary: A second AI Agent compiles all data points into a cohesive "Research Record," writing a high-impact executive summary and formatting notes with Markdown. Database Entry: The final structured data (Name, Notes, Strategic Focus) is created as a new record in Airtable. How to set up Configure Credentials: Connect your BrowserAct, Google Sheets, Airtable, and OpenRouter accounts in n8n. BrowserAct Template: Ensure you have the B2B Contact Research template saved in your BrowserAct account. Prepare Google Sheet: Create a Google Sheet with a tab named "DataBase". Add the headers listed below. Populate the Page URL column with the companies you want to research. Configure Nodes: Open the Google Sheets nodes and select your file. Open the Airtable node and select your Base and Table. Run: Execute the workflow to start processing the list. Google Sheet Headers To use this workflow, create a Google Sheet with the following headers: Page URL (Input - put your links here) Page Data (Output - leave blank, populated by bot) row_number (Output - leave blank, populated by bot) Requirements BrowserAct* account with the *B2B Contact Research** template. Google Sheets** account. Airtable** account. OpenRouter** account (or credentials for a specific LLM like GPT-4o or Gemini). How to customize the workflow Change the CRM: Replace the final Airtable node with HubSpot, Salesforce, or Pipedrive nodes to inject research directly into your CRM deals. Adjust AI Prompts: Modify the system prompt in the "Analyze the Company Page" agent to focus on specific criteria relevant to your business (e.g., look specifically for "pricing models" or "hiring trends"). Email Alerts: Add a Gmail or Slack node at the end of the workflow to notify your sales team immediately when a high-value prospect has been researched. Need Help? How to Find Your BrowserAct API Key & Workflow ID How to Connect n8n to BrowserAct How to Use & Customize BrowserAct Templates Workflow Guidance and Showcase Video How to Structure Airtable for Automated Company Research (n8n Tutorial)
by Pernille-AI
Automatically retrieve AWS invoices and create corresponding bills in FreeAgent, marking them as paid. This workflow eliminates manual data entry for AWS billing. What It Does Fetches invoices from AWS Invoicing API for the previous month Filters invoices by issue date to ensure only new ones are processed Checks PostgreSQL database for previously processed invoices Creates a bill in FreeAgent with correct dates and amounts Marks the bill as paid with a bank transaction explanation Records the invoice in the database to prevent future duplication Prerequisites AWS account with Invoicing API access FreeAgent account with OAuth API access PostgreSQL database (you could modify to use n8n Data Table?) AWS IAM user with invoicing:ListInvoiceSummaries permission Quick Setup Checklist [ ] Create PostgreSQL table (see below) [ ] Add PostgreSQL credentials in n8n [ ] Set up FreeAgent OAuth2 credentials [ ] Update AWS access key and secret key in "Generate AWS Signature" node [ ] Update AWS account ID in "Calculate Last Month" node [ ] Get and update FreeAgent contact ID for AWS [ ] Get and update FreeAgent category ID (cloud services/hosting) [ ] Get and update FreeAgent bank account ID Configuration Required This template has placeholders that you need to replace: In Code Nodes YOUR_AWS_ACCESS_KEY_ID - Your AWS access key YOUR_AWS_SECRET_ACCESS_KEY - Your AWS secret key YOUR_AWS_ACCOUNT_ID - Your 12-digit AWS account number YOUR_CONTACT_ID - FreeAgent contact ID for AWS YOUR_CATEGORY_ID - FreeAgent category for cloud services YOUR_BANK_ACCOUNT_ID - FreeAgent bank account for payments Credentials to Add PostgreSQL database credentials (3 nodes) FreeAgent OAuth2 credentials (2 nodes) Use Cases Freelancers & Consultants**: Automatically track AWS infrastructure costs Small Businesses**: Streamline bookkeeping for cloud expenses Agencies**: Manage multiple AWS accounts with separate workflows Accountants**: Reduce manual data entry for client AWS bills Database Schema The workflow uses a PostgreSQL table to track processed invoices - To initially create the table you need to run : CREATE TABLE aws_invoices_processed ( id SERIAL PRIMARY KEY, aws_invoice_id VARCHAR(255) UNIQUE NOT NULL, freeagent_invoice_url TEXT NOT NULL, billing_period VARCHAR(7) NOT NULL, amount DECIMAL(10, 2) NOT NULL, currency VARCHAR(3) NOT NULL, processed_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); Customization VAT Rate**: Default is 20% (UK), adjust in "Prepare FreeAgent Bill" node Schedule**: Modify cron expression in "Schedule Trigger" node Description Format**: Customize invoice description in code nodes Multi-Account**: Duplicate workflow for each AWS account Notes AWS dates are reversed: DueDate is earlier than IssuedDate, so the workflow swaps these All amounts are processed in the currency specified by AWS The "DELETE Test Record" node is disabled by default - use for testing only
by Omer Fayyaz
Who's it for This template is perfect for business owners, developers, and marketers who want to add a professional, branded AI chatbot to their website. Whether you're running an e-commerce site, a SaaS platform, or a corporate website, this template gives you a fully customizable chat widget that integrates seamlessly with your brand. How it works The template creates a webhook endpoint that receives chat messages and processes them through an AI agent powered by DeepSeek. The workflow includes: Webhook endpoint** that accepts POST requests from your website AI Agent** that processes user messages and maintains conversation context Memory buffer** that remembers conversation history for each user session Response formatting** that sends AI replies back to your chat widget The chat widget itself is a vanilla JavaScript component that you embed on your website. It features: Customizable colors, branding, and positioning Light/dark theme support Mobile-responsive design Local conversation history Session management with expiration WordPress plugin integration How to set up Import the workflow into your n8n instance Configure your DeepSeek API credentials in the DeepSeek Chat Model node Activate the workflow to generate your webhook URL Copy the webhook URL from the Webhook node Embed the chat widget on your website using the provided JavaScript files Requirements n8n instance** (self-hosted or cloud) DeepSeek API account** and API key Website** where you want to embed the chatbot Basic HTML/JavaScript knowledge** for customization How to customize the workflow AI Agent Configuration Modify the AI Agent prompt to change how the bot responds Adjust the memory buffer settings for conversation context Change the AI model parameters for different response styles Webhook Customization Add authentication headers if needed Modify the response format to match your requirements Add additional processing nodes before the AI Agent Chat Widget Styling Change brandColor and accentColor to match your brand Customize the bot name, avatar, and welcome message Adjust positioning and launcher style Enable dark mode or HTML responses as needed Advanced Features Add user authentication integration Implement rate limiting Connect to your CRM or support system Add analytics and tracking Template Features โ No hardcoded API keys - uses n8n credential system โ Sticky notes included - explains the entire workflow โ Professional branding - fully customizable appearance โ WordPress ready - includes plugin and shortcode support โ Mobile responsive - works on all devices โ Session management - remembers conversations per user Use Cases Customer Support**: Provide instant AI-powered assistance Lead Generation**: Engage visitors and collect contact information Product Guidance**: Help customers find the right products/services FAQ Automation**: Answer common questions automatically Booking Assistant**: Help with appointments and reservations E-commerce Support**: Guide customers through purchases Technical Details The workflow uses the LangChain AI Agent with DeepSeek as the language model and includes a Memory Buffer for conversation context. The webhook response format is optimized for the chat widget. Live Demo Try it online: Live Demo Experience the chatbox widget in action with a working n8n webhook integration. The demo showcases all features including light/dark themes, HTML responses, and session management. Note: This template includes a complete JavaScript chat widget and WordPress plugin, making it ready for immediate use on any website. The workflow is designed to be production-ready with proper error handling and security considerations.
by Rahul Joshi
Description: Eliminate duplicate entries and streamline your lead management process with this n8n workflow template! Automatically capture new form submissions, check against existing records, update duplicates, and sync leads seamlessly into GoHighLevel (GHL) CRM and your Google Sheets database. This automation monitors Google Form submissions in real time, verifies if a lead already exists, and routes them accordingly: โ New leads are created in GoHighLevel and logged in your master database. โป๏ธ Duplicates are updated with the latest details and tracked in a dedicated duplicate log. Perfect for sales, marketing, and operations teams that need clean, accurate, and up-to-date lead records without manual effort. What This Template Does ๐ฅ Captures new lead form submissions from Google Sheets ๐ Checks existing records to detect duplicate entries ๐ Creates new contacts in GoHighLevel CRM for unique leads โป๏ธ Updates existing GHL contacts with fresh submission details ๐ Logs new leads in a master database spreadsheet ๐ Tracks duplicate leads in a dedicated log for analytics ๐ Fully automated: ensures a clean, organized, and deduplicated lead pipeline How It Works Google Sheets Trigger โ Monitors your form response sheet for new submissions. Process Contact Data โ Evaluates lead details and checks for duplicates. Duplicate Check โ Compares against your master database. New Lead Handling โ Creates a new contact in GoHighLevel and adds it to the master sheet. Duplicate Handling โ Updates the existing contact in GoHighLevel and logs the activity in the duplicate log sheet. Setup Instructions- Google Sheets Setup Prepare three sheets: Form Responses Sheet โ where new leads from your form are captured Master Lead Database โ stores all unique leads Duplicate Log Sheet โ tracks duplicate entries for reporting Required columns: Name Email Address Phone Number Company (optional) Submission Time (timestamp) GoHighLevel Setup Log into your GoHighLevel account. Generate an API key under settings. Store the key securely in n8n credentials. n8n Setup Import the workflow into your n8n instance. Update all node credentials (Google Sheets + GoHighLevel). Rename the Code node to Process Contact Data. Test the workflow with a sample form submission. Customization ๐ Business Logic: Adjust duplicate detection rules (e.g., match on email only, or email + phone). ๐ Data Fields: Add more fields (e.g., industry, source, notes) and map them to GHL + Sheets. ๐ Reporting: Use the Duplicate Log Sheet for analytics, dashboards, or reporting pipelines. ๐ Notifications: Add a Telegram or Slack node to notify your team when duplicates occur. Security Best Practices โ Do not hardcode your GoHighLevel API key. Use n8n credentials. โ Remove private sheet IDs and tokens before sharing workflows. โ Restrict credential access to authorized team members only. Requirements Google Sheets (form responses, master database, duplicate log) GoHighLevel (GHL) account with API access n8n instance (self-hosted or cloud) This workflow is perfect for: ๐ข Sales Teams managing growing lead databases ๐ Marketing Teams syncing form submissions with CRM โ๏ธ Operations Teams preventing duplicate records ๐ Businesses wanting a reliable, automated lead pipeline