Monetize360
WorkflowsFunctionsSystem Functions

Generate PDF from HTML Template

Convert HTML templates to PDF documents with support for template resolution and data binding

Generate PDF from HTML Template

Convert HTML templates to PDF documents using Pebble templates. This function automatically resolves reference and picklist fields, binds your data to the template, and generates professional PDF documents.

Technical Name: HTMLToPDFFunc

Properties

  • Execution Mode: SYNC
  • Type: NATIVE
  • Category: System Functions
  • Function ID: 3d26f546-324b-4bb6-89d5-48064a95fbed

Input Schema

Required Parameters

ParameterTypeDescription
templateIdstring (uuid)ID of the HTML template to use for PDF generation

Optional Parameters

ParameterTypeDescription
dataObjectobjectData object for template resolution. Fields with __r suffix are automatically resolved for reference and picklist fields
fileNamestringName of the PDF file to generate (without extension). Defaults to "document"

[Image placeholder: HTMLToPDF function configuration panel]

Input Example

{
  "templateId": "invoice-template-uuid",
  "dataObject": {
    "invoiceNumber": "INV-2024-001",
    "customerName": "John Doe",
    "items": [
      {"name": "Product A", "quantity": 2, "price": 50.00},
      {"name": "Product B", "quantity": 1, "price": 75.00}
    ],
    "total": 175.00,
    "status__r": "Active"
  },
  "fileName": "invoice-INV-2024-001"
}

Output Schema

FieldTypeDescription
fileIdstring (uuid)ID of the generated PDF file in the file storage system

Output Example

{
  "fileId": "a7b9c4d2-3e5f-4a1b-9c8d-7e6f5a4b3c2d"
}

[Image placeholder: HTMLToPDF output visualization]

Template Syntax

HTMLToPDF uses Pebble templates with support for:

  • Variables: {{ variableName }}
  • Conditionals: {% if condition %}...{% endif %}
  • Loops: {% for item in items %}...{% endfor %}

The function automatically resolves reference and picklist fields. Use {{ field__r }} for resolved values or {{ field }} (which will show resolved value if __r exists).

Use Cases

Invoice Generation

Generate PDF invoices from order data:

{
  "templateId": "invoice-template-uuid",
  "dataObject": {
    "invoiceNumber": "INV-2024-001",
    "customerName": "John Doe",
    "items": [
      {"description": "Product A", "quantity": 2, "unitPrice": 50.00, "total": 100.00}
    ],
    "subtotal": 100.00,
    "tax": 8.00,
    "total": 108.00
  },
  "fileName": "invoice-INV-2024-001"
}

Report Generation

Create formatted reports with resolved field values:

Start → FetchMData → HTMLToPDF → EmailNotification(attach PDF) → End

[Image placeholder: PDF generation workflow examples]