This workflow turns a Google Sheet into an automated certificate-issuing pipeline. The moment a new completion row is added — whether by your training team, a Zap, or a quiz platform — a branded PDF/A-2b (archival-grade) certificate is rendered by TemplateFox, archived in Google Drive, emailed to the participant with a permanent link, and the original sheet row is updated with the Drive URL and issue timestamp. You get a complete audit trail without writing a single line of code.
Issuing certificates manually means:
This workflow eliminates all of that. Drop a row in your sheet, get an archival-quality certificate delivered, archived, and tracked — every time, with the same branding.
You need a TemplateFox certificate template for this workflow. You can:
Once your template is ready, select it from the dropdown in the TemplateFox node — your fields load automatically. Drag each field directly from the Google Sheets trigger output panel onto the matching template field. No code needed.
The workflow renders the certificate as PDF/A-2b, a modern archival standard that guarantees the file looks identical decades from now — perfect for official credentials. You can switch to PDF/A-3b in the TemplateFox node options if your training body requires it.
Step 1: Google Sheets Trigger — New Completion Row
Watches a Google Sheet for new rows. Expected columns: Participant Name, Email, Course, Completion Date, Instructor. The trigger polls every minute by default.
Step 2: TemplateFox — Generate Certificate (PDF/A-2b)
Maps the row data directly to your certificate template fields and renders an archival-grade PDF. Static fields like your logo, signatures, and organisation name should be set inside the template editor itself — no need to pass them through n8n.
Step 3: Download PDF
An HTTP Request node downloads the rendered PDF as a binary file, ready to be uploaded to Drive.
Step 4: Archive to Google Drive
Uploads the PDF to your chosen Google Drive folder, named certificate-<email>.pdf for easy auditing. The node returns a permanent webViewLink that's used downstream.
Step 5: Email Certificate
A Gmail node sends a styled HTML email to the participant with a "Download your certificate" button pointing to the permanent Drive URL. Course name and completion date are included from the trigger row.
Step 6: Update Sheet Row
The original row in your Google Sheet is updated with two new values: Certificate URL (the permanent Drive webViewLink) and Issued At. Matching is done by Email, so even if rows are reordered the right one is updated.
The whole pipeline runs in a single horizontal chain — clean to read, easy to debug.
pdf/a-3b in the TemplateFox node options if you need PDF/A-3 (archival + attachments).IF node after the trigger to skip rows where Score is below your passing threshold.Get Many Rows step to issue certificates nightly instead of one-by-one.name with {{ $('New Completion Row').first().json.Course }}/....Note: This template uses the TemplateFox community node. Install it from Settings → Community Nodes.
Full tutorial: templatefox.com/n8n/automate-certificates