Skip to content

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)