Skip to content
FlowHubFluxonLab
A
AI Automationfree

Extract and Organize Colombian Invoices with Gmail, GPT-4o & Google Workspace

by Juan Sanchezadapted from n8n official workflow galleryUpdated Aug 2026
RequiresAAI AgentCalculatorCalculatorCCodeCompressionCompressionGoogle DriveGoogle DriveGoogle SheetsGoogle SheetsOpenAI Chat ModelOpenAI Chat ModelStructured Output ParserStructured Output Parser
Share Post Share
SILoop Over ItemsOpenAI Chat ModelOpenAI Chat Mod…TCCalculatorOPStructured Output ParserStructured Outp…On Email receiptCoGet Filename and mimeTypeGet Filename an…FiFilter ZIP files onlyFilter ZIP file…CoUnzip InvoiceNOJust for styleCoGet filename and mimeType on extracted docsGet filename an…SwSplit XML and PDFSplit XML and P…EFExtract PDF DataEFExtract XML DataXmConvert to JSONMeAppend both DocsAgAggregate all Data into 1 listAggregate all D…AgExtract Data from PDF and XMLExtract Data fr…Create initial PDFCreate initial …MeMerge both flowsUpdate PDF with actual nameUpdate PDF with…CoGet Current DateCreate or update rowCreate or updat…123456789101112131415161718192021222324
1/5
STEPS · 24
Starts on a Gmail event

🧾 Personal Invoice Processor This N8N workflow automates the extraction and organization of personal invoices in Colombia received via Gmail. It includes the following key steps: 🔁 Flow Summary Email Trigger Polls Gmail every 30 minutes for emails with .zip attachments (assumed to contain invoices). Expects ZIP file following DIAN standards. ZIP File Handling Extracts all files. Filters only PDF and XML files for processing. Data Extraction & Processing Uses LangChain Agent + OpenAI (GPT-4o-mini) to extract: Tipo de documento (Factura / Nota Crédito) Número de factura Fecha de emisión (YYYY-MM-DD) NIT emisor y receptor (sin dígito de verificación) Razón social del emisor Subtotal, IVA, Total CUFE Resumen de compra (max 20 words, formatted sentence) Validation Ensures Total = Subtotal + IVA using a calculator node. Storage Uploads the original PDF to Google Drive. Renames the file to: YYYY-MM-DD-NUMERO_FACTURA.pdf. Inserts or updates invoice details in Google Sheets using a unique Key (NIT_Emisor + Numero_Factura) to prevent duplication. > ⚙️ Designed for personal use with minimal latency tolerance and high automation reliability.

Tags

n8nreference-onlyagentcompressiongoogle-drivegoogle-sheetslm-chat-open-aioutput-parser-structuredtool-calculator
Connects
AAI AgentcalculatorCalculatorCCodecompressionCompressiongoogledriveGoogle DrivesheetsGoogle Sheets
CategoryAI Automation
Triggermanual
Complexitycomplex
Nodes22
AddedMay 9, 2025

Related workflows

See all AI Automation
ACgmailsheets
free

Analyze YouTube comments with OpenAI, Google Sheets, and Gmail

Quick overview This workflow monitors a Google Sheets list of YouTube video IDs, fetches video details and top comments from the YouTube Data API, analyzes the comments with OpenAI into structured sentiment and themes, emails an HTML report via Gmail, and writes the results back to Google Sheets. How it works Triggers every minute when a row in Google Sheets is added or updated. Reads the video ID and status from the row and continues only if the status is set to “Pending”. Calls the YouTube Data API to fetch the video’s metadata and the top comment threads for that video. Flattens the comment threads, calculates basic stats (comment count and average likes), and compiles a limited comment text block for analysis. If comments exist, sends the compiled comments and video title to OpenAI to generate a structured analysis (sentiment score, sentiment breakdown, themes, questions, feedback, insights, and summary). Builds an HTML email report from the structured results, sends it to the configured recipient with Gmail, and updates the Google Sheet row with the analysis fields; if no comments exist, marks the row as “No comments”. Setup Create or duplicate a Google Sheet with at least “Vi

by Dr. Firas
ACgmailgoogledrive
free

Qualify leads and send personalized audio follow-ups with Gemini and Smallest.ai

Quick Overview This workflow receives lead submissions via a webhook, uses Google Gemini to qualify the lead and write a personalized spoken follow-up script, and for qualified leads generates an MP3 with Smallest.ai, shares it from Google Drive, emails it via Gmail, logs outcomes to Google Sheets, and alerts sales in Slack. How it works Receives a POST webhook request containing a lead’s name, email, and message. Sends the lead details to a Google Gemini–powered AI agent to determine whether the lead is qualified and, if so, generate a short personalized audio script. Parses the agent’s JSON response and routes the workflow based on the qualified flag. If the lead is qualified, Smallest.ai synthesizes the script into an MP3 and uploads it to Google Drive. Shares the Google Drive audio file publicly and sends the lead a Gmail message with a link to listen. Appends the qualified lead record (including the audio link and timestamp) to Google Sheets and posts a notification to a Slack channel. If the lead is unqualified, appends the lead details and timestamp to Google Sheets without generating audio or sending email. Setup Enable the webhook and copy the generated /lead-capture URL i

by Zain Khan
BsheetsWopenaichatmodel
free

Turn LinkedIn post reactions into AI content ideas with OpenAI and Google Sheets

Quick overview This workflow runs daily to fetch your recent LinkedIn post reactions via a RapidAPI LinkedIn endpoint, uses OpenAI to turn each reacted post into a structured original content idea, and appends or updates the results in a Google Sheets idea vault without duplicates. How it works Runs every day at 08:00 using a schedule trigger. Loads configurable settings like your LinkedIn username, reaction type filter, recency window, max posts to analyze, OpenAI model, and output language. Calls the linkedin-api8 RapidAPI endpoint to retrieve posts you recently reacted to and splits the response into individual reaction items. Filters reactions to keep only the selected reaction type (or all when blank) and posts newer than the configured number of days. Limits the number of reactions sent for analysis to control cost. Sends each source post (author, reaction, text, and URL) to OpenAI to generate a structured content idea (category, angle, hook, takeaway, format, and hashtags). Saves each idea to Google Sheets using an upsert that matches on Post URL to avoid duplicate rows. Setup Create a RapidAPI subscription for linkedin-api8 and add an HTTP Header Auth credential that sends

by Dr. Firas