Create PDF
Create PDF generates documents from templates you design in a visual editor. You author the content — text, formatting, tables, images — and mark where dynamic values should appear using {{variable}} placeholders. At runtime, the node fills in those placeholders with actual conversation data and produces a PDF, storing its URL in a variable for later use.
The node operates silently. No message goes to the customer during generation. If you want feedback like "Generating your document...", add a Message node before it.
When to Use It
Create PDF is the right choice for template-based documents where the structure stays constant but certain values change per customer: authorization forms, consent documents, personalized letters. Business users can edit these templates directly through the visual editor — no developer involvement required.
For documents that require external API calls, complex calculations, or data aggregation from multiple sources, use Workflow Execute instead. Create PDF only works with variables already present in the conversation.
Configuration
| Option | Description |
|---|---|
fileName | Output filename — can include variables (e.g., authorization_{{person_id}}.pdf) |
htmlContent | HTML document authored via the WYSIWYG editor |
variableToStore | Variable name to store the generated PDF URL |
You design the document in a rich text editor with standard formatting options — bold, italic, headings, lists, tables, images. Insert variables using {{variableName}} syntax wherever you need dynamic content.
The stored variable holds a URL to the generated PDF, ready for Send File or Document Verifications.


Available Variables
The template system provides built-in values alongside any conversation variables you've collected:
| Variable | Source |
|---|---|
{{name}} | WhatsApp profile name |
{{phone}} | WhatsApp number |
{{borrower_id}} | Authenticated borrower's ID |
{{today}} | Current date |
{{now}} | Current date and time |
Any variable set earlier in the flow — through Ask Question, Set Variable, or other nodes — is also available.
Output Handles
| Handle | When |
|---|---|
| Continue | PDF generated successfully |
| Error | Generation failed or timed out |
Things to Know
Missing variables don't block generation. If a referenced variable doesn't exist, the PDF renders with [variable_name] as a placeholder instead. The node continues on the success path. Check your flow logic to ensure variables are set before reaching this node.
Generation can take time. The service has a 300-second timeout. For complex documents, consider the customer's wait experience.
Page size defaults to A4. This isn't configurable through the editor interface.