How the Custom Invoice Layout Works in PSOhub
Learn how to use your own Word template as a custom invoice layout in PSOhub
Published: 1 June 2026
Audience
-
Admin
-
Controller
Objective
Understand what a custom invoice layout is in PSOhub, how the template structure works, which base templates are available to download, and what data fields can be used to populate your invoice.
Introduction
PSOhub supports custom invoice layouts, allowing you to replace the default invoice design with your own Word-based template. This is useful when your organization requires a specific visual format, additional branding, or a layout that differs from the PSOhub default.
Custom invoice templates use Word merge fields to pull live data from PSOhub — such as the invoice number, customer details, contract lines, and totals — into your document when an invoice is generated.
⚠️ Important: Modifying the base templates can cause errors if the merge field structure is not followed correctly. PSOhub support cannot review individually edited templates. Proceed carefully and test your template using the Create preview function in Invoice Settings before using it on live invoices.
How to Enable the Custom Invoice Layout
- Click the Gear icon in the main menu to open Settings.
- Navigate to Invoice Settings.
- In the Layouts tab, set the Invoice layout field to Custom.
- Once enabled, you can upload two separate template files:
- A template for an Invoice without a specification page
- A template for Invoice with specification
Download the Base Templates
PSOhub provides base templates to use as a starting point for your custom layout. Download the template that matches your needs:
| Template | Use when |
|---|---|
| Base template | Standard invoices using a currency symbol (e.g. €, $) |
| Base template with specification | Invoices with a time entry specification page, using a currency symbol |
| Base template with Currency Name | Standard invoices where the full currency name (e.g. USD, CAD) should appear instead of the symbol — useful when multiple currencies share the same symbol |
| Base template with specification and Currency Name | Specification invoices using the full currency name |
💡 Tip: If your organization bills in multiple currencies that share the same symbol (for example, USD and CAD both use $), use the Currency Name templates to avoid ambiguity on invoices.
How the Template Structure Works
Custom invoice templates are Word documents that use merge fields to pull data from PSOhub. Merge fields are wrapped in double angle brackets, for example <<InvoiceNumber>> or <<Name>>.
Every template must follow this structure:
- The document must begin with
<<TableStart:Container>>and end with<<TableEnd:Container>> - Each data section within the document must open with
<<TableStart:TableName>>and close with<<TableEnd:TableName>> - Between the start and end tags, you can insert any field available within that table
⚠️ Important: TableStart and TableEnd tags must always be in the same section, table row, or table cell. Placing them across different cells or rows is the most common cause of template errors.
Available Data Tables and Fields
The following tables and fields are available for use in your custom invoice template.
Invoice
| Field | Description |
|---|---|
| Name | Invoice name |
| InvoiceNumber | Invoice number |
| InvoiceDateDisplay | Invoice date |
| DueDateDisplay | Payment due date |
| DateFromDisplay | Invoice period start date |
| DateToDisplay | Invoice period end date |
| Reference | Invoice reference |
| Footer | Invoice footer text |
| Note | Invoice note |
| Total | Total amount including VAT |
| TotalExVAT | Total amount excluding VAT |
| VATAmount | VAT amount |
| VATPercentage | VAT percentage |
| Currency | Full currency name |
| C | Currency symbol |
| ProjectNumber | Project number |
| ProjectManagerDisplay | Project manager name |
| Customer | Customer name |
| ContactEMail | Contact email address |
| ContactPhonenumber | Contact phone number |
| TaxNumber | Tax number |
| Draft | Indicates if the invoice is a draft |
| IsCredit | Indicates if the invoice is a credit note |
| DefaultCurrency | Default currency |
InvoiceContractLine
| Field | Description |
|---|---|
| Name | Contract line name |
| LineNumber | Line number on the invoice |
| LineType | Billing type (Fixed fee, T&M, Expenses) |
| Amount | Contract line amount |
| ToBeInvoiced | Amount to be invoiced on this line |
| Description | Contract line description |
| DetailLevel | Invoice detail level for this line |
| C | Currency symbol |
| Currency | Full currency name |
InvoiceLine
| Field | Description |
|---|---|
| Name | Name of the time or expense entry |
| Description | Description of the entry |
| DateDisplay | Date of the entry |
| AmountOfHours | Number of hours |
| Rate | Billing rate |
| TotalAmount | Total amount for this line |
| DetailLevelLine | Detail level for this line |
| C | Currency symbol |
InvoiceTax
| Field | Description |
|---|---|
| TaxName | Name of the tax category |
| VATPercentage | VAT rate |
| VATAmount | VAT amount |
| C | Currency symbol |
| Currency | Full currency name |
Address
| Field | Description |
|---|---|
| Company | Company name |
| Address | Street address |
| City | City |
| PostalCode | Postal or ZIP code |
| Country | Country |
| MainContact | Primary contact name |
| TaxCode | Tax code |
| CompanyRegistrationCode | Chamber of Commerce or company registration number |
Next Steps
✅ Test and finalize your invoice layout
Upload your custom template and use the Create preview function in Invoice Settings to check the layout before using it on live invoices.
Invoice Settings in PSOhub