by Vinay Gangidi
Cash Reconciliation with AI This template automates daily cash reconciliation by comparing your open invoices against bank statement transactions. Instead of manually scanning statements line by line, the workflow uses AI to: Match transactions to invoices and assign confidence scores Flag unapplied or review-needed payments Produce a reconciliation table with clear metrics (match %, unmatched count, etc.) The end result: faster cash application, fewer errors, and better visibility into your cash flow. Good to know Each AI transaction match call will consume credits from your OpenAI account. Check OpenAI pricing for costs. OCR is used to extract data from PDF bank statements, so you’ll need a Mistral OCR API key. This workflow assumes invoices are stored in an Excel or CSV file. You may need to tweak column names to match your file headers. How it works Import files:The workflow pulls your invoice file (Excel/CSV) and daily bank statement (from OneDrive, Google Drive, or local storage). Extract and normalize data: OCR is applied to bank statements if needed. Both data sources are cleaned and aligned into comparable formats. AI matching: The AI agent compares statement transactions against invoice records, assigns a confidence score, and flags items that require manual review. Reconciliation output:A ready-made table shows matched invoices (with amounts and confidence), unmatched items, and summary stats. How to use Start with the manual trigger node to test the flow. Once validated, replace it with a schedule trigger to run daily. Adjust thresholds (like date tolerances or amount variances) in the code nodes to fit your business rules. Review the reconciliation table each day most of the work is automated, you just handle exceptions. Requirements OpenAI API key Mistral OCR API key (for PDF bank statements) Microsoft OneDrive API key and Microsoft Excel API key Access to your invoice file (Excel/CSV) and daily bank statement source Setup steps Connect accounts: Enter your API keys (OpenAI, Mistral OCR, OneDrive, Excel). Configure input nodes: Point the Excel/CSV node to your invoice file. Connect the Get Bank Statement node to your statement storage. Configure AI agent: Add your OpenAI API credentials to the AI node. Customize if needed Update column mappings if your file uses different headers. Adjust matching thresholds and tolerance logic.
by Gabriela Macovei
WhatsApp Receipt OCR & Data Extraction Suite Categories: Accounting Automation • OCR Processing • AI Data Extraction • Business Tools This workflow transforms WhatsApp into a fully automated receipt-processing system using advanced OCR, multi-model AI parsing, and structured data storage. By combining LlamaParse, Claude (OpenRouter), Gemini, Google Sheets, and Twilio, it eliminates manual data entry and delivers instant, reliable receipt digitization for any business. What This Workflow Does When a user sends a receipt photo or PDF via WhatsApp, the automation: Receives the file through Twilio WhatsApp Uploads and parses it with LlamaParse (high-res OCR + invoice preset) Extracts structured data using Claude + Gemini + a strict JSON parser Cleans and normalizes the data (dates, ABN, vendor, tax logic) Uploads the receipt to Google Drive Logs the extracted fields into a Google Sheet Replies to the user on WhatsApp with the extracted details Asks for confirmation via quick-reply buttons Updates the Google Sheet based on user validation The result is a fast, scalable, human-free system for converting raw receipt photos into clean, structured accounting data. Key Benefits No friction for users:** receipts are submitted simply by sending a WhatsApp message. High-accuracy OCR:** LlamaParse extracts text, tables, totals, vendors, tax, and ABN with impressive reliability. Enterprise-grade data validation:** complex logic ensures the correct interpretation of GST, included taxes, or unidentified tax amounts. Multi-model extraction:** Claude and Gemini both analyse the OCR output for more reliable result. We have one primary LLM and a secondary one. Hands-off accounting:** every receipt becomes a standardized row in Google Sheets. Two-way WhatsApp communication:** users can confirm or reject extracted data instantly. Scalable architecture:** perfect for businesses handling dozens or thousands of receipts monthly. How It Works (Technical Overview) 1. Twilio → Webhook Trigger The workflow starts when a WhatsApp message containing a media file hits your Twilio webhook. 2. Initial Google Sheets Logging The MessageSid is appended to your tracking sheet to ensure every receipt is traceable. 3. LlamaParse OCR The file is sent to LlamaParse with the invoice preset, high-resolution OCR, and table extraction enabled. The workflow checks job completion before moving further. 4. LLM Data Extraction The OCR markdown is analyzed using: Claude Sonnet 4.5 (via OpenRouter) Gemini 2.5 Pro A strict structured JSON output parser Custom JS cleanup logic The system extracts: Vendor Cost Tax (with multi-rule Australian GST logic) Currency Date (parsed + normalized) ABN (validated and digit-normalized) 5. Google Drive Integration The uploaded receipt is stored, shared, and linked back to the record in Sheets. 6. Google Sheets Update Fields are appended/updated following a clean schema: Vendor Cost Tax Date Currency ABN Public drive link Status (Confirmed / Not confirmed) 7. User Response Flow The user receives a summary of extracted data via WhatsApp. Buttons allow them to approve or reject accuracy. The Google Sheet updates accordingly. Target Audience This workflow is ideal for: Accounting & bookkeeping firms Outsourced finance departments Small businesses tracking expenses Field workers submitting receipts Automation agencies offering DFY systems CFOs wanting real-time expense visibility Use Cases Expense reconciliation Automated bookkeeping Receipt digitization & compliance Real-time employee expense submission Multi-client automation at accounting agencies Required Integrations Twilio WhatsApp** (Business API number + webhook) LlamaParse API** OpenRouter (Claude Sonnet)** Google Gemini API** Google Drive** Google Sheets** Setup Instructions (High-Level) Import the n8n workflow. Connect your Twilio WhatsApp account. Add API credentials for: LlamaParse OpenRouter Google Gemini Google Drive Google Sheets Create your target Google Sheet. Configure your WhatsApp webhook URL in Twilio. Test with a sample receipt. Why This System Works Users send receipts using a tool they already use daily (WhatsApp). LlamaParse provides state-of-the-art OCR for low-quality receipts. Using multiple LLMs drastically increases accuracy for vendor, ABN, and tax extraction. Advanced normalization logic ensures data is clean and accounting-ready. Google Sheets enables reliable storage, reporting, and future integrations. End-to-end automation replaces hours of manual work with instant processing. Watch My Complete Build Process Want to see exactly how I built this entire AI design system from scratch? I walk through the complete development process on my YouTube channel
by Muhammad Asadullah
Daily Blog Automation Workflow Fully automated blog creation system using n8n + AI Agents + Image Generation Overview This workflow automates the entire blog creation pipeline—from topic research to final publication. Three specialized AI agents collaborate to produce publication-ready blog posts with custom images, all saved directly to your Supabase database. How It Works 1. Research Agent (Topic Discovery) Triggers**: Runs on schedule (default: daily at 4 AM) Process**: Fetches existing blog titles from Supabase to avoid duplicates Uses Google Search + RSS feeds to identify trending topics in your niche Scrapes competitor content to find content gaps Generates detailed topic briefs with SEO keywords, search intent, and differentiation angles Output**: Comprehensive research document with SERP analysis and content strategy 2. Writer Agent (Content Creation) Triggers**: Receives research from Agent 1 Process**: Writes full blog article based on research brief Follows strict SEO and readability guidelines (no AI fluff, natural tone, actionable content) Structures content with proper HTML markup Includes key sections: hook, takeaways, frameworks, FAQs, CTAs Places image placeholders with mock URLs (https://db.com/image_1, etc.) Output**: Complete JSON object with title, slug, excerpt, tags, category, and full HTML content 3. Image Prompt Writer (Visual Generation) Triggers**: Receives blog content from Agent 2 Process**: Analyzes blog content to determine number and type of images needed Generates detailed 150-word prompts for each image (feature image + content images) Creates prompts optimized for Nano-Banana image model Names each image descriptively for SEO Output**: Structured prompts for 3-6 images per blog post 4. Image Generation Pipeline Process**: Loops through each image prompt Generates images via Nano-Banana API (Wavespeed.ai) Downloads and converts images to PNG Uploads to Supabase storage bucket Generates permanent signed URLs Replaces mock URLs in HTML with real image URLs Output**: Blog HTML with all images embedded 5. Publication Final blog post saved to Supabase blogs table as draft Ready for immediate publishing or review Key Features ✅ Duplicate Prevention: Checks existing blogs before researching new topics ✅ SEO Optimized: Natural language, proper heading structure, keyword integration ✅ Human-Like Writing: No robotic phrases, varied sentence structure, actionable advice ✅ Custom Images: Generated specifically for each blog's content ✅ Fully Structured: JSON output with all metadata (tags, category, excerpt, etc.) ✅ Error Handling: Automatic retries with wait periods between agent calls ✅ Tool Integration: Google Search, URL scraping, RSS feeds for research Setup Requirements 1. API Keys Needed Google Gemini API**: For Gemini 2.5 Pro/Flash models (content generation/writing) Groq API (optional)**: For Kimi-K2-Instruct model (research/writing) Serper.dev API**: For Google Search (2,500 free searches/month) Wavespeed.ai API**: For Nano-Banana image generation Supabase Account**: For database and image storage 2. Supabase Setup Create blogs table with fields: title, slug, excerpt, category, tags, featured_image, status, featured, content Create storage bucket for blog images Configure bucket as public or use signed URLs 3. Workflow Configuration Update these placeholders: RSS Feed URLs**: Replace [your website's rss.xml] with your site's RSS feed Storage URLs**: Update Supabase storage paths in "Upload object" and "Generate presigned URL" nodes API Keys**: Add your credentials to all HTTP Request nodes Niche/Brand**: Customize Research Agent system prompt with your industry keywords Writing Style**: Adjust Writer Agent prompt for your brand voice Customization Options Change Image Provider Replace the "nano banana" node with: Gemini Imagen 3/4 DALL-E 3 Midjourney API Any Wavespeed.ai model Adjust Schedule Modify "Schedule Trigger" to run: Multiple times daily Specific days of week On-demand via webhook Alternative Research Tools Replace Serper.dev with: Perplexity API (included as alternative node) Custom web scraping Different search providers Output Format { "title": "Your SEO-Optimized Title", "slug": "your-seo-optimized-title", "excerpt": "Compelling 2-3 sentence summary with key benefits.", "category": "Your Category", "tags": ["tag1", "tag2", "tag3", "tag4"], "author_name": "Your Team Name", "featured": false, "status": "draft", "content": "...complete HTML with embedded images..." } Performance Notes Average runtime**: 15-25 minutes per blog post Cost per post**: ~$0.10-0.30 (depending on API usage) Image generation**: 10-15 seconds per image with Nano-Banana Retry logic**: Automatically handles API timeouts with 5-15 minute wait periods Best Practices Review Before Publishing: Workflow saves as "draft" status for human review Monitor API Limits: Track Serper.dev searches and image generation quotas Test Custom Prompts: Adjust Research/Writer prompts to match your brand Image Quality: Review generated images; regenerate if needed SEO Validation: Check slugs and meta descriptions before going live Workflow Architecture 3 Main Phases: Research → Writer → Image Prompts (Sequential AI Agent chain) Image Generation → Upload → URL Replacement (Loop-based processing) Final Assembly → Database Insert (Single save operation) Error Handling: Wait nodes between agents prevent rate limiting Retry logic on agent failures (max 2 retries) Conditional checks ensure content quality before proceeding Result: Hands-free blog publishing that maintains quality while saving 3-5 hours per post.
by Cheng Siong Chin
How It Works This workflow automates veterinary clinic operations and client communications for animal hospitals and veterinary practices managing appointments, inventory, and patient care. It solves the dual challenge of maintaining medical supply levels while delivering personalized pet care updates and appointment coordination. The system processes scheduled inventory data through AI-powered quality validation and restocking recommendations, then branches into two intelligent pathways: supplier coordination via email for replenishment, and client engagement through personalized appointment reminders, follow-up care instructions, and satisfaction surveys distributed via email and messaging platforms. This eliminates manual inventory tracking, reduces appointment no-shows, and ensures consistent post-visit care communication. Setup Steps Configure webhook or schedule trigger for veterinary management system inventory data sync Add AI model API keys for inventory quality validation Connect supplier email system with template configurations for automated purchase orders Set up client communication channels with appointment and care instruction templates Integrate customer database for pet records and appointment history Prerequisites Veterinary practice management software with API/webhook capabilities, AI service API access Use Cases Multi-location veterinary hospitals coordinating inventory across sites Customization Modify AI prompts for species-specific care instructions Benefits Reduces supply management time by 75%, prevents critical medication stockouts
by Cheng Siong Chin
How It Works This workflow automates hospital operational event management by intelligently processing incoming events and orchestrating appropriate responses across multiple hospital systems. Designed for hospital operations managers, healthcare IT teams, and clinical administrators, it solves the complex challenge of coordinating rapid responses to diverse hospital events including patient admissions, equipment alerts, staffing emergencies, and clinical escalations. The system receives event triggers via webhook, uses AI-powered orchestration to analyze event context and determine required actions, then intelligently routes tasks to appropriate systems including appointment scheduling, task management, and insurance verification. It calculates priority scores, assigns tasks, verifies insurance coverage, and merges results while masking sensitive PHI data for compliance. The workflow leverages Anthropic's Claude and multiple AI tools to ensure context-aware decision-making aligned with hospital protocols. Setup Steps Configure webhook URL endpoint for hospital event system integration Set up Anthropic API credentials for Claude model access in orchestration agent Configure Hospital Orchestration Agent Tool with your facility's event protocols Connect Schedule Appointment API with hospital scheduling system credentials Set up Task Management API integration for staff assignment system Configure Insurance Verification API with payer network access credentials Prerequisites Active Anthropic API account, hospital event management system with webhook capability Use Cases Patient admission coordination, equipment failure response, code blue orchestration Customization Modify orchestration agent prompts for facility-specific protocols Benefits Reduces event response time by 75%, ensures consistent protocol adherence
by Intuz
This n8n template from Intuz provides a complete solution to automate a powerful, AI-driven 'Chat with your PDF' bot on Telegram. It uses Retrieval-Augmented Generation (RAG) to allow users to upload documents, which are then indexed into a vector database, enabling the bot to answer questions based only on the provided content. Who's this workflow for? Researchers & Students Legal & Compliance Teams Business Analysts & Financial Advisors Anyone needing to quickly find information within large documents How it works This workflow has two primary functions: indexing a new document and answering questions about it. 1. Uploading & Indexing a Document: A user sends a PDF file to the Telegram bot. n8n downloads the document, extracts the text, and splits it into small, manageable chunks. Using Google Gemini, each text chunk is converted into a numerical representation (an "embedding"). These embeddings are stored in a Pinecone vector database, making the document's content searchable. The bot sends a confirmation message to the user that the document has been successfully saved. 2. Asking a Question (RAG): A user sends a regular text message (a question) to the bot. n8n converts the user's question into an embedding using Google Gemini. It then searches the Pinecone database to find the most relevant text chunks from the uploaded PDF that match the question. These relevant chunks (the "context") are sent to the Gemini chat model along with the original question. Gemini generates a new, accurate answer based only on the provided context and sends it back to the user in Telegram. Key Requirements to Use This Template 1. n8n Instance & Required Nodes: An active n8n account (Cloud or self-hosted). This workflow uses the official n8n LangChain integration (@n8n/n8n-nodes-langchain). If you are using a self-hosted version of n8n, please ensure this package is installed. 2. Telegram Account: A Telegram bot created via the BotFather, along with its API token. 3. Google Gemini AI Account: A Google Cloud account with the Vertex AI API enabled and an associated API Key. 4. Pinecone Account: A Pinecone account with an API key. You must have a vector index created in Pinecone. For use with Google Gemini's embedding-001 model, the index must be configured with 768 dimensions. Setup Instructions 1. Telegram Configuration: In the "Telegram Message Trigger" node, create a new credential and add your Telegram bot's API token. Do the same for the "Telegram Response" and "Telegram Response about Database" nodes. 2. Pinecone Configuration: In both "Pinecone Vector Store" nodes, create a new credential and add your Pinecone API key. In the "Index" field of both nodes, enter the name of your pre-configured Pinecone index (e.g., telegram). 3. Google Gemini Configuration: In all three Google Gemini nodes (Embeddings Google Gemini, Embeddings Google Gemini1, and Google Gemini Chat Model), create a new credential and add your Google Gemini (Palm) API key. 4. Activate and Use: Save the workflow and toggle the "Active" switch to ON. To use: First, send a PDF document to your bot. Wait for the confirmation message. Then, you can start asking questions about the content of that PDF. Connect with us Website: https://www.intuz.com/services Email: getstarted@intuz.com LinkedIn: https://www.linkedin.com/company/intuz Get Started: https://n8n.partnerlinks.io/intuz For Custom Workflow Automation Click here- Get Started
by Juan Carlos Cavero Gracia
This workflow transforms any video you drop into a Google Drive folder into a ready-to-publish YouTube upload. It analyzes the video with AI to craft 3 high-CTR title ideas, 3 long SEO-friendly descriptions (with timestamps), and 10–15 optimized tags. It then generates 4 thumbnail options using your face and lets you pick your favorite before auto-publishing to YouTube via Upload-Post. Who Is This For? YouTube Creators & Editors:** Ship videos with winning titles, thumbnails, and SEO in minutes. Agencies & Media Teams:** Standardize output and speed across channels and clients. Founders & Solo Makers:** Maintain consistent publishing with minimal manual work. What Problem Does It Solve? Producing SEO metadata and high-performing thumbnails is slow and inconsistent. This flow: Generates High-CTR Options:** 3 distinct angles for title/description/tags. Creates Thumbnails with Your Face:** 4 options ready for review in one pass. Auto-Publishes Safely:** Human selection gates reduce risk before going live. How It Works Google Drive Trigger: Watches a folder for new video files. AI Video Analysis (Gemini): Produces an in-depth Spanish description and timestamps. Concept Generation: Returns 3 JSON concepts (title, thumbnail prompt, description, tags). User Review #1: Pick your favorite concept in a simple form. Thumbnail Generation (fal.ai): Creates 4 thumbnails using your face (provided image URL). User Review #2: Choose the best thumbnail. Upload to YouTube (Upload-Post): Publishes the video with your chosen title, description, tags, and thumbnail. Setup Credentials (all offer free trials, no credit card required): Google Gemini (chat/vision for analysis) fal.ai API (thumbnail generation) Upload-Post ( Connect your Youtube channel and generate api keys) Google Drive OAuth (folder watch + file download) Provide Your Face Image URL(s): Used by fal.ai to integrate your face into thumbnails. Select the Google Drive Folder: Where you’ll drop videos to process. Pick & Publish: Use the built-in forms to choose concept and thumbnail. Requirements Accounts:** Google (Drive + Gemini), fal.ai, Upload-Post, n8n. API Keys:** Gemini, fal.ai; Upload-Post credentials; Google Drive OAuth. Assets:** At least one clear face image for thumbnails. Features Three SEO Angles:** Distinct title/description sets to test different intents. Rich Descriptions with Timestamps:** Ready for YouTube SEO and viewer navigation. Face-Integrated Thumbnails:** 4 options aligned with the selected title. Human-in-the-Loop Controls:** Approve concepts and thumbnails before publishing. Auto-Publish via Upload-Post:** One click to push live to YouTube. Start Free:** All API calls can run on free trials, no credit card required. Video demo https://www.youtube.com/watch?v=EOOgFveae-U
by Iela Media
Quick overview This workflow pulls Google Maps business results from SerpApi based on search queries stored in Airtable, visits each business website to extract contact emails, and adds the enriched business records back into Airtable. How it works Runs manually and searches Airtable for Google Maps scrape queries (search term and GPS coordinates). Paginates each query (start offsets) and calls SerpApi’s Google Maps Search API to fetch local business results. Cleans and deduplicates the SerpApi results, then keeps only businesses that include a website URL. Generates a prioritized list of pages to check per website (homepage plus common /contact and /about variations) and requests each page over HTTP with redirects enabled. Extracts email addresses from the returned HTML, filters out placeholders and suspicious/system emails, and stops further page checks once a valid email is found (or records a “Website Down”/no-email outcome). Merges the extracted email back into the original Google Maps business data, removes unneeded fields, and upserts the final record into Airtable. Setup Add a SerpApi credential and ensure your SerpApi plan supports Google Maps Search API requests. Add an Airtable Personal Access Token credential with access to the bases/tables used for “Google Maps Scrape Queries” (input) and “Google Maps Scraping” (output). Update the Airtable base/table IDs and the expected fields for the query table (for example, “Search Query” and “GPS Coordinates”). Review the Airtable upsert matching field (position) and adjust it if you need a different unique key to prevent unwanted overwrites.
by Pratyush Kumar Jha
Deep Multiline Icebreaker — AI-driven research + personalized cold outreach Deep Multiline Icebreaker automates high-quality, research-led outreach. Feed it a list of leads (emails + websites) and a short product brief via the built-in form; the workflow scrapes each company's site, extracts meaningful page content, uses GPT to produce concise page abstracts, aggregates insights, and then generates tailored, multi-line cold email bodies (JSON). Final outreach rows are appended automatically to a Google Sheet so you can review, sequence, or plug into your outreach stack. This template is built for SDRs, growth folks, and agencies who want dramatically better reply rates by replacing generic blasts with short, highly-specific icebreakers that reference subtle site signals. It’s opinionated (focuses on non-obvious details and concise, credible tone) but easy to tweak — prompts, output format, and the Google Sheet mapping are all editable inside n8n. How it works Form trigger — you submit product details, target designation, location, etc. Leads fetch — the workflow calls an external leads scraper (Apify act) to retrieve potential contacts. Filter & normalize — only rows with website + email proceed; links are normalized (relative/absolute handling). Scrape & convert — homepage and linked pages are fetched and converted to Markdown for clean input. Summarize (GPT) — each page is summarized into a two-paragraph abstract. Aggregate & generate — abstracts are aggregated and GPT generates a tailored multi-line icebreaker JSON (subject + body). Append to Google Sheets — resulting outreach content + lead metadata is appended to your sheet. Nodes of interest you can edit On form submission1 Leads Scraper1 Scrape Home1 Summarize Website Page1 Generate Multiline Icebreaker1 Add Row1 Quick Setup Guide 👉 Demo & Setup Video 👉 Sheet Template 👉 Course What you’ll need (credentials) OpenAI API key (used by Summarize Website Page1 and Generate Multiline Icebreaker1). Google Sheets OAuth (write access for Add Row1). Apify (or your leads-source) API token for Leads Scraper1 (the template calls an Apify act). Optional: outbound HTTP access from your n8n host to target websites. Recommended settings & best practices Limit batch sizes** (the template uses Limit1 set to 3 by default) — ramp the maxItems up slowly to respect rate limits and token costs. Prompt tweaks** — open the Generate Multiline Icebreaker1 prompt to tune tone, cost framing, or add product-specific selling points. Deduplication** — Remove Duplicate URLs1 is included; keep it ON to avoid repeated scraping. Privacy** — don’t store PII longer than necessary; if you store outreach drafts, ensure your Google Sheet access is restricted. Cost control** — set temperature lower (0–0.6) for more consistent outputs and monitor your OpenAI usage. Customization ideas Swap GPT model name or change prompt to produce shorter cold SMS or LinkedIn messages. Replace Apify with your own lead source (CSV upload, CRM query, or Airtable). Add an approval step (Slack/Email) before rows are appended to Google Sheets. Add a follow-up sequence generator that writes 2–3 follow-up messages per lead. Troubleshooting quick tips If pages return empty abstracts, check Request web page for URL1 and network access / user-agent restrictions. If outputs are malformed JSON, open the Generate Multiline Icebreaker1 node and validate the JSON output option. If Google Sheets fails, re-authorize the Google Sheets credential and ensure the sheet ID & sheet name are correct. Tags / Suggested listing fields outreach, lead-gen, sales-automation, openai, web-scraping, google-sheets
by BytezTech
Quick overview This workflow runs weekly and crawls your website sitemap, scrapes each page, generates page-specific FAQs with OpenAI GPT-4o, embeds the Q&A content using OpenAI text-embedding-3-small, and upserts the vectors into a Pinecone index to keep a RAG knowledge base in sync. How it works A weekly Schedule Trigger fires every Monday at midnight IST (cron: 30 18 * * 0) to start the sync pipeline automatically. The workflow fetches your XML sitemap index, parses it, and extracts all sub-sitemap URLs to discover every page on your website. All page URLs are merged, deduplicated, and filtered to remove assets, CDN files, admin paths, and third-party links — then batched in groups of 10 for efficient processing. Each page URL is scraped as raw HTML. Scripts, styles, nav, and footer tags are stripped, and clean content (title, meta description, H1–H3 headings, paragraphs, list items) is extracted up to 5,000 characters. Pages with fewer than 100 characters are skipped. The extracted page content is sent to GPT-4o with a structured prompt that generates topic-tagged FAQ pairs in JSON format (question, answer, topic, author). Each chunk gets a deterministic chunk_id based on URL + index to ensure idempotent re-runs. Each FAQ chunk is embedded using text-embedding-3-small (1536 dimensions) and upserted into Pinecone using the chunk_id as the vector ID. A 2-second wait between batches prevents API rate-limit errors. Setup Connect your OpenAI API credential — used for both GPT-4o FAQ generation and text-embedding-3-small embeddings. Select this credential in all OpenAI nodes inside the workflow. Connect your Pinecone API credential. Make sure your Pinecone index is already created with 1536 dimensions before running the workflow. Open the "Get Sitemap Index" node and replace the placeholder URL with your actual XML sitemap URL (e.g. https://yoursite.com/sitemap_index.xml). Open the "Upsert FAQ Chunks to Pinecone" node and set your Pinecone index name and namespace where FAQ vectors should be stored. Activate the workflow — it will run automatically every Monday at midnight IST, or you can trigger it manually anytime using the "Test Workflow" button. Requirements OpenAI API key (GPT-4o access + Embeddings API) Pinecone account with an index pre-created at 1536 dimensions A website with a valid XML sitemap index (e.g. sitemap_index.xml) n8n instance (cloud or self-hosted) Customization Schedule Trigger — change the cron expression to adjust sync frequency (daily, bi-weekly, etc.) Build GPT Request node — edit the system prompt to match your brand tone, company name, or FAQ format Flatten & Filter All URLs node — modify the skipList array to exclude specific paths (e.g. /blog, /admin, /careers) Loop URLs in Batches node — increase batchSize if your site has 100+ pages and your API limits allow Pinecone namespace — use different namespaces to separate FAQs by language, region, or product line Additional info This workflow uses deterministic chunk_id values (URL + FAQ index) so that every weekly re-run safely overwrites existing Pinecone vectors — no duplicates ever accumulate. It is fully compatible with any RAG-based AI chatbot that reads from Pinecone, including n8n AI Agent workflows using the Pinecone Vector Store node.
by Kevin Meneses
What this workflow does This workflow automatically monitors eBay Deals and sends Telegram alerts when relevant, high-quality deals are detected. It combines: Web scraping with Decodo** JavaScript pre-processing (no raw HTML sent to the LLM)** AI-based product classification and deal scoring** Rule-based filtering using price and score** Only valuable deals reach the final notification. How it works (overview) The workflow runs manually or on a schedule. The eBay Deals page is scraped using Decodo, which handles proxies and anti-bot protections. Decodo – Web Scraper for n8n JavaScript extracts only key product data (ID, title, price, URL, image). An AI Agent classifies each product and assigns a deal quality score (0–10). Price and score rules are applied. Matching deals are sent to Telegram. How to configure it 1. Decodo Add your Decodo API credentials to the Decodo node. Optionally change the target eBay URL. 2. AI Agent Add your LLM credentials (e.g. Google Gemini). No HTML is sent to the model — only compact, structured data. 3. Telegram Add your Telegram Bot Token. Set your chat_id in the Telegram node. Customize the alert message if needed. 4. Filtering rules Adjust price limits and minimum deal score in the IF node
by vinci-king-01
Product Price Monitor with Mailchimp and Baserow ⚠️ COMMUNITY TEMPLATE DISCLAIMER: This is a community-contributed template that uses ScrapeGraphAI (a community node). Please ensure you have the ScrapeGraphAI community node installed in your n8n instance before using this template. This workflow scrapes multiple e-commerce sites for product pricing data, stores the historical prices in Baserow, analyzes weekly trends, and emails a neatly formatted seasonal report to your Mailchimp audience. It is designed for retailers who need to stay on top of seasonal pricing patterns to make informed inventory and pricing decisions. Pre-conditions/Requirements Prerequisites Running n8n instance (self-hosted or n8n cloud) ScrapeGraphAI community node installed Mailchimp account with at least one audience list Baserow workspace with edit rights Product URLs or SKU list from target e-commerce platforms Required Credentials | Credential | Used By | Scope | |------------|---------|-------| | ScrapeGraphAI API Key | ScrapeGraphAI node | Web scraping | | Mailchimp API Key & Server Prefix | Mailchimp node | Sending emails | | Baserow API Token | Baserow node | Reading & writing records | Baserow Table Setup Create a table named price_tracker with the following fields: | Field Name | Type | Example | |------------|------|---------| | product_name | Text | “Winter Jacket” | | product_url | URL | https://example.com/winter-jacket | | current_price | Number | 59.99 | | scrape_date | DateTime | 2023-11-15T08:21:00Z | How it works This workflow scrapes multiple e-commerce sites for product pricing data, stores the historical prices in Baserow, analyzes weekly trends, and emails a neatly formatted seasonal report to your Mailchimp audience. It is designed for retailers who need to stay on top of seasonal pricing patterns to make informed inventory and pricing decisions. Key Steps: Schedule Trigger**: Fires every week (or custom CRON) to start the monitoring cycle. Code (Prepare URLs)**: Loads or constructs the list of product URLs to monitor. SplitInBatches**: Processes product URLs in manageable batches to avoid rate-limit issues. ScrapeGraphAI**: Scrapes each product page and extracts the current price and name. If (Price Found?)**: Continues only if scraping returns a valid price. Baserow**: Upserts the scraped data into the price_tracker table. Code (Trend Analysis)**: Aggregates weekly data to detect price increases, decreases, or stable trends. Set (Mail Content)**: Formats the trend summary into an HTML email body. Mailchimp**: Sends the seasonal price-trend report to the selected audience segment. Sticky Note**: Documentation node explaining business logic in-workflow. Set up steps Setup Time: 10-15 minutes Clone the template: Import the workflow JSON into your n8n instance. Install ScrapeGraphAI: n8n-nodes-scrapegraphai via the Community Nodes panel. Add credentials: a. ScrapeGraphAI API Key b. Mailchimp API Key & Server Prefix c. Baserow API Token Configure Baserow node: Point it to your price_tracker table. Edit product list: In the “Prepare URLs” Code node, replace the sample URLs with your own. Adjust schedule: Modify the Schedule Trigger CRON expression if weekly isn’t suitable. Test run: Execute the workflow manually once to verify credentials and data flow. Activate: Turn on the workflow for automatic weekly monitoring. Node Descriptions Core Workflow Nodes: Schedule Trigger** – Initiates the workflow on a weekly CRON schedule. Code (Prepare URLs)** – Generates an array of product URLs/SKUs to scrape. SplitInBatches** – Splits the array into chunks of 5 URLs to stay within request limits. ScrapeGraphAI** – Scrapes each URL, using XPath/CSS selectors to pull price & title. If (Price Found?)** – Filters out failed or empty scrape results. Baserow** – Inserts or updates the price record in the database. Code (Trend Analysis)** – Calculates week-over-week price changes and flags anomalies. Set (Mail Content)** – Creates an HTML table with product, current price, and trend arrow. Mailchimp** – Sends or schedules the email campaign. Sticky Note** – Provides inline documentation and edit hints. Data Flow: Schedule Trigger → Code (Prepare URLs) → SplitInBatches SplitInBatches → ScrapeGraphAI → If (Price Found?) → Baserow Baserow → Code (Trend Analysis) → Set (Mail Content) → Mailchimp Customization Examples Change scraping frequency // Schedule Trigger CRON for daily at 07:00 UTC 0 7 * * * Add competitor comparison column // Code (Trend Analysis) item.competitor_price_diff = item.current_price - item.competitor_price; return item; Data Output Format The workflow outputs structured JSON data: { "product_name": "Winter Jacket", "product_url": "https://example.com/winter-jacket", "current_price": 59.99, "scrape_date": "2023-11-15T08:21:00Z", "weekly_trend": "decrease" } Troubleshooting Common Issues Invalid ScrapeGraphAI key – Verify the API key and ensure your subscription is active. Mailchimp “Invalid Audience” error – Double-check the audience ID and that the API key has correct permissions. Baserow “Field mismatch” – Confirm your table fields match the names/types in the workflow. Performance Tips Limit each SplitInBatches run to ≤10 URLs to reduce scraping timeouts. Enable caching in ScrapeGraphAI to avoid repeated requests to the same URL within short intervals. Pro Tips: Use environment variables for all API keys to avoid hard-coding secrets. Add an extra If node to alert you if a product’s price drops below a target threshold. Combine with n8n’s Slack node for real-time alerts in addition to Mailchimp summaries.