v3 Template Field Usage
The v3 PDF renderer is deliberately content-light on the template record: structure and styling live in the Liquid file, not on the Template record. As a result, a large set of Template fields that drive the standard (Visualforce) PDF have no effect on the v3 invoice PDF.
This article lists which Template fields the v3 render path reads and which it ignores. Use it as a reference when configuring or cloning a v3 template.
Info
On the shipped default v3 templates, unused free-text fields are filled with a NOT USED FOR V3 (LIQUID) TEMPLATES note so you can see at a glance which fields have no effect. Page Header is the one exception – it is left blank so the renderer does not print a stray running header.
Fields Used by v3
Localized Labels
Mapped from the record and rendered as labels in the invoice PDF. A blank field falls back to the Liquid's built-in English default.
| Field (API name) | Role |
|---|---|
SubtotalNetLabel__c |
Label for the net subtotal row. |
SubtotalNetNoDiscountLabel__c |
Label for the net-no-discount subtotal row. |
SubTotalNetDiscountedLabel__c |
Label for the discounted subtotal row. |
SubTotalDiscountLabel__c |
Order-discount label; must carry the {rate} token, which the Liquid replaces with the percent. |
TaxLabel__c |
Tax label; must carry the {rate} token, which the Liquid replaces with the tax percent. |
DiscountMessage__c |
Early-payment sentence with {dueDate}, {amount} and {rate} tokens. |
TaxTableText__c |
Intro text above the tax-summary table. |
OutstandingInvoicesText__c |
Intro above the outstanding-invoices list. |
OverrideLabels__c ({"v3": {…}}) |
Per-template override map for all labels without a dedicated field (the translation path for column headers, status/type labels, etc.). |
Info
All other user-visible strings without a dedicated field (column headers, status/type headings, payment-instrument labels, service-period text) render from the Liquid's built-in English defaults, or are translated per template via OverrideLabels__c["v3"].
Free-Text Blocks
| Field (API name) | Slot |
|---|---|
Text1__c |
Greeting at the top of the letter. |
Text2__c |
Closing block (the company signature is appended by the Liquid). |
Text3__c |
Pre-closing free-text block. |
Footer__c |
Document footer and running page footer sent to the PDF service. |
InstallmentsText__c |
Intro above the installments table. |
ReverseChargeText__c / …EU__c / …NonEU__c |
Reverse-charge notices (domestic / EU / non-EU). |
PaymentInfoBankTransfer__c and the other PaymentInfo*__c (8 total) |
Payment instructions; the one matching the payment method is selected server-side and rendered. |
Locale, Format, Engine and Feature Gates
| Field (API name) | Role |
|---|---|
Language__c |
<html lang> and engine locale. |
DateFormat__c, MonthFormat__c, TimeFormat__c |
Date/time formatting. |
DecimalSeparator__c, GroupingSeparator__c, LeadingCurrency__c |
Amount/number formatting. |
CustomCSS__c |
Extra CSS injected into the render. |
UseUnicodeFont__c |
Unicode font selection. |
PdfRenderer__c (v3) |
Selects the v3 engine. |
PdfName__c |
Generated PDF file name. |
PdfOptions__c |
Locale/currency/formatting options, see PDF Options. |
TaxTable__c |
Gates the tax-summary table. |
AddQRCode__c |
Gates the SEPA/Swiss QR-code data. |
OutstandingInvoices__c |
Gates the outstanding-invoices list. |
Invoice Line Item Table (Server Pre-Process)
The invoice line item table is the only structure that is still built server-side (rather than via the Liquid file) and then handed to the renderer. These fields therefore still apply under v3:
| Field (API name) | Role |
|---|---|
TableColumns__c |
Which line-item columns exist. |
CategoryCriterion__c, CategoryLabel__c |
Group line items into sections with a heading. |
SubtotalCriteria__c |
Subtotal grouping. |
NoSubtotalTax__c, NoSubtotalDiscount__c |
Whether tax/discount subtotal rows are produced. |
Remember
The invoice line item table is the single server-built table. All other tables (balances, installments, outstanding invoices, tax summary) are defined entirely in the Liquid file.
Fields Not Used by v3
Structure and Styling From Liquid Code
| Field(s) (API name) | Where the equivalent lives |
|---|---|
Header__c, InfoLeft__c, InfoRight__c |
Header/info blocks are laid out in the Liquid markup. |
PageHeader__c |
Page header/counter is defined in the Liquid via @page CSS. Left blank on defaults so no stray header prints. |
BalanceColumns__c, BalanceTypes__c |
The Liquid iterates balances and defines the columns itself. |
InstallmentColumns__c |
Installments table columns defined in the Liquid. |
TaxTableColumns__c |
Tax-table columns defined in the Liquid (the table is gated by TaxTable__c). |
TransactionRecords__c, TransactionCsv__c |
Out of the v3 structure scope. |
DecimalPlaces__c |
Number formatting comes from the locale/format fields and PDF Options. |
DisplayType__c |
The invoice-type heading is chosen by the Liquid from the invoice type. |
Address Data From Records
| Field(s) (API name) | How the address reaches the PDF |
|---|---|
BillingAddress__c, RecipientAddress__c, SenderAddress__c |
v3 renders the recipient/sender/billing addresses by direct mapping in the Liquid from the invoice, account and tenant records – not from these template fields. |
Other Document Processes
| Field(s) (API name) | Owner |
|---|---|
EmailBody__c, EmailHtmlBody__c, EmailSubject__c, EmailSender__c, EmailAttachPDF__c, EmailFileTypes__c, DisableGlobalEmailSignature__c, SupportingDocumentTypes__c |
Invoice email |
DunningTitle__c, DunningDescription__c, DunningFeeTitle__c, DunningFeeDescription__c |
Dunning PDF |
DepositTitle__c, DepositDescription__c, DepositGrandTotalLabel__c |
Deposit invoices |
Counter__c, PaymentReference__c, PaymentDue__c, SubtotalGrossLabel__c |
Invoice creation/numbering/legacy (no gross-subtotal row in v3) |