New sheet row to PDF (n8n)
An n8n workflow that turns each new Google Sheets row into a PDF and emails it. Swap the trigger for Airtable or monday.com.
Last updated
| Operations | render_html_to_pdf (POST /v1/render) |
|---|---|
| Platforms | n8n |
| Nodes | Google Sheets Trigger, Code, pdfrender, Gmail |
When a new row lands in a sheet, this workflow turns it into a
ready-to-send PDF: an invoice, a quote or a work order. The sample reads a
Google Sheet with the headers Invoice, Client, Email, Description,
Quantity, Unit price and Due date. It emails each invoice to the
address in its row.
Airtable and monday.com work the same way: only the trigger changes. For Airtable, use an Airtable Trigger. For monday.com, use a Webhook node that a monday.com webhook integration calls, then the monday.com node's Board Item > Get.
The steps
- New row in sheet (Google Sheets Trigger, Row Added). Checks the sheet every minute.
- Build HTML (Code). Maps the columns into an A4 invoice and escapes every value.
- Render PDF (pdfrender, Render HTML to PDF). Sends the HTML to
POST https://api.pdfrender.dev/v1/renderand puts the PDF in the binary fielddata. - Email the PDF (Gmail). Attaches
dataand sends it to the row'sEmail.
The trigger carries a pinned sample row, so Execute workflow runs the whole chain before you connect a sheet. The invoice guide covers page breaks and repeated table headers for longer documents.
Get the workflow
Download workflow.json and its setup notes from
GitHub,
then use Import from File in n8n. On self-hosted n8n, install the
community node @pdfrender-dev/n8n-nodes-pdfrender under Settings >
Community Nodes first.
Get your API key
Get your API key and add it to n8n as a pdfrender API credential. Each render costs 1 credit, whatever its page count, and a failed render costs nothing.
FAQ
- Can I use Airtable or monday.com instead of Google Sheets?
- Yes. For Airtable, replace the trigger with an Airtable Trigger. n8n has no monday.com trigger node. For monday.com, point a monday.com webhook integration at a Webhook node. Then read the item's columns with the monday.com node (Board Item, Get). The rest of the workflow stays the same.
- Can I save the PDF instead of emailing it?
- Yes. The PDF is in the binary field data after the pdfrender node, so a Google Drive upload step, or any other node that takes a file, can replace the Gmail node.