See llms.txt for all machine-readable content.

Back to Templates

Fill PDF forms in bulk from Google Sheets with PDFops and Google Drive

Quick Overview

This workflow runs hourly to read new rows from Google Sheets, fill a PDF form using PDFops with each row’s values, upload the generated PDFs to Google Drive, and write the resulting Drive link or an error status back to the sheet.

How it works

  1. Runs every hour on a schedule.
  2. Reads rows from a specified Google Sheets worksheet and keeps only rows where the status cell is empty.
  3. Downloads the blank PDF template from the configured URL.
  4. Uses PDFops to fill and optionally flatten the PDF by mapping sheet column names (excluding row_number, status, and pdf_link) to PDF field names and generating a file name from a chosen column.
  5. Uploads the filled PDF to a target folder in Google Drive.
  6. Updates the originating Google Sheets row with done and the Google Drive file link, or writes an error message to status if filling or upload fails.

Setup

  1. Install the PDFops community node package (n8n-nodes-pdfops) and add a PDFops API credential.
  2. Add Google Sheets and Google Drive credentials, then set the Google Sheets document URL/ID, worksheet name, and the Google Drive target folder.
  3. Provide a reachable blank PDF template URL and confirm its form field names match your Google Sheets column headers.
  4. Ensure the sheet includes row_number (used to match updates), status, and pdf_link columns, and set fileNameColumn to an existing column to control output filenames.