by Romain
๐งพ Automated Invoice Processing - n8n Workflow ๐ Workflow Description This n8n workflow automates the complete processing of PDF invoices with AI-powered data extraction. The workflow monitors a Google Drive folder, extracts important invoice data, and automatically organizes files in a structured filing system. ๐ฏ Features ๐ Automatic monitoring** of a Google Drive folder for new PDF files ๐ค AI-powered data extraction** from invoices (customer, amount, date, etc.) ๐ Intelligent file sorting** by year and month ๐ Automatic renaming** following a consistent schema ๐ Central documentation** in Google Sheets ๐ง Required Integrations Required Accounts: Google Drive (with folder permissions) Google Sheets (with write permissions) Google Gemini API (for AI data extraction) Used n8n Nodes: Google Drive Trigger Google Drive (File Operations) Google Sheets Extract from File (PDF) Information Extractor (LangChain) Google Gemini Chat Model Split in Batches ๐ Workflow Steps in Detail 1. Monitoring & Triggering Google Drive Trigger** monitors a defined input folder Automatically starts when new PDF files are detected Split in Batches** enables batch processing of multiple files 2. File Processing GetFile** downloads PDF files from Google Drive ExtractFromPDF** converts PDF content to text Supports scanned documents as well 3. AI Data Extraction The Information Extractor node with Google Gemini extracts: Company name/sender Customer name and customer number Invoice number and date Net and gross amount Value-added tax Article description Month and year (for sorting) 4. Automatic Filing GetYearFolder** searches/creates year folders GetMonthFolder** searches/creates month folders MoveFile** moves invoice to correct folder UpdateFileName** renames file (schema: "Customer Month Year") 5. Documentation AddToOverview** enters all data into Google Sheets table Enables central overview and analysis โ๏ธ Setup Instructions Step 1: Prepare Google Drive Create the following folder structure in Google Drive: ๐ [Input Folder] (e.g., "Invoices-Inbox") ๐ [Main Folder] (e.g., "Accounting") โโโ ๐ 2024 โโโ ๐ January โโโ ๐ February โโโ ๐ March โโโ ... (all months) โโโ ๐ 2025 โโโ ... (all months) Step 2: Create Google Sheets Table Create a spreadsheet with the following columns: Customer Number Customer [Company Name] Location Invoice Date Invoice Number VAT Net Amount Month Year Step 3: Configure Workflow Configure Google Drive Trigger: Select your input folder as "Folder to Watch" Set "Event" to "fileCreated" Activate the trigger Search files and folders: Select the same input folder as filter Customize Information Extractor: Adapt attribute names to your needs Change company name in description Adjust system prompt if needed GetYearFolder & GetMonthFolder: Set the correct folder ID for your main folder Check query string for year/month search AddToOverview: Select your Google Sheets table Map columns according to your table ๐ง Customization Options Extend Data Extraction: Add more attributes in the Information Extractor node: { "name": "Payment Terms", "description": "Days until payment due", "required": false } Customize File Naming: Change the schema in the UpdateFileName node: "{{ $('Information Extractor').item.json.output.InvoiceNumber }} - {{ $('Information Extractor').item.json.output.Customer }}" Change Monitoring Interval: In Google Drive Trigger under "Poll Times" select different intervals. ๐จ Important Notes โ ๏ธ Permissions: Google Drive: Full access to configured folders Google Sheets: Write permission for target table Google Gemini: Valid API key required ๐ Data Format: Works with German number formats (comma as decimal separator) Date format: YYYY-MM-DD Supports various PDF formats ๐ Error Handling: Workflow fails if folders are missing Incomplete PDFs may lead to incomplete extractions Check logs for troubleshooting ๐ Performance & Limitations Processing time:** 30-60 seconds per invoice Supported formats:** PDF (text and OCR) Batch processing:** Yes, multiple files simultaneously AI accuracy:** ~95% for standardized invoices ๐งช Testing Run Test: Upload a test PDF to the input folder Monitor workflow execution in n8n Check results in Google Sheets Verify correct file movement and renaming Error Diagnosis: For errors: check n8n logs Consider Google API quotas Validate folder permissions ๐ License & Support This workflow can be used and customized freely. For configuration questions or issues, check the n8n community or Google API documentation. Tip: Start with a few test invoices before using the workflow in production!
by omid dev
How It Works: This n8n template automates the process of tracking design changes in Figma and updating relevant Jira issues. The template is triggered when a new version is created in Figma via a custom plugin. Once the version is committed, the plugin sends the design details to an n8n workflow using a webhook. The workflow then performs the following actions: Fetches the Jira issue based on the provided issue link from Figma. Adds the design changes as a comment to the Jira issue. Updates the status of the Jira issue based on the provided task status (e.g., "In Progress", "Done"). This streamlines the workflow, reducing the need for manual updates and ensuring that both the design team and developers have the latest design changes and task statuses in sync. How to Use It: Set up the Figma Plugin: Install the Figma Commit Plugin from GitHub. In the plugin, fill out the version name, design link, Jira issue link, and the task status. Commit the changes in Figma, which will trigger the webhook. Set Up the n8n Workflow: Import this template into your n8n instance. Connect the Figma Trigger node to capture version updates from Figma. Configure the Jira nodes to retrieve the issue and update the status/comment based on the data sent from the plugin. Automate: Once the version is committed in Figma, the workflow will automatically update the Jira issue and keep both your Figma design and Jira tasks in sync! By integrating Figma, Jira, and n8n through this template, youโll eliminate manual steps, making collaboration between design and development teams more efficient.
by SalmonRK-AI
๐ Multi-Photo Facebook Post (Windows Directory) โ How to Use โ Requirements To run this automation, make sure you have the following: โ n8n installed on your local Windows machine โ Cloudinary or any other file hosting service for uploading image files โ Facebook Page Access Token with the required permissions (pages_manage_posts, pages_read_engagement, pages_show_list, etc.) ๐ How to Use Import the provided n8n workflow template into your n8n instance. Verify the image directory path โ ensure that the images you want to post are stored in a local folder (e.g. E:\Autopost-media\YourPage\Images). Check the caption and hashtag files โ this includes: description.txt (for the post message) hashtag.txt (for additional tags) Set your Facebook credentials โ insert your Facebook Page Access Token in the designated credential field in the workflow. โ๏ธ How It Works (Workflow Logic) Read Text Files The workflow reads description.txt and hashtag.txt from the local directory. These are combined to form the message body for the Facebook post. Select Images to Post The Limit node defines how many images to post per run (e.g. 3 images). Selected image files are uploaded to a file server (like Cloudinary) to obtain public URLs. Post to Facebook (Multi-Photo) A multi-photo post is created using the uploaded image URLs and the composed message. Move Posted Images After the post is successfully published, the original image files are moved to a new folder. The destination folder is automatically created using the current date (e.g. E:\Autopost-media\YourPage\Images\20250614).
by Luciano Gutierrez
Google Calendar AI Agent with Dynamic Scheduling Version: 1.0.0 n8n Version: 1.88.0+ Author: Koresolucoes License: MIT Description An AI-powered workflow to automate Google Calendar operations using dynamic parameters and MCP (Model Control Plane) integration. Enables event creation, availability checks, updates, and deletions with timezone-aware scheduling [[1]][[2]][[8]]. Key Features: ๐ Full Calendar CRUD: Create, read, update, and delete events in Google Calendar. โฐ Availability Checks: Verify time slots using AVALIABILITY_CALENDAR node with timezone support (e.g., America/Sao_Paulo). ๐ค AI-Driven Parameters: Use $fromAI() to inject dynamic values like Start_Time, End_Time, and Description [[3]][[4]]. ๐ MCP Integration: Connects to an MCP server for centralized AI agent control [[5]][[6]]. Use Cases Automated Scheduling: Book appointments based on AI-recommended time slots. Meeting Coordination: Sync calendar events with CRM/task management systems. Resource Management: Check room/equipment availability before event creation. Instructions 1. Import Template Go to n8n > Templates > Import from File and upload this workflow. 2. Configure Credentials Add Google Calendar OAuth2 credentials under Settings > Credentials. Ensure the calendar ID matches your target (e.g., ODONTOLOGIA group calendar). 3. Set Up Dynamic Parameters Use $fromAI('Parameter_Name') in nodes like CREATE_CALENDAR to inject AI-generated values (e.g., event descriptions). 4. Activate & Test Enable the workflow and send test requests to the webhook path /mcp/:tool/calendar. Tags Google Calendar Automation MCP AI Agent Scheduling CRUD Screenshots License This template is licensed under the MIT License. Notes: Extend multi-tenancy by adding :userId to the webhook path (e.g., /mcp/:userId/calendar) [[7]]. For timezone accuracy, always specify options.timezone in availability checks [[8]]. Refer to n8nโs Google Calendar docs for advanced field mappings.
by tanaypant
This workflow is the second of three. You can find the other workflkows here: Incident Response Workflow - Part 1 Incident Response Workflow - Part 2 Incident Response Workflow - Part 3 We have the following nodes in the workflow: Webhook node: This trigger node listens to the event when the Acknowledge button is clicked. PagerDuty node: This node changes the status of the incident report from 'Triggered' to 'Acknowledged' in PagerDuty. Mattermost node: This node publishes a message in the auxiliary channel saying that the status of the incident report has been changed to Acknowledged.
by WeblineIndia
Zoho CRM - Conversation Intelligence Analyzer This workflow automatically processes customer call recordings, transcribes them using OpenAI Whisper, extracts key topics, identifies commitments, analyzes sentiment, generates follow-up suggestions and updates the corresponding Zoho CRM Lead โ all without manual efforts. It eliminates the need for listening to calls or writing summaries and equips your sales team with instant AI-generated insights. โก Quick Start (Fast Setup) Import the workflow JSON into n8n. Add Zoho CRM OAuth2 & OpenAI API credentials. Copy the webhook URL and configure your telephony system to POST call recordings. Map Zoho custom fields. Upload a test recording โ Confirm CRM updates โ Activate workflow. ๐ What It Does This workflow turns every incoming call recording into structured insights which your sales & customer support team can immediately use. When a recording is received, the call is automatically transcribed using OpenAIโs Whisper model. That transcript is then processed by multiple AI nodes that detect topics, customer sentiment, commitments and possible follow-up actions. All extracted data โ such as mood, sentiment score, subjects, action items and commitments is merged into a clean result object and pushed to the matching Lead in Zoho CRM. The sales team gets ready-to-use call intelligence instantly, improving decision-making, accuracy and speed. This automation works 24/7 and replaces hours of manual review work with reliable AI-generated summaries. ๐ค Whoโs It For Sales & Customer support teams using Zoho CRM. Support teams handling inbound/outbound calls. Businesses wanting call analytics without manual transcription. Zoho CRM admins who want automation with minimal maintenance. Organizations using telephony/VoIP systems that support call exports. ๐งพ Requirements To use this workflow, you need: An n8n instance (self-hosted or cloud) Zoho CRM OAuth2 credentials OpenAI API key (Whisper + GPT models) A telephony system capable of POSTing audio files to a webhook Zoho fields to store: Topics Main subject Action items Sentiment Mood Follow-up text Commitments (optional) โ๏ธ How It Works & How to Set Up 1. Webhook Trigger Your call system sends an audio file (.mp3, .wav, etc.) to the webhook. The workflow starts instantlyโno polling required. 2. Workflow Configuration Static values like: sentimentThreshold = 0.7 minCommitmentConfidence = 0.8 ensure consistent logic across nodes. 3. Audio Transcription (OpenAI Whisper) The audio file is converted to text. This transcript becomes the base for all analysis nodes. 4. Key Topic Extraction AI identifies: Key topics Main subject Important action items 5. Sentiment & Mood Analysis AI analyzes: Customer mood Sales rep tone Overall sentiment Sentiment score 6. Commitment Extraction AI detects commitments using a structured JSON schema. 7. Follow-up Generation GPT generates 3โ5 follow-up suggestions based on the transcript & commitments. 8. Combine All Insights A Set node merges transcription, topics, sentiment, commitments and follow-up text. 9. Update Zoho CRM Lead Updates Zoho custom fields so the sales team gets immediate insights. ๐ How to Customize Nodes Transcription Node Switch to another Whisper/GPT model Add language options Topic Extraction Add more attributes (risks, objections, intent) Sentiment Analysis Tune thresholds Add more emotion labels Commitment Extraction Modify schema Add filtering logic CRM Update Map to different fields Append notes instead of overwriting โ Add-Ons (Optional Enhancements) Slack/Teams alerts for negative sentiment Email transcripts to teams Save files to Google Drive / S3 Create Zoho tasks from commitments Multi-language transcription Sales rep performance scoring ๐ผ Use Case Examples Sales Call Analysis** โ Auto-summarize calls for follow-up. Support Hotline Monitoring** โ Detect customer frustration. QA Audits** โ Auto-generate evaluation notes. Voice-to-CRM Logging** โ Store conversation data automatically. Compliance Tracking** โ Capture legally relevant commitments. ๐ Troubleshooting Guide | Issue | Possible Cause | Solution | |------|----------------|----------| | Workflow not triggered | Telephony not hitting webhook | Recheck webhook URL & logs | | Transcript empty | Unsupported/corrupted audio | Validate file before sending | | CRM not updating | Wrong Zoho field IDs | Verify field IDs in Zoho | | Commitments missing | Transcript unclear | Improve audio quality or edit schema | | Sentiment inaccurate | Model interpretation | Adjust sentimentThreshold | ๐ค Need Help? If you want to customize this workflow, integrate telephony systems or want to build advanced level CRM automation, then our n8n workflow development team at WeblineIndia team is happy to help. Weโre here to support setup, scaling, and custom enhancements.
by Giulio
This n8n workflow template allows you to create a CRUD endpoint that performs the following actions: Create a new record Get a record Get many records Update a record Delete a record This template is connected with Airtable but you can replace the Airtable nodes with anything you need to interact with (e.g. Postgres, MySQL, Notion, Coda...). The template uses the n8n Webhook node setting 'Allow Multiple HTTP Methods' to enable multiple HTTP methods on the same node. Features Just two nodes to create 5 endpoints Use it with Airtable or replace the Airtable nodes for your own customization Add your custom logic exploiting all n8n's possibilities Workflow Steps Webhook node**: exposes the endpoints to get many records and create a new record Webhook (with ID) node**: exposes the endpoints to get, update, and delete a record. Due to a n8n limitation, this endpoint will have an additional code in the path (e.g. https://my.app.n8n.cloud/webhook/580ccc56-f308-4b64-961d-38323501a170/customers/:id). Keep this in mind when using these endpoints in your application Various Airtable nodes**: execute various specific operations to interact with Airtable records Getting Started To deploy and use this template: Import the workflow into your n8n workspace Customize the endpoint paths by tweaking the 'Path' parameters in the 'Webhook' and 'Webhook (with ID)' nodes (currently customers) Set up your Airtable credentials by following this guide and customize the Airtable nodes by selecting your base, table, and the correct fields to update. ...or... replace the Airtable nodes and connect the endpoint to any other service (e.g. Postgres, MySQL, Notion, Coda) How to use the workflow Activate the workflow Connect your app to the endpoints (production URLs) to perform the various operations allowed by the workflow Note that the Webhook nodes have two URLs, one for testing and one for production. The testing URL is activated when you click on 'Test workflow' button and can't be used for production. The production URL is available after you activate the workflow. More info here. Feel free to get in touch with me if you have questions about this workflow.
by tanaypant
In this workflow, we'll automate the export of all the submissions which have a total score greater than 15 for a final review on Trello. The workflow will also generate social media assets for the organizers and add them to the Trello card.
by Lorena
This workflow allows you to filter positive and negative feedback received from a Typeform and insert the data into Google Sheets. Typeform Trigger node: Start the workflow when a new form is submitted via Typeform Set node: Extract the information submitted in typeform IF node: Filter positive and negative reviews (i.e. ratings above or below 3 out of 5). Google Sheets node: Store the positive and negative reviews and ratings in two different sheets for each case.
by Moka Ouchi
What it does This workflow automatically downloads NASA's Astronomy Picture of the Day (APOD) every day. It then resizes the image to a 4K resolution (3840x2160), making it perfect for a desktop wallpaper, and uploads it to a specified Google Drive folder. If the APOD for the day is a video or another media type instead of an image, the workflow will skip the download process and send an alert to a designated Slack channel, informing you of the media type and title. Who's it for This template is ideal for: Space and astronomy enthusiasts who want a new stunning wallpaper every day. Anyone looking to automate file downloading and cloud storage management. n8n users who want to learn how to integrate APIs, schedule triggers, process images, and use conditional logic. How to set up Setup should take about 5-10 minutes. Configure Credentials: NASA: Get a free API key from NASA APIs and add your credentials in the Fetch APOD data node. Google Drive: Authenticate your Google account in the Upload to Google Drive node. Slack: Authenticate your Slack workspace in the Send Slack alert node. Set Workflow Variables: In the โ๏ธ Configuration node, replace the placeholder values for DRIVE_FOLDER_ID and SLACK_CHANNEL_ID with your actual Google Drive folder ID and Slack channel ID. You can find the folder ID in the URL of your Google Drive folder. Activate the Workflow: Toggle the "Active" switch to ON in the top-right corner. The workflow will now run once every day. How to customize Change Image Size**: You can adjust the output resolution in the Resize image to 4K node. Use a different Cloud Storage**: Replace the Upload to Google Drive node with another cloud storage node like Dropbox or OneDrive. Adjust the Schedule**: Modify the Daily Trigger node to run more or less frequently.
by Eduard
This workflow extends n8n and uses R language graphic capabilities. This is a Telegram bot which fetches weather data via the openweathermap.org API, plots an image using ggoplot2 package from R and sends the image to the Telegram user.
by n8n Team
v1 Helper โน๏ธ This workflow is to be run after upgrading to n8n v1. This workflow returns all locations where a node in an active workflow contains a parameter using an expression extension affected by v1 changes. For every location, please check that the workflow still behaves as intended.