Template Document Generator β Handlebars to PDF/HTML
Pricing
from $0.0025 / document generated
Template Document Generator β Handlebars to PDF/HTML
Merge your data into a Handlebars template and get back a document β PDF, HTML or plain text. Generate invoices, reports, receipts, certificates and contracts in bulk from an n8n, Make or Zapier workflow.
Pricing
from $0.0025 / document generated
Rating
0.0
(0)
Developer
hiper soft
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Template Document Generator β Handlebars to PDF, HTML or Text
Merge your data into a Handlebars template and get a finished document back β a PDF, an HTML file or plain text. Perfect for invoices, reports, receipts, certificates and contracts, one at a time or in bulk.
What it does
- Fills a Handlebars/HTML template with your data and produces a document.
- Outputs PDF, HTML or plain text β you choose the format.
- Handles one document (pass
data) or a whole batch (passrowsβ one document per row, a mail-merge). - Saves every document to storage and returns a direct link to each file.
Use cases
- Invoices & receipts β turn each order into a branded PDF invoice.
- Reports β merge metrics into a styled report on a schedule.
- Certificates & contracts β generate personalized certificates or agreements for a list of people.
- Bulk mail-merge β feed an array of rows and get one document per row in a single run.
- The document step in your workflow β drop it into n8n, Make or Zapier: pass your row data, get a PDF back to email, upload or archive downstream.
Input
{"template": "<h1>Invoice {{number}}</h1><p>Billed to: {{customer}}</p><p>Total: {{total}}</p>","rows": [{ "number": "INV-001", "customer": "Acme", "total": "$42.00" },{ "number": "INV-002", "customer": "Globex", "total": "$99.00" }],"output": "pdf"}
| Field | Type | Description |
|---|---|---|
template | string | The Handlebars/HTML template with {{placeholders}}. |
templateUrl | string | Fetch the template from a URL (used when template is empty). |
data | object | Field values for a single document. |
rows | array | Array of objects β one document per row (batch / mail-merge). |
output | string | pdf, html or txt (default pdf). |
pdfFormat | string | Paper size for PDF: A4, Letter, Legal⦠|
landscape | boolean | Landscape orientation for PDF. |
filePrefix | string | Prefix for generated file names. |
Output
{ "index": 0, "format": "pdf", "bytes": 48213, "resultUrl": "https://api.apify.com/v2/key-value-stores/.../records/doc-0001.pdf", "ok": true }
Output schema
| Field | Type | Description |
|---|---|---|
index | integer | Position of the row in your input. |
format | string | Format of the produced document. |
bytes | integer | Size of the generated file. |
resultUrl | string (URL) | Direct link to the document. |
ok | boolean | Whether the document was generated. |
FAQ
Can I generate one PDF per row? Yes β pass an array in rows and you get one document per row in a single run.
Which template syntax is supported? Handlebars β {{field}} placeholders, {{#each}}, {{#if}} and common helpers.
Can I use it in n8n? Yes β run it from the Apify node in your workflow, or via integrations and the Apify API.
Notes
Original clean-room implementation.