With ABOSS, you can build your own contract templates to control how contract PDFs are generated. Contract templates focus on content and layout and allow you to display detailed deal information using dynamic data.
Contract templates are created and edited with the WYSIWYG editor. For advanced customization, templates can also be edited directly with HTML and Liquid.
Table of Contents
1. Where to manage contract templates
2. Contract template structure
3. Building contracts with the WYSIWYG editor
4. Using Liquid in contract templates
5. Working with deal data
6. Important notes
7. Support
1. Where to manage contract templates
Contract templates can be created and managed via Office > Contract Templates.
With ABOSS, you have the option of building your own contract templates using the template builder.
The Contracts module is not available in Artist PRO.
2. Contract template structure
Contract templates consist of the following sections:
Header
Content
Footer
Each section can be edited independently. Contract templates do not include calculation toggles or descriptions. All logic in contract templates is handled through content, Liquid, and conditional logic.
3. Building contracts with the WYSIWYG editor
ABOSS uses a WYSIWYG (What You See Is What You Get) editor to build and design contract templates. Changes made in the editor are reflected in real time.
The toolbar at the top of the editor allows you to style and align text, create bullet or numbered lists, add images, create tables, insert page breaks, or switch to HTML view. You can hover over each icon to see its function.
Each section of the contract template has its own toolbar, allowing you to update specific parts of the contract without affecting other sections.
4. Using Liquid in contract templates
ABOSS uses Liquid as its template language. Liquid allows you to insert dynamic content into your contract templates using data from the agency, project, event, and deal linked to the contract.
To output a data point in your template, wrap it in double curly brackets:
{{ event.title }}All available data points can be found in the right sidebar of the template builder.
Conditional logic with if statements
You can use if statements to display content only when specific conditions are met.
Example:
{% if event.event_type == 'Clubshow' %}We are playing a clubshow!{% endif %}This text is only shown when the event type is set to “Clubshow”.
Available comparison methods include:
== equal to
!= not equal to
greater than
< smaller than
Example:
{% if event.vat_percentage > 0 %}{{ event.vat_percentage }}% VAT Due{% endif %}This text is shown only when a VAT percentage greater than 0 is entered in the deal.
5. Working with deal data
Contract templates often include detailed deal information. Using Liquid, you can display different deal structures conditionally.
Example structure:
{% if event.deal_type != "Door deal" %}{{ event.currency_symbol }} {{ event.flat_fee | format_money }}{% if event.deal_type == 'Guarantee' %}
{{ event.deal_percentage_artist | format_percentage }}% ticket share after breakeven{% endif %}
{% if event.deal_type == 'Guarantee Plus' %}
{{ event.deal_percentage_artist | format_percentage }}% ticket share{% endif %}
{% if event.deal_type == 'Guarantee Versus' %}vs. {{ event.deal_percentage_artist | format_percentage }}% ticket share{% endif %}{% else %}{{ event.deal_percentage_artist | format_percentage }}% ticket share{% endif %}
This approach allows you to tailor contract content to different deal types while keeping one reusable template.
6. Important notes
Entered data, such as information added in the Deal tab, will only display correctly on contract PDFs if the template is set up properly.
Always review the generated contract PDF before sending it out to ensure all data appears as expected.
7. Support
If you need help setting up or adjusting your contract templates, contact Support via the blue Support Chat button in the bottom right of your ABOSS account. We are happy to help you review or adjust your templates.

