by algopi.io
Who is this template for? This workflow template is designed for Marketing and pre-Sales to get prospects from a form like Tally, decline data in the famous opensource CRM (SuiteCRM), synchronize contact in Brevo with linking the id from CRM, and then notify in NextCloud. Bonus : validate email with ++CaptainVerify++ and notify in NextCloud depending on response How it works For each submission in the form, a webhook is triggered. A check of the email is done with CaptainVerify. Depending on the response, and if it is ok, then a Lead is created in SuiteCRM. Else, a message in your selected discussion is sent. As the lead has been created, we can create a contact in Brevo (for future campain), ank link this contact with the lead_id from the CRM in a dedicated field. Finaly, a message in your selected discussion in NextCloud informs you about the lead. Set up instructions Complete the Set up credentials step when you first open the workflow. You'll need a CaptainVerify account (Api Key), a dedicated SuiteCRM user with Oauth, a Brevo account (Api Key) and a Nextcloud account. Set up the Webhook in the form's tool of your choice (why not Tally ?). Set each node with the explanations in sticky Notes. Enjoy ! Template was created in n8n v1.44.1
by Matthieu
Search LinkedIn companies, Score with AI and add them to Google Sheet CRM Setup Video: https://youtube.com/watch?v=m904RNxtF0w&t Who is this for? This template is ideal for sales teams, business development professionals, and marketers looking to build a targeted prospect database with automatic qualification. Perfect for agencies, consultants, and B2B companies wanting to identify and prioritize the most promising potential clients. What problem does this workflow solve? Manually researching companies on LinkedIn, evaluating their fit for your services, and tracking them in your CRM is time-consuming and subjective. This automation streamlines lead generation by automatically finding, scoring, and importing qualified prospects into your database. What this workflow does This workflow automatically searches for companies on LinkedIn based on your criteria, retrieves detailed information about each company, filters them based on quality indicators, uses AI to score how well they match your ideal customer profile, and adds them to your Google Sheet CRM while preventing duplicates. Setup Create a Ghost Genius API account and get your API key Configure HTTP Request nodes with Header Auth credentials Create a copy of the provided Google Sheet template Set up your Google Sheet and OpenAI credentials following n8n documentation Customize the "Set Variables" node to match your target audience and scoring criteria How to customize this workflow Modify search parameters to target different industries, locations, or company sizes Adjust the follower count threshold based on your qualification criteria Customize the AI scoring system to align with your specific product or service offering Add notification nodes to alert you when high-scoring companies are identified
by Prompt and Paste
Transform your lead generation process with this powerful n8n workflow that automatically captures form submissions from Google Forms and creates organized lead cards in Trello. π― Who Is This For? This workflow is perfect for: Sales teams who need to quickly organize and track incoming leads. Marketing professionals running lead generation campaigns Small business owners wanting to streamline their customer acquisition process Consultants and service providers collecting client information through forms Anyone who wants to eliminate manual data entry between forms and project management tools π οΈ Tools Involved & Prerequisites Required Tools: n8n Google Forms - for lead capture forms Trello - for lead management and organization Prerequisites: Active Google account with Forms access Trello account with board creation permissions βοΈ How It Works This workflow automatically transforms Google Form submissions into organized Trello cards for lead management: Form Trigger: When someone submits your Google Form, the workflow instantly captures all their information Data Mapping: The system takes the form responses and maps them to the appropriate Trello card fields Trello Card Creation: Each lead becomes a structured Trello card with the person's name and company as the title, plus all form data organized in custom fields π Setup Instructions Import the workflow template into your n8n instance Access the set up instructions here: https://www.notion.so/Google-Forms-to-Trello-Automation-Setup-Instructions-213718e8c6ba807f9972ff2f81f1057a?source=copy_link
by Javier Hita
Who is this for? This workflow is perfect for sales teams, business development professionals, recruitment agencies, and fractional CFO service providers who need to identify and qualify companies actively hiring. Whether you're prospecting for new clients, building a database of potential customers, or researching market opportunities, this automated solution saves hours of manual research while delivering high-quality, AI-analyzed leads. What problem is this workflow solving? Finding qualified prospects in the finance sector is time-consuming and often inefficient. Traditional methods involve: Manually browsing LinkedIn job postings for hours Difficulty distinguishing between genuine opportunities and recruitment spam Inconsistent lead categorization and qualification Risk of contacting the same companies multiple times Lack of structured data for sales team follow-up This workflow automates the entire lead generation process, from data collection to AI-powered qualification, ensuring you focus only on the most promising opportunities. What this workflow does This comprehensive lead generation system performs six key functions: Automated LinkedIn Job Scraping: Uses Apify's reliable LinkedIn Jobs Scraper to extract detailed job postings for finance positions, including company information, job descriptions, and contact details. Smart Data Processing: Removes duplicates, filters companies by size, and structures data for consistent analysis across all leads. Intelligent Lead Categorization: Compares new leads against your existing database to optimize processing and avoid duplicate work. AI-Powered Qualification: Leverages OpenAI's GPT-4 Mini to analyze each lead and determine: Company Category: Consumer companies, Fractional CFO services, Recruiting agencies, or Other Finance Role Validation: Confirms the position is genuinely finance-related Seniority Level: Entry, Mid, Senior, Director, or C-Level classification Job Summary: Concise description for quick sales team review Automated Database Management: Stores qualified leads in Airtable with comprehensive profiles, preventing duplicates while maintaining data integrity. Lead Scoring & Routing: Prioritizes leads based on processing status and qualification results for efficient sales team follow-up. Setup Prerequisites You'll need accounts for three services: Airtable** (Free tier supported) - For lead storage and management Apify** (14-day free trial available) - For LinkedIn job scraping OpenAI** (Pay-per-use) - For AI-powered lead analysis Step 1: Create Required Credentials Apify API Credential Sign up for an Apify account at apify.com Navigate to Settings β Integrations β API tokens Create a new API token In n8n, create a new Apify API credential with your token OpenAI API Credential Create an account at platform.openai.com Generate an API key in the API section In n8n, create a new OpenAI credential with your key Airtable Personal Access Token Go to airtable.com/create/tokens Create a personal access token with the following scopes: data.records:read data.records:write schema.bases:read In n8n, create a new Airtable Personal Access Token credential Step 2: Set Up Airtable Base Create a new Airtable base with the following structure: Table Name: Qualified Leads Required Fields: Company Name (Single line text) Job Title (Single line text) Is Finance Job (Checkbox) Seniority Level (Single select: Entry, Mid, Senior, Director, C-Level) Company Category (Single select: Consumer, Recruiting, Fractional CFO, Other) Job Summary (Long text) Company LinkedIn (URL) Job Link (URL) Posted Date (Date) Location (Single line text) Industry (Single line text) Company Employees (Number) Step 3: Configure the Workflow Import the Workflow: Copy the JSON and import it into your n8n instance Update Credentials: Replace placeholder credential IDs with your actual credential IDs in: "Scrape LinkedIn Jobs" node (Apify credential) "OpenAI GPT-4 Mini" node (OpenAI credential) "Save to Airtable" and "Get Existing Leads" nodes (Airtable credential) Configure Airtable Connection: Update the base ID and table ID in both Airtable nodes Set Search Parameters: In the "Edit Variables" node, configure: linkedinUrls: Your target LinkedIn job search URLs maxEmployees: Maximum company size filter (default: 200) batchSize: Processing batch size for API efficiency (default: 5) Step 4: Test the Workflow Start with a small test by setting count: 50 in the HTTP Request node Use a specific LinkedIn job search URL (e.g., "CFO jobs in New York") Execute the workflow manually and verify results in your Airtable base Review the AI categorization accuracy and adjust prompts if needed How to customize this workflow to your needs Targeting Different Roles Modify the LinkedIn search URLs in the "Edit Variables" node to target different positions: "https://www.linkedin.com/jobs/search/?keywords=Controller" "https://www.linkedin.com/jobs/search/?keywords=Finance%20Director" "https://www.linkedin.com/jobs/search/?keywords=VP%20Finance" Adjusting Company Size Filters Change the maxEmployees parameter to focus on different company segments: Startups: 1-50 employees SMBs: 51-500 employees Enterprise: 500+ employees Customizing AI Analysis Enhance the GPT-4 prompt in the "AI Lead Analyzer" node to include: Industry-specific criteria Geographic preferences Technology stack requirements Company growth stage indicators Integration Options Extend the workflow by adding: Slack notifications** for new qualified leads Email alerts** for high-priority prospects CRM integration** (Salesforce, HubSpot, Pipedrive) Lead enrichment** with additional data sources Scheduling Automation Set up the workflow to run automatically: Daily**: For active prospecting campaigns Weekly**: For ongoing market research Monthly**: For periodic database updates Performance & Cost Optimization API Efficiency**: The workflow processes leads in batches to optimize API usage Smart Deduplication**: Avoids re-processing existing leads to reduce costs Configurable Limits**: Adjust batch sizes and employee count filters based on your needs Expected Costs**: Approximately $0.05-$0.20 per 100 analysed leads (OpenAI costs) Troubleshooting Common Issues: Rate Limiting**: Increase delays between API calls if you encounter rate limits Data Quality**: Review LinkedIn search URLs for relevance to your target market AI Accuracy**: Adjust prompts if categorisation doesn't match your criteria Airtable Errors**: Verify field names match exactly between workflow and base structure Support Resources: Apify LinkedIn Scraper Documentation OpenAI API Documentation Airtable API Reference Transform your lead generation process with this powerful, AI-driven workflow that delivers qualified prospects ready for immediate outreach.
by Niklas Hatje
Use case To guarantee an effective sales process deals must be distributed between sales reps in the best way. Normally, this involves manually assigning new deals that have come in. This workflow automates it for you! What this workflow does This workflow runs once a day and checks for unassigned deals in your Hubspot CRM. Once it finds one, it enriches the deal with information about the assigned contact and their company. It then checks the region of the assigned company before looking at the company's employee size. Based on this, it assigns the deal to the right sales rep within your company. Requirements New deals in Hubspot need to be unassigned in the beginning New deals have to have an attached contact that has an attached company in Hubspot The company needs to have values for region and employee count in Hubspot Setup The setup is quite straight forward and will probably take a few minutes only. Add your Hubspot credentials Customize your criterias for assigning deals in the Assign by Region and the following Assign nodes Make sure deals are assigned to the right salesrep in the Hubspot nodes at the end Activate the workflow Customizing this to your needs Adjust the trigger interval to your needs. Currently, it defaults to once a day Adjust your region settings by adding/updating/removing options in the respective node Adjust your employee size settings by adding/updating/removing options in the respective node Ideas to enhance this flow Wrap each region's assigned criteria into different sub-workflows for easier maintainability. This will not consume additional execution counts. Add more logic on what happens once a deal does not match any criteria you've set
by Stefan
Track n8n Node Definitions from GitHub and Export to Google Sheets Overview This workflow automatically retrieves and processes metadata from the official n8n GitHub repository, filters all available .node.json files, parses their structure, and appends structured information into a Google Sheet. Perfect for developers, community managers, and technical writers who need to maintain up-to-date information about n8n's evolving node ecosystem. Setup Instructions Prerequisites Before setting up this workflow, ensure you have: A GitHub account with API access A Google account with Google Sheets access An active n8n instance (cloud or self-hosted) Step 1: GitHub API Configuration Navigate to GitHub Settings β Developer Settings β Personal Access Tokens Generate a new token with public_repo permissions Copy the generated token and store it securely In n8n, create a new "GitHub API" credential Paste your token in the credential configuration and save Step 2: Google Sheets Setup Create a new Google Sheets document Set up the following column headers in the first row: node (Column A) - Node identifier/name nodeVersion (Column B) - Version of the node codexVersion (Column C) - Codex version number categories (Column D) - Node categories credentialDocumentation (Column E) - Credential documentation URL primaryDocumentation (Column F) - Primary documentation URL Note down the Google Sheets document ID from the URL Configure Google Sheets OAuth2 credentials in n8n Step 3: Workflow Configuration Import the workflow into your n8n instance Update the following placeholder values: Replace YOUR_GOOGLE_SHEETS_DOCUMENT_ID with your actual document ID Replace YOUR_WEBHOOK_ID if using webhook functionality Configure the GitHub API credentials in the HTTP Request nodes Set up Google Sheets credentials in the Google Sheets nodes Share your Google Sheets document with the email address associated with your Google OAuth2 credentials Grant "Editor" permissions to allow the workflow to write data Google Sheets Template Details The workflow creates a structured dataset with these columns: node**: Node identifier (e.g., n8n-nodes-base.slack) nodeVersion**: Version of the node (e.g., 1.0.0) codexVersion**: Codex version number (e.g., 1.0.0) categories**: Node categories (e.g., Communication, Productivity) credentialDocumentation**: URL to credential documentation primaryDocumentation**: URL to primary node documentation Customization Options Modifying Data Extraction You can customize the "Format Data" node to extract additional fields: Add new assignments in the Set node Modify the column mapping in the Google Sheets node Update your spreadsheet headers accordingly Changing Update Frequency To run this workflow on a schedule: Replace the Manual Trigger with a Cron node Set your desired schedule (e.g., daily, weekly) Configure appropriate timing to avoid API rate limits Adding Filters Customize the "Filter Node Files" code node to: Filter specific node types Include/exclude certain categories Process only recently updated nodes Features Fetches all node definitions from the n8n-io/n8n repository Filters for .node.json files only Downloads and parses metadata automatically Extracts key fields like node names, versions, categories, and documentation URLs Appends structured data to Google Sheets with batch processing Includes error handling and retry mechanisms Clears existing data before appending new information for fresh results Use Cases This workflow is ideal for: Track changes in official n8n node definitions over time Audit node categories and documentation links for completeness Build custom dashboards from node metadata Community management and documentation maintenance Integration planning and compatibility analysis
by Dvir Sharon
π Extract Google My Business Leads by Service & Location with Bright Data to Google Sheets This template requires a self-hosted n8n instance to run. A comprehensive n8n automation that extracts Google My Business listings by service type and geographic location using Bright Data's Google Maps dataset, with intelligent city expansion and automatic duplicate removal. π₯ Who is this for? Lead generation professionals Sales teams Marketing agencies Business development representatives Entrepreneurs conducting outreach or market research β What problem is this solving? Manual lead generation from Google Maps is time-consuming and inefficient. This workflow automates the process of finding businesses by service type and location, expanding searches across cities, removing duplicates, and organizing results in a structured format. βοΈ What this workflow does Input Processing Accepts service type, state, and country via web form Uses Claude AI to generate city lists Auto-categorizes services Creates search queries per city Data Collection Uses Bright Data's Google Maps dataset Processes in batches with rate limits Monitors scraping with retry logic Formats and handles API responses Quality Control Removes duplicates by name and phone Maintains clean data in Google Sheets Ensures structured, usable datasets π Output Data Points | Field | Description | Example | | :-------------- | :-------------------------- | :---------------------------- | | Business Name | Company or business name | TechFix Computer Repair | | Category | Business category type | Electronics | | Country | Country location | US | | City | Specific city searched | Austin | | Phone Number | Contact phone number | +1 (555) 123-4567 | | Website URL | Business website | https://techfix.com | | Google Maps URL | Direct Maps link | https://maps.google.com/... | | Address | Full business address | 123 Main St, Austin, TX | | Operating Hours | Business hours | Mon-Fri 9AM-6PM | | Google Rating | Star rating | 4.5 | | Total Reviews | Number of reviews | 127 | | Reviews URL | Link to reviews | https://maps.google.com/reviews... | π Setup Instructions Prerequisites n8n instance (self-hosted or cloud) Google account with Sheets access Bright Data account with Google Maps dataset access Anthropic API key for Claude AI Step-by-Step Import the workflow JSON into n8n Configure Bright Data credentials and dataset access Set up Google Sheets and OAuth2 credentials Configure Claude AI with your API key Replace all placeholder credential IDs and tokens. For improved security, use credentials instead of hardcoding the API token placeholder in the HTTP Request node. Test with sample data (e.g., "Coffee Shop" in California, US) Activate the workflow and use the form for submissions π How to Customize Modify Geographic Scope Add countries to the form dropdown Customize Claude prompts for city generation Adjust search logic for international markets Enhance Data Collection Add more fields from Bright Data Include revenue, employee count, social profiles Improve Duplicate Detection Use fuzzy matching for similar names Include address-based checks Customize Output Format Transform data for CRM compatibility Export to CSV, database, or multiple destinations Implement Advanced Features Integrate email finder services Include lead scoring logic Discover social media profiles Batch Processing Optimization Adjust batch sizes per Bright Data limits Use parallel processing and retry logic Integration Options Connect to CRMs like HubSpot or Salesforce Trigger email automation Integrate with marketing platforms
by Incrementors
Description Activate this workflow once and every Friday at 5PM it automatically pulls your week's meeting data from Fireflies, calculates seven metrics, and emails a formatted report to your manager inbox. It tracks total meetings, total hours, average duration, busiest day, top participant, and longest meeting β plus a day-by-day breakdown and a numbered list of every meeting. Every week's summary is also logged to Google Sheets so you can track meeting load trends over time. Built for team leads, operations managers, and founders who want visibility into meeting time without manually checking Fireflies each week. What This Workflow Does Runs automatically every Friday** β Fires at 5PM every week so your end-of-week report arrives without any manual trigger Calculates seven meeting metrics** β Computes total meetings, total hours, average duration, busiest day, top participant, longest meeting, and a day-by-day breakdown from raw Fireflies data Identifies the busiest day** β Counts meetings per day of the week and surfaces which day had the most meetings and exactly how many Finds the top participant** β Counts how many meetings each person attended and surfaces the most-present person across the week Logs one summary row to Google Sheets** β Appends a 9-column weekly record for trend tracking so you can compare meeting load week over week Emails a formatted plain-text report** β Sends the full report with all metrics, daily breakdown, and numbered meeting list to your manager email automatically Exits cleanly with no meetings** β If no meetings were recorded this week, the workflow stops silently without sending an empty email Setup Requirements Tools Needed n8n instance (self-hosted or cloud) Fireflies.ai account with API access Google Sheets (one sheet with a tab named Weekly Meeting Report) Gmail account (used to send the weekly report) Credentials Required Fireflies API key (pasted into 2. Set β Config Values) Google Sheets OAuth2 Gmail OAuth2 Estimated Setup Time: 10β15 minutes Step-by-Step Setup Import the workflow β Open n8n β Workflows β Import from JSON β paste the workflow JSON β click Import Get your Fireflies API key β Log in to fireflies.ai β Settings β Integrations β copy your API key Fill in Config Values β Open node 2. Set β Config Values β replace all placeholders: | Field | What to enter | |---|---| | YOUR_FIREFLIES_API_KEY | Your Fireflies API key from step 2 | | YOUR_GOOGLE_SHEET_ID | The ID from your Google Sheet URL (the string between /d/ and /edit) | | Weekly Meeting Report | Leave as-is, or change to match your sheet tab name exactly | | manager@yourcompany.com | The email address where the weekly report should be sent | | YOUR NAME | The sender name shown in the email sign-off | | YOUR COMPANY NAME | Your company name (shown in the email subject and body) | Create your Google Sheet β Open Google Sheets β add a tab named exactly Weekly Meeting Report β add these 9 column headers in row 1: Week, Total Meetings, Total Hours, Avg Duration (min), Busiest Day, Top Participant, Longest Meeting, All Participants, Logged At Connect Google Sheets β Open node 6. Google Sheets β Log Weekly Summary β click the credential dropdown β add Google Sheets OAuth2 β sign in with your Google account β authorize access Connect Gmail β Open node 7. Gmail β Send Weekly Report β click the credential dropdown β add Gmail OAuth2 β sign in with the Gmail account you want to send reports from β authorize access Activate the workflow β Toggle the workflow to Active β it will run automatically every Friday at 5PM > β οΈ To test immediately β Click on node 1. Schedule β Every Friday 5PM and use the manual Execute option to trigger a test run without waiting for Friday. How It Works (Step by Step) Step 1 β Schedule: Every Friday 5PM This step fires the workflow automatically every Friday evening at 5PM. No manual trigger is needed. Once the workflow is active, it runs on its own every week. Step 2 β Set: Config Values Your Fireflies API key, Google Sheet ID, sheet tab name, manager email, sender name, company name, and the 7-day date window are stored here. The week start and end dates are calculated automatically from today's date so you never need to update them manually. Step 3 β HTTP: Fetch Transcripts A request is sent to the Fireflies API using your API key. It retrieves the 100 most recent transcripts from your account β title, date, duration, and participants for each. Fetching 100 ensures meetings from busy weeks are not missed during the 7-day filter. Step 4 β Code: Calculate Meeting Metrics The 100 transcripts are filtered to only those recorded in the past 7 days. If no meetings are found, a hasMeetings: false flag is set and the result passes to the gate check. For weeks with meetings, seven metrics are calculated: total meeting count, total minutes and hours, average duration per meeting, busiest day of the week with count, top participant with count, longest meeting with title and duration, and a full list of all unique participants. A day-by-day breakdown is assembled showing meeting count and total minutes per day, sorted chronologically. A numbered meeting list is also built showing each meeting's date, title, and duration, sorted most recent first. Step 5 β IF: Meetings Found? This is the gate check. If meetings were found (YES path), the workflow continues to log and email the report. If no meetings were found this week (NO path), the workflow routes to 8. Set β No Meetings Skip and stops cleanly β no email is sent, no empty row is logged. Step 6 (No path) β Set: No Meetings Skip This step handles the empty-week case. It sets a brief message confirming no meetings were found and the workflow ends here for that run. Step 6 β Google Sheets: Log Weekly Summary One row is appended to your Weekly Meeting Report tab with all 9 columns: the week date range, total meetings, total hours, average duration, busiest day, top participant, longest meeting, all participants combined, and the logged-at timestamp. This runs before the email so the sheet is always up to date even if the email step fails. Step 7 β Gmail: Send Weekly Report A plain-text email is sent to your manager email address. The subject includes your company name and the week date range. The body contains the full summary section (all seven metrics), the day-by-day breakdown, the complete numbered meeting list, and a sign-off with your name and company. A footer notes that data has been logged to Google Sheets and that the report was auto-generated every Friday. The final result: every Friday evening your manager receives a clean, complete meeting hours report in their inbox β and one row is added to your Google Sheet for trend tracking. Key Features β Fully automated Friday delivery β Fires at 5PM every Friday with zero manual input after setup β Seven metrics calculated automatically β Total meetings, hours, average duration, busiest day, top participant, longest meeting, and daily breakdown β all from a single Fireflies API call β Top participant tracking β Counts appearances across all meetings and surfaces the most-present person so you can spot meeting bottlenecks β Trend-ready Google Sheets log β One row per week means you can chart meeting load trends, spot overloaded weeks, and compare month over month β Plain-text email format β Renders cleanly in any email client without HTML formatting issues β 100-transcript buffer β Fetches 100 recent transcripts to ensure high-volume weeks are never truncated during the 7-day filter β Clean empty-week exit β No meetings this week means a clean stop β no empty email, no blank Sheets row, no errors β Chronological daily breakdown β Day-by-day data is sorted by date, not alphabetically, so the breakdown reads naturally from Monday to Friday Customisation Options Change the report delivery day and time β In node 1. Schedule β Every Friday 5PM, edit the cron expression 0 17 * * 5 to change when the report fires. For example, 0 8 * * 1 sends a Monday morning summary of last week's meetings instead. Extend the date window to 30 days for a monthly report β In node 2. Set β Config Values, change {days: 7} in both the weekStart and sevenDaysAgoMs fields to {days: 30} and adjust the schedule to monthly for a full meeting hours report. Add a Slack summary alongside the email β After node 6. Google Sheets β Log Weekly Summary, add a Slack node that posts a short 3-line summary (total meetings, total hours, busiest day) to a #operations or #team-leads channel so the team sees it without checking email. Filter to specific meeting types only β In node 4. Code β Calculate Meeting Metrics, add a keyword filter on the meeting title before calculating metrics β for example, only include meetings with "client" or "sync" in the title to separate client time from internal meetings. Add a meeting-load alert β In node 4. Code β Calculate Meeting Metrics, add a check: if totalHours exceeds a threshold (e.g. 20 hours), set a heavyWeek flag to true. Then add an IF check after step 4 that sends an additional Slack or email alert flagging the overloaded week before the normal report runs. Troubleshooting Workflow not triggering on Friday: Confirm the workflow is toggled to Active β inactive workflows do not run on a schedule Check the cron expression in node 1. Schedule β Every Friday 5PM is exactly 0 17 * * 5 β any accidental edit breaks the schedule To test immediately, click on node 1 and use the manual Execute option Fireflies returning no transcripts or an auth error: Confirm YOUR_FIREFLIES_API_KEY in node 2. Set β Config Values is replaced with your actual key β not the placeholder text Get your key from fireflies.ai β Settings β Integrations β API Key If your team recorded more than 100 meetings in the past week, increase the limit value in node 3. HTTP β Fetch Transcripts from 100 to a higher number in the GraphQL query body Google Sheets not logging rows: Confirm the Google Sheets OAuth2 credential in node 6. Google Sheets β Log Weekly Summary is connected and not expired β re-authorize if needed Check that YOUR_GOOGLE_SHEET_ID in node 2. Set β Config Values matches the ID in your sheet URL exactly Confirm the tab is named Weekly Meeting Report exactly β capitalization must match sheetName in Config Values Verify all 9 column headers in row 1 match exactly: Week, Total Meetings, Total Hours, Avg Duration (min), Busiest Day, Top Participant, Longest Meeting, All Participants, Logged At Email not being received: Confirm the Gmail OAuth2 credential in node 7. Gmail β Send Weekly Report is connected and authorized with the correct sending account Check that manager@yourcompany.com in node 2. Set β Config Values is replaced with the actual recipient email address Check your spam or promotions folder β automated emails from Gmail OAuth2 sometimes land there on first send Check the execution log of node 7 for any error message from the Gmail API Metrics showing wrong totals or missing meetings: Confirm your n8n instance timezone is set correctly β the 7-day filter uses millisecond timestamps and timezone mismatches can cause meetings to fall outside the window If meetings are missing, check that the Fireflies transcripts were fully processed before Friday 5PM β transcripts still processing at trigger time will not appear in the results Check the execution log of node 4. Code β Calculate Meeting Metrics to see the raw list of meetings that passed the filter Support Need help setting this up or want a custom version built for your team or agency? π§ Email: info@incrementors.com π Website: https://www.incrementors.com/
by Pratyush Kumar Jha
Inbox2Ledger is an end-to-end n8n template that turns a noisy finance inbox into a clean, structured ledger. It fetches emails, uses AI guardrails to keep only finance-relevant messages, extracts invoice/receipt fields via an OCR-style agent, validates and auto-categorizes each expense, generates a unique case ID, and appends the result to a Google Sheet for accounting or downstream automations. Key Features Trigger*: Form submission or scheduled fetch (sample *On form submission node included) AI Filter**: Guardrail node determines whether an email is finance-related (payments, invoices, receipts) Keyword Filter**: Filters common invoice/bill/payment subject keywords Extraction**: Language-model agent returns normalized JSON: vendor_name invoice_date (YYYY-MM-DD) invoice_id total_amount tax_amount currency items_summary vendor_tax_id Validation**: Code node checks required fields and amount formats; flags extraction errors Categorization**: Rule-based expense categorizer (software & hosting, subscriptions, travel, payroll, etc.) with MCC/vendor fallbacks Output**: Appends structured rows to a Google Sheet with mapped columns: invoice_id, vendor_name, invoice_date, total_amount, currency, tax_amount, gl_category, approval_status, timestamp, case_id, items_summary, vendor_tax_id, processed_at High Accuracy**: Low false-positive rate using combined AI guardrails + subject filtering Quick Setup**: Example nodes and credentials pre-configured in the template Included Nodes & Flow Highlights On form submission (date picker trigger) β Get Email Content (Gmail) β Guardrail: Is Finance? (LangChain Guardrails) β IF (Guardrail Passed) β Filter Finance Keywords β AI Agent (Email OCR) β Validate Extraction β Check for Errors β Apply Finance Rules β Log to Invoices Sheet (Google Sheets) (Full node list and configuration included in the template.) Requirements & Credentials Gmail OAuth2 (read access)** β for fetching emails OpenAI API key (or compatible LLM)** β for guardrails & extraction Google Sheets OAuth2** β to append rows to the invoice sheet Recommended: Use the Google Sheet ID included in the template, or replace it with your own Sheet ID and gid. Quick Setup Guide π Demo & Setup Video Import the template into n8n Connect and authorize credentials: Gmail, Google Sheets, OpenAI (or preferred LLM) Update the Google Sheet ID / sheet gid if using your own sheet (Optional) Adjust the Guardrail topicalAlignment threshold or filter keywords Test using the form trigger or a single email, then enable the workflow Configuration Tips The extraction agent outputs a strict JSON schema β keep it for reliable downstream mapping Use a low LLM temperature (0.2) for deterministic extraction For non-USD currencies, ensure your accounting system supports the currency field or add a conversion step For high-volume inboxes, enable batching or rate-limit the Gmail node to avoid API quota issues Privacy & Security This template processes real email content and financial data β store credentials securely Restrict access to the n8n instance to authorized users only Review data-retention policies if using a hosted LLM service Example Use Cases Auto-log vendor invoices from email into an accounting Google Sheet Build an audit trail with case IDs for finance teams Preprocess incoming receipts before forwarding to AP tools or ERPs Tags (Recommended) finance, invoices, email, ai, ocr, google-sheets, automation, accounting, n8n-template
by Avkash Kakdiya
How it works This workflow automatically generates personalized follow-up messages for leads or customers after key interactions (e.g., demos, sales calls). It enriches contact details from HubSpot (or optionally Monday.com), uses AI to draft a professional follow-up email, and distributes it across multiple communication channels (Slack, Telegram, Teams) as reminders for the sales team. Step-by-step 1. Trigger & Input Schedule Trigger β Runs automatically at a defined interval (e.g., daily). Set Sample Data β Captures the contactβs name, email, and context from the last interaction (e.g., βhad a product demo yesterday and showed strong interestβ). 2. Contact Enrichment HubSpot Contact Lookup β Searches HubSpot CRM by email to confirm or enrich contact details. Monday.com Contact Fetch (Optional) β Can pull additional CRM details if enabled. 3. AI Message Generation AI Language Model (OpenAI) β Provides the underlying engine for message creation. Generate Follow-Up Message β Drafts a short, professional, and friendly follow-up email: References previous interaction context. Suggests clear next steps (call, resources, etc.). Ends with a standardized signature block for consistency. 4. Multi-Channel Communication Slack Reminder β Posts the generated message as a reminder in the sales teamβs Slack channel. Telegram Reminder β Sends the follow-up draft to a Telegram chat. Teams Reminder β Shares the same message in a Microsoft Teams channel. Benefits Personalized Outreach at Scale β AI ensures each follow-up feels tailored and professional. Context-Aware Messaging β Pulls in CRM details and past interactions for relevance. Cross-Platform Delivery β Distributes reminders via Slack, Teams, and Telegram so no follow-up is missed. Time-Saving for Sales Teams β Eliminates manual drafting of repetitive follow-up emails. Consistent Branding β Ensures every message includes a unified signature block.
by Hemanth Arety
Handle WhatsApp customer inquiries with AI and intent routing (Whatsapp Chatbot) An intelligent, fully customizable WhatsApp customer support chatbot template that works for ANY business - whether you sell fashion, electronics, food, furniture, cosmetics, or anything else. This workflow combines pre-built responses for common queries with AI for complex questions, creating a cost-effective 24/7 customer support solution that adapts to your specific products and services. Who it's for This universal template works for ANY business type: E-commerce stores** (fashion, electronics, home goods, beauty, etc.) Local retail shops** (boutiques, grocery stores, bookshops, etc.) Service businesses** (salons, repair services, consultancies, etc.) Restaurants & cafes** (food delivery, reservations, menu inquiries) Any business** using WhatsApp Business API for customer communication What it does This is a UNIVERSAL template - it works for ANY business by simply updating the product categories, company information, and response templates. No coding knowledge required for basic customization! The workflow automates WhatsApp customer support through intelligent routing and AI assistance: Receives WhatsApp messages via WhatsApp Business API webhook trigger Parses message data extracting user info, chat ID, and message text Classifies intent using pattern matching to determine what the customer wants (product inquiry, contact info, support, greeting, etc.) Routes intelligently to the most appropriate response handler: Product inquiries β Pre-built catalog responses with pricing and links Contact information β Static company details (address, phone, hours) Complex queries β AI agent with full company context Maintains conversation context using memory to remember previous messages Sends formatted responses back to the customer via WhatsApp with markdown formatting The hybrid approach (pre-built responses + AI) balances speed, cost, and intelligence - common questions get instant answers while complex queries receive personalized AI assistance. How to set up Requirements You'll need: WhatsApp Business API** access (via Twilio, 360Dialog, Meta Cloud API, or other providers) Google Gemini API key** (for AI responses) - Get API key Google Docs** (optional - for product catalog reference) n8n instance** with WhatsApp nodes installed Setup Steps Configure WhatsApp Business API Sign up with a WhatsApp Business API provider (Twilio, 360Dialog, or Meta) Get your API credentials (phone number ID, access token, webhook verify token) Add credentials to n8n's WhatsApp node Copy the webhook URL from n8n and configure it in your provider's dashboard Customize Company Information Open the "Build AI System Prompt" node Replace all placeholder text with your actual company details: Company name Address and phone numbers Email and website Product categories and brands Policies (COD, warranty, returns, delivery) Store hours Configure Product Responses Edit the "Generate Product Response" node Replace the sample products with your actual catalog: Product names and specifications Prices (update currency if not using INR) Product URLs from your website Add/remove product categories as needed Update Contact Details Edit the "Generate Contact Info Response" node Add your complete contact information Update store hours and addresses Set Up AI Credentials Add your Google Gemini API key to the credential manager (Optional) Connect Google Docs if you want to use a product catalog document Activate and Test Activate the workflow in n8n Send test messages to your WhatsApp Business number Test different intents: greetings, product questions, contact requests Verify responses are accurate and timely WhatsApp Business API Providers Option 1: Meta Cloud API (Official, free for moderate usage) Sign up at: https://developers.facebook.com/ Requires Facebook Business account Best for: Small to medium businesses Option 2: Twilio (Reliable, paid service) Sign up at: https://www.twilio.com/whatsapp Pay-per-message pricing Best for: Businesses needing high reliability Option 3: 360Dialog (WhatsApp-focused) Sign up at: https://www.360dialog.com/ Competitive pricing Best for: WhatsApp-heavy businesses Option 4: MessageBird, Vonage, others Various pricing and features Research and compare based on your needs How it works Intent Classification System The workflow uses keyword pattern matching to classify user intent into these categories: Priority 1: Contact Information (highest priority) Triggers: "where is store", "address", "contact", "phone number" Response: Static contact details Why first: Users asking for contact info need immediate, accurate answers Priority 2: Greetings Triggers: "hi", "hello", "hey", "good morning" Response: Friendly welcome with menu options Helps: Sets a positive tone for the conversation Priority 3: Product Inquiries Triggers: Category keywords (monitor, processor, GPU, RAM, etc.) Response: Pre-built catalog with products, prices, and links Categories: Customizable based on your products Priority 4: AI Fallback Triggers: Everything else (comparisons, complex questions, multi-step queries) Response: Google Gemini AI with company knowledge Features: Conversation memory, personalized recommendations Response Architecture Pre-Built Responses (Fast & Cost-Effective) Instant answers (no API calls) Handles 70-80% of queries Consistent, accurate information No ongoing costs Used for: Product lists, contact info, FAQs AI Agent (Intelligent & Flexible) Handles complex questions Maintains conversation context Provides personalized recommendations Adapts to different query styles Used for: Comparisons, custom builds, technical questions Conversation Memory The workflow uses buffer window memory to remember recent conversation: Stores last 10 messages per user Enables multi-turn conversations AI can reference previous questions Creates more natural interactions Memory is user-specific (isolated by user ID) Message Flow Example User: "Hi" β Intent: greeting β Response: Welcome message with menu User: "Show me monitors" β Intent: product_inquiry (monitors) β Response: Pre-built list of monitors with prices User: "Which one is best for gaming?" β Intent: general_inquiry (complex) β Response: AI analyzes previous context (monitors) and recommends gaming-focused option User: "What's your address?" β Intent: contact_info β Response: Complete contact details How to customize the workflow STEP 1: Customize Product Categories The workflow comes with example categories for multiple business types. Replace them with YOUR categories: For a Fashion Store: const categories = [ { pattern: /(shirt|tshirt|top)/i, category: 'tops' }, { pattern: /(jeans|pants|trousers)/i, category: 'bottoms' }, { pattern: /(dress|gown|kurti)/i, category: 'dresses' }, { pattern: /(shoe|footwear|heels)/i, category: 'shoes' }, ]; For a Grocery Store: const categories = [ { pattern: /(vegetable|veggies)/i, category: 'vegetables' }, { pattern: /(fruit|fruits)/i, category: 'fruits' }, { pattern: /(dairy|milk|cheese)/i, category: 'dairy' }, { pattern: /(snack|chips|biscuit)/i, category: 'snacks' }, ]; For a Beauty/Cosmetics Store: const categories = [ { pattern: /(skincare|cream|serum)/i, category: 'skincare' }, { pattern: /(makeup|lipstick|foundation)/i, category: 'makeup' }, { pattern: /(perfume|fragrance)/i, category: 'perfumes' }, { pattern: /(hair|shampoo|conditioner)/i, category: 'haircare' }, ]; For a Home Furniture Store: const categories = [ { pattern: /(sofa|couch)/i, category: 'sofas' }, { pattern: /(bed|mattress)/i, category: 'bedroom' }, { pattern: /(table|desk|dining)/i, category: 'tables' }, { pattern: /(chair|seating)/i, category: 'chairs' }, ]; For a Restaurant: const categories = [ { pattern: /(pizza|italian)/i, category: 'italian' }, { pattern: /(burger|sandwich)/i, category: 'fast_food' }, { pattern: /(biryani|curry|indian)/i, category: 'indian' }, { pattern: /(dessert|sweet|ice cream)/i, category: 'desserts' }, ]; STEP 2: Customize Product Responses Update the "Generate Product Response" node with YOUR actual products: Example for Fashion Store: if (category === 'tops') { response = Hi ${userName}! Check out our TOPS collection:\\n\\n; response += π Cotton Casual T-Shirt\\n π° βΉ499\\n π¨ 5 colors available\\n π yourstore.com/tshirts\\n\\n; response += π Formal Shirt\\n π° βΉ899\\n π Buy 2 Get 20% OFF\\n π yourstore.com/shirts\\n\\n; } Example for Grocery Store: if (category === 'vegetables') { response = Fresh VEGETABLES available, ${userName}:\\n\\n; response += π₯ Fresh Carrots (1kg)\\n π° βΉ40\\n π± Organic\\n\\n; response += π Tomatoes (1kg)\\n π° βΉ30\\n β Farm Fresh\\n\\n; } Example for Restaurant: if (category === 'italian') { response = Delicious ITALIAN dishes, ${userName}:\\n\\n; response += π Margherita Pizza\\n π° βΉ299\\n π¨βπ³ Chef's Special\\n\\n; response += π Creamy Alfredo Pasta\\n π° βΉ349\\n π₯ Bestseller\\n\\n; } STEP 3: Update Company Information Edit the "Build AI System Prompt" node: For a Boutique: const systemPrompt = `You are a customer service assistant for Elegant Threads Boutique. COMPANY INFORMATION: Business: Women's Designer Clothing Boutique Products: Ethnic wear, western wear, accessories Price Range: βΉ1,500 - βΉ15,000 Speciality: Custom tailoring available Store Address: Shop 12, Fashion Street, Mumbai Phone: +91 98XXXXXXXX Delivery: Pan-Mumbai, 2-3 days Returns: 7-day no-questions-asked return policy `; For a Tech Store: const systemPrompt = `You are customer support for TechHub Electronics. COMPANY INFORMATION: Business: Consumer Electronics Retailer Products: Smartphones, laptops, accessories, home appliances Price Range: βΉ500 - βΉ2,00,000 Speciality: Same-day delivery in Delhi NCR Warranty: Extended warranty on all electronics Store: Connaught Place, New Delhi Phone: +91 11-XXXXXXXX `; For a Bakery: const systemPrompt = `You are the assistant for Sweet Delights Bakery. COMPANY INFORMATION: Business: Fresh Baked Goods & Custom Cakes Products: Cakes, pastries, cookies, bread Price Range: βΉ50 - βΉ3,000 Speciality: Custom cakes for all occasions (24hrs notice) Store: Baker Street, Bangalore Phone: +91 80-XXXXXXXX Delivery: Free above βΉ500 within 5km `; Additional Customization Options Change AI Model Replace Google Gemini with other LLM providers: OpenAI GPT-4**: Best for nuanced understanding Anthropic Claude**: Strong at following instructions Llama** (self-hosted): Cost-effective for high volume Simply swap the "Google Gemini Chat Model" node with your preferred model. Add More Intents Extend the intent classification in the "Classify User Intent" node: // Add order tracking if (/track.order|order.status|where.*order/i.test(text)) { intent = 'order_tracking'; } // Add complaint handling if (/complaint|unhappy|problem|issue|refund/i.test(text)) { intent = 'complaint'; } // Add shipping questions if (/shipping|delivery|courier|when.*arrive/i.test(text)) { intent = 'shipping_inquiry'; } Then add corresponding response nodes in the routing switch. Integrate with CRM Connect to HubSpot: Add HubSpot node after intent classification Log every conversation as a ticket Create contacts automatically Track customer journey Connect to Salesforce: Use Salesforce node to create leads Update opportunity stages based on intent Log interactions in Activity History Connect to Airtable: Store conversations in Airtable database Analyze common questions Build knowledge base from real conversations Add Multi-Language Support Method 1: Google Translate API Detect message language Translate to English for processing Translate response back to user's language Method 2: Multilingual AI Add language preference to AI prompt Train AI on multilingual responses Support major languages natively Rich Media Responses Send images: return [{ chatId: chatId, image: 'https://yoursite.com/product.jpg', caption: 'Check out this product!' }]; Send documents: Product catalogs (PDF) Warranty cards Invoice copies Installation guides Send location pins: Store locations Delivery tracking Service centers Human Handoff Logic Add escalation for complex issues: // Check if AI can't help if (complexityScore > 8 || sentiment === 'angry') { // Notify human agent // Transfer conversation // Set status: 'awaiting_agent' } Integrate with: Intercom for live chat handoff Slack for agent notifications Zendesk for ticket creation Connect to Inventory Real-time stock checking: Query your database for availability Show "In Stock" / "Out of Stock" status Suggest alternatives for unavailable products Notify customers when items are restocked Dynamic pricing: Pull current prices from database Apply promotional discounts automatically Show time-sensitive offers Add Analytics Track metrics: Messages per day/week/month Most common intents AI usage vs. pre-built responses Average response time Customer satisfaction scores Integration options: Google Analytics for website tracking Mixpanel for event tracking Custom dashboard in Grafana Google Sheets for simple logging Business Hours Management Add business hours logic: const now = new Date(); const hour = now.getHours(); const isBusinessHours = (hour >= 10 && hour < 20); // 10 AM - 8 PM if (!isBusinessHours) { return [{ response: "We're currently closed. Our hours are 10 AM - 8 PM. We'll respond when we open!" }]; } A/B Testing Responses Test different response styles: Formal vs. casual tone With/without emojis Short vs. detailed answers Different CTAs Track which versions lead to more sales/conversions. Tips for best results 1. Start Simple Begin with 3-5 main intents Add more as you see common patterns Don't over-complicate the initial setup 2. Monitor and Iterate Review conversations weekly Identify missed intents Refine pattern matching Update product information regularly 3. Balance Pre-Built vs. AI Use pre-built for: FAQs, product lists, contact info (fast, cheap) Use AI for: Comparisons, complex queries, personalization (slower, costs money) Aim for 70-80% pre-built, 20-30% AI 4. Optimize Response Times Pre-built responses are instant AI responses take 2-5 seconds Set user expectations ("Let me check that for you...") 5. Test Different Scenarios Happy path (normal inquiries) Edge cases (misspellings, slang) Multi-turn conversations Multiple topics in one message 6. Keep Responses Concise WhatsApp users prefer short messages Use formatting (bold, bullets) for readability Break long responses into multiple messages 7. Maintain Brand Voice Customize AI system prompt with your brand personality Use consistent tone across all responses Include brand-appropriate emojis 8. Handle Failures Gracefully Add error handling for API failures Have fallback responses ready Always offer human contact option 9. Respect Privacy Don't store sensitive information Comply with GDPR/local privacy laws Allow users to delete their data 10. Monitor Costs Track Gemini API usage Set spending alerts Optimize prompt length to reduce token usage Common use cases across industries Fashion & Apparel Store Answer size and fit questions Share new collection arrivals Check stock availability by size/color Process exchange requests Share styling tips Electronics & Tech Store Provide product specifications Compare different models Check warranty information Share installation guides Handle technical support queries Grocery & Food Store Check product availability Share daily fresh stock updates Take bulk orders Provide recipe suggestions Handle delivery slot bookings Beauty & Cosmetics Recommend products for skin types Share ingredient information Explain usage instructions Handle shade/color queries Process return for wrong products Home Furniture Store Share dimensions and specifications Check delivery timelines Provide assembly instructions Schedule store visits Custom furniture inquiries Restaurant & Cafe Share menu and prices Take table reservations Handle takeaway orders Answer dietary restriction questions Share daily specials Jewelry Store Share designs and prices Book appointments for trials Check customization options Verify metal purity/certifications Handle repair inquiries Bookstore Check book availability Take pre-orders for new releases Recommend books by genre Share reading lists Handle exchange requests Important Notes: This workflow requires WhatsApp Business API (not regular WhatsApp Business app) WhatsApp Business API typically requires business verification Message rates and limits vary by provider Test thoroughly before deploying to customers Always provide a way to reach human support Getting Started Tip: Start with just contact info and product inquiries. Once that works smoothly, add AI responses for complex queries. Gradually expand based on actual customer needs you observe in conversations.
by Jitesh Dugar
Jotform AI-Powered Loan Application & Pre-Approval Automation System Transform manual loan processing into same-day pre-approvals - achieving 50% faster closings, 90% reduction in manual review time, and automated underwriting decisions with AI-powered financial analysis and instant applicant notifications. What This Workflow Does Revolutionizes mortgage and loan processing with AI-driven financial analysis and automated decision workflows: π Digital Application Capture - Jotform collects complete applicant data, income, employment, and loan details π€ AI Financial Analysis - GPT-4 calculates debt-to-income ratio, loan-to-value ratio, and approval likelihood π³ Automated Credit Assessment - Instant credit score evaluation and payment history analysis π Risk Scoring - AI assigns 1-100 risk scores based on multiple financial factors β Intelligent Routing - Automatic pre-approval, conditional approval, or denial based on lending criteria π§ Instant Notifications - Applicants receive approval letters within minutes of submission π Underwriter Alerts - Pre-approved loans automatically route to loan officers with complete analysis π Document Tracking - Required documents list generated based on application specifics π Closing Scheduling - Approved loans trigger closing coordination workflows π Complete Audit Trail - Every application logged with financial metrics and decision rationale Key Features AI Underwriting Analyst: GPT-4 evaluates loan applications across 10+ financial dimensions including debt ratios, risk assessment, and approval recommendations Debt-to-Income Calculation: Automatically calculates DTI ratio and compares against lending standards (43% threshold for qualified mortgages) Loan-to-Value Analysis: Evaluates down payment adequacy and property value against loan amount requested Credit Score Integration: Simulated credit assessment (ready for real credit bureau API integration like Experian, Equifax, TransUnion) Approval Likelihood Scoring: AI predicts approval probability as high/medium/low based on complete financial profile Risk Assessment: 1-100 risk score considers income stability, debt levels, credit history, and employment status Interest Rate Recommendations: AI suggests appropriate rate ranges based on applicant qualifications Conditional Approval Logic: Identifies specific requirements needed for final approval (additional documentation, debt paydown, etc.) Multi-Path Routing: Different workflows for pre-approved (green path), conditional (yellow path), and denied (red path) applications Monthly Payment Estimates: AI calculates estimated mortgage payments including principal, interest, taxes, and insurance Employment Verification Tracking: Flags employment status and stability in approval decision Document Requirements Generator: Custom list of required documents based on applicant situation and loan type Underwriter Dashboard Integration: Pre-approved applications automatically notify underwriters with complete financial summary Applicant Communication: Professional, branded emails for every outcome (pre-approval, conditional, denial) Alternative Options for Denials: Denied applicants receive constructive guidance on improving qualifications Compliance Ready: Decision rationale documented for regulatory compliance and audit requirements Perfect For Mortgage Lenders: Banks and credit unions processing home loan applications (purchase, refinance, HELOC) Commercial Lenders: Business loan and commercial real estate financing institutions Auto Finance Companies: Car dealerships and auto loan providers needing instant credit decisions Personal Loan Providers: Fintech companies and online lenders offering consumer loans Credit Unions: Member-focused financial institutions streamlining loan approval processes Mortgage Brokers: Independent brokers managing applications for multiple lenders Hard Money Lenders: Alternative lenders with custom underwriting criteria Student Loan Services: Educational financing with income-based qualification What You'll Need Required Integrations Jotform - Loan application form (free tier works, Pro recommended for file uploads) Create your form for free on Jotform using this link: https://www.jotform.com OpenAI API - GPT-4 for AI financial analysis and underwriting decisions (approximately 0.30-0.50 USD per application) Gmail - Automated notifications to applicants and underwriters Google Sheets - Loan application database and pipeline tracking Optional Integrations (Recommended for Production) Credit Bureau APIs - Experian, Equifax, or TransUnion for real credit pulls Document Management - DocuSign, HelloSign for e-signatures and document collection Property Appraisal APIs - Automated valuation models for property verification Calendar Integration - Calendly or Google Calendar for closing date scheduling CRM Systems - Salesforce, HubSpot for lead management and follow-up Loan Origination Software (LOS) - Encompass, Calyx, BytePro integration Quick Start Import Template - Copy JSON and import into n8n Add OpenAI Credentials - Set up OpenAI API key (GPT-4 required for accurate underwriting) Create Jotform Loan Application: Full Name (q3_fullName) Email (q4_email) Phone (q5_phone) Social Security Number (q6_ssn) - encrypted field Monthly Income (q7_monthlyIncome) - number field Monthly Debts (q8_monthlyDebts) - number field (credit cards, car loans, student loans) Loan Amount Requested (q9_loanAmount) - number field Down Payment (q10_downPayment) - number field Property Value (q11_propertyValue) - number field Employment Status (q12_employmentStatus) - dropdown (Full-time, Part-time, Self-employed, Retired) Additional fields: Date of Birth, Address, Employer Name, Years at Job, Property Address Configure Gmail - Add Gmail OAuth2 credentials (same for all 4 Gmail nodes) Setup Google Sheets: Create spreadsheet with "Loan_Applications" sheet Replace YOUR_GOOGLE_SHEET_ID in workflow 16 columns auto-populate: timestamp, applicationId, applicantName, email, phone, loanAmount, downPayment, monthlyIncome, monthlyDebts, creditScore, dtiRatio, ltvRatio, riskScore, approvalStatus, monthlyPayment, interestRate Customize Approval Criteria (Optional): Edit "Check Approval Status" node Adjust credit score minimum (default: 680) Modify DTI threshold (default: 43%) Set LTV requirements Configure Credit Integration: Replace "Simulate Credit Check" node with real credit bureau API Or keep simulation for testing/demo purposes Brand Email Templates: Update company name, logo, contact information Customize approval letter formatting Add compliance disclosures as required Set Underwriter Email: Update underwriter contact in "Notify Underwriter" node Add CC recipients for loan ops team Test Workflow - Submit test applications with different scenarios: High income, low debt (should pre-approve) Moderate income, high debt (should conditional) Low income, excessive debt (should deny) Compliance Review - Have legal/compliance team review automated decision logic Go Live - Deploy form on website, share with loan officers, integrate with marketing Customization Options Loan Type Variations: Customize for conventional, FHA, VA, USDA, jumbo, or commercial loans Custom Underwriting Rules: Adjust DTI limits, credit minimums, LTV requirements per loan product Manual Review Triggers: Flag edge cases for manual underwriter review before automation Document Upload Integration: Add Jotform file upload fields for paystubs, tax returns, bank statements Income Verification APIs: Integrate with Plaid, Finicity, or Argyle for automated income verification Employment Verification: Connect to The Work Number or other employment databases Property Appraisal Automation: Integrate AVMs (Automated Valuation Models) from CoreLogic, HouseCanary Co-Borrower Support: Add fields and logic for joint applications with multiple income sources Business Loan Customization: Modify for business financials (revenue, EBITDA, business credit scores) Rate Shopping: Integrate rate tables to provide real-time interest rate quotes Pre-Qualification vs Pre-Approval: Create lighter version for soft credit pull pre-qualification Conditional Approval Workflows: Automated follow-up sequences for document collection Closing Coordination: Integrate with title companies, attorneys, closing services Regulatory Compliance: Add TRID timeline tracking, adverse action notices, HMDA reporting Multi-Language Support: Translate forms and emails for Spanish, Chinese, other languages Expected Results Same-day pre-approval - Applications processed in minutes vs 3-5 days manual review 50% faster closings - Streamlined process reduces time from application to closing 90% reduction in manual review time - AI handles initial underwriting, humans only review exceptions 95% applicant satisfaction - Instant decisions and clear communication improve experience 75% reduction in incomplete applications - Required fields force complete submission 60% fewer applicant calls - Automated status updates reduce "where's my application" inquiries 100% application tracking - Complete audit trail from submission to final decision 40% increase in loan officer productivity - Focus on high-value activities, not data entry 80% decrease in approval errors - Consistent AI analysis eliminates human calculation mistakes 30% improvement in compliance - Automated documentation and decision rationale for audits Pro Tips Test with Multiple Scenarios: Submit applications with various income/debt combinations to validate routing logic works correctly Adjust DTI Thresholds for Loan Type: Conventional mortgages: 43% max. FHA loans: 50% max. Auto loans: 35-40% max. Personal loans: 40-45% max. Credit Score Tiers Matter: Build rate sheets with score tiers (740+: prime, 680-739: near-prime, 620-679: subprime, below 620: denied or hard money) Income Verification Priorities: W-2 employees (easy), self-employed (complex), commission/bonus heavy (average 2 years), rental income (75% counts), gig economy (difficult) Document Checklist Customization: Vary required docs by loan type, amount, and risk profile to avoid over-documentation for low-risk loans Conditional Approval vs Outright Denial: When in doubt, use conditional - gives applicants path to approval and keeps them in pipeline Adverse Action Notices: For denials, include specific reasons (per FCRA requirements) and instructions for disputing credit report errors Pre-Qualification vs Pre-Approval: Pre-qual uses soft credit pull (no impact on score), pre-approval uses hard pull (official decision) Co-Borrower Logic: When DTI is high, automatically suggest co-borrower as option to strengthen application Rate Lock Automation: Pre-approved applications should include rate lock expiration date (typically 30-60 days) Property Appraisal Triggers: Auto-order appraisals for pre-approved mortgage applications to keep process moving Underwriter Dashboard: Build Google Sheets dashboard with filters for underwriters to sort by approval status, loan amount, date Compliance Monitoring: Regular audits of AI decisions to ensure no discriminatory patterns (disparate impact analysis) Customer Service Integration: Link application IDs to support tickets so agents can quickly pull up loan status Marketing Attribution: Track lead sources in form to measure which marketing channels produce best-quality applicants Learning Resources This workflow demonstrates advanced automation: AI Agents for Financial Analysis: Multi-dimensional loan qualification using BANT-style underwriting criteria Complex Conditional Logic: Multi-path routing with nested IF conditions for approval/conditional/denial workflows Financial Calculations: Automated DTI, LTV, DSCR, and payment estimation algorithms Risk Scoring Models: Comprehensive risk assessment combining credit, income, debt, and employment factors Decision Documentation: Complete audit trail with AI reasoning for regulatory compliance Email Customization: Dynamic content generation based on approval outcomes and applicant situations Data Pipeline Design: Structured data flow from application through analysis to decision and notification Simulation vs Production: Credit check node designed for easy swap from simulation to real API integration Parallel Processing: Simultaneous logging and notification workflows for efficiency Workflow Orchestration: Coordination of multiple decision points and communication touchpoints Questions or customization? The workflow includes detailed sticky notes explaining each analysis component and decision logic. Template Compatibility β n8n version 1.0+ β Works with n8n Cloud and Self-Hosted β Production-ready for financial institutions β Fully customizable for any loan type Compliance Note: This template is designed for demonstration and automation purposes. Always consult with legal counsel to ensure compliance with TILA, RESPA, ECOA, FCRA, and applicable state lending regulations before deploying in production.