Skip to content
FlowHubFluxonLab
C
Gmailfree

Generate and email invoice PDFs from Google Sheets with PDFMunk and Gmail

by Muhammad Salman Anwaradapted from n8n official workflow galleryUpdated Aug 2026
RequiresCCodeGmailGmailGoogle SheetsGoogle SheetsHTTP RequestHTTP Request
Share Post Share
Email Invoice via GmailEmail Invoice v…HRDownload PDF from URLDownload PDF fr…HRGenerate PDF InvoiceGenerate PDF In…CoProcess Invoice DataProcess Invoice…Append to Invoice Orders SheetAppend to Invoi…SePrepare Invoice NumberPrepare Invoice…SeSet Client and Item DetailsSet Client and …GSWhen Sheet UpdatedWhen Sheet Upda…1234567
1/5
STEPS · 7
Starts on a Google Sheets event

Quick overview This workflow watches a Google Sheets order sheet for new invoice rows, generates a unique invoice number, appends the normalized record to another sheet, converts an HTML invoice into a PDF via PDFMunk, and emails the PDF to the client using Gmail. How it works Triggers when a new row is added to a specified Google Sheets worksheet. Maps the incoming columns (client details, item, quantity, price, due date, and status) into a standardized structure and generates an invoice number. Appends the invoice data, including the generated invoice number, into a second worksheet in Google Sheets. Builds an HTML invoice template and calculates totals from quantity and unit price. Sends the HTML to the PDFMunk API to generate a PDF link, then downloads the PDF file. Sends the invoice to the client via Gmail with the PDF attached. Setup Connect your Google Sheets OAuth credentials and select the correct spreadsheet and source/target worksheets for the trigger and append actions. Create a PDFMunk API key (or equivalent header auth) and add it as HTTP Header Auth credentials for the PDF generation request.

Tags

n8nreference-onlygmailgoogle-sheets
Connects
CCodegmailGmailsheetsGoogle SheetsWHTTP Request
CategoryGmail
Triggermanual
Complexitycomplex
Nodes8
AddedJul 17, 2026

Related workflows

See all Gmail
CgmailsheetsW
free

Route real estate buyer and seller leads with Claude and Google Sheets

Quick Overview This workflow hosts an n8n lead-capture form, uses Anthropic Claude to score and classify real estate inquiries, then routes ready leads to Gmail and Google Sheets while logging early-stage leads to a separate Google Sheets tab. How it works Receives a new submission from an n8n Form trigger with contact details, intent, area, budget, timeline, financing status, and notes. Normalizes the submitted fields (for example trimming strings, lowercasing email, and adding a timestamp) for consistent downstream processing. Sends the normalized lead details to the Anthropic Messages API (Claude) to return a strict JSON classification, summary, timeline band, financing readiness, recommended agent role, and score. Parses the Claude JSON response, clamps the score to a 1–10 range, and calculates whether the lead is “ready” (score 7). If the lead is ready, sends a formatted Gmail alert to the agent and appends the lead to the “Active Leads” tab in Google Sheets. If the lead is not ready, appends the lead to the “Nurture Leads” tab in Google Sheets. Returns a confirmation message to the form submitter after the lead is routed. Setup Create an Anthropic HTTP Header Auth credential

by Milos Vranes
CgmailsheetsW
free

Handle client intake, routing, and confirmations with Claude, Google Sheets, Gmail, and Twilio

Quick overview This workflow hosts an n8n intake form, checks whether the submitted state is in your service area, uses Anthropic Claude to draft confirmation messages and an internal summary, logs requests to Google Sheets, emails via Gmail, optionally sends an SMS via Twilio, and shows the customer a confirmation page. How it works Receives a new client request through an n8n-hosted form submission. Normalizes the submitted details (name, email, phone, state, request type, description, and SMS consent) and generates a timestamp and reference number. Checks whether the submitted state is included in your configured served-area list. For in-area requests, sends the intake details to Anthropic Claude and parses the returned JSON into a customer email message, customer SMS message, internal summary, category, priority, and missing-info list. Appends the request to Google Sheets, emails the intake team and the customer via Gmail, and sends an SMS confirmation via Twilio only when the customer opted in. For out-of-area requests, appends the submission to a Google Sheets waitlist and shows the customer a waitlist message. Setup Customize the n8n Form Trigger fields and text to match you

by Milos Vranes
gmailsheetsW
free

Move data between JSON and spreadsheets

This workflow illustrates how to convert data from JSON to binary format and import JSON data or files into Google Sheets or local spreadsheets.

by Lorena