All Collections
Admin Tasks
Create your own contract template
Create your own contract template

Making or editing a custom contract template with variables

Tech Support avatar
Written by Tech Support
Updated over a week ago

Every legal agreement in AWEbase is generated from a contract template. Each template contains your organization’s standard legal language, but allows the system to fill in key information, such as the contractor’s name, Deliverable specifics, and deadlines.

To create a custom template, edit an existing contract (or make one from scratch) using your favorite word processing software, save it as a .DOCX file, then upload it to the system for use in AWEbase.

You can download a sample contract template from the AWEbase website here.

Contract template variables

When editing or creating your own contract templates, an important concept to understand is template variables. Each variable represents a piece of data that will be filled in when the contract is generated. 

In the image above, a sample contract is shown on the left, and the contract template is shown on the right. A contract template uses many variables that get replaced with text, dates, or other data when an actual contract is generated from the template. Everything surrounded by two sets of {{curly braces}} in a template is a variable. For example, if you wanted a contractor’s name to appear in a specific place in the contract, you would write {{contractor_full_name}}  in the template.

Variable Format

When inserting a variable into your contract template, you must use curly braces notation, with double curly braces on either side of the variable name. For example, to use the variable “job_staff_full_name” you would write {{job_staff_full_name}} .

Below is a list of standard contract data items and their variables. The system does not require you to use all the variables shown below in your custom contract templates (some may not be relevant to your organization or to your work). You can also use the same variable in many different places throughout your contract template. Finally, if your contract template includes a variable, such as {{contractor_company_name}}, and the contractor you are using doesn't have a company name, that's fine. If there is nothing to display for a particular variable, it will just appear as a blank space in your actual contract.

Organization Variables

The following variables represent information regarding your organization. The contents of these variables are filled out when you enter your organization's information.

{{organization_name}}           - name of your organization
{{organization_address_1}} - organization's street address pt 1
{{organization_address_2}} - organization's street address pt 2
{{organization_city}} - organization's city
{organization_state}} - organization's state
{{organization_postal_code}} - organization's postal/ZIP code
{{organization_country}} - organization's country
{{organization_email}} - organization's email
{{organization_phone}} - organization's phone number
{{organization_website}} - organization's website
{{organization_contract_email}} - organization's email for contracts
{{organization_finance_email}} - organization's email for payments
{{organization_logo}} - displays organization's logo image

Contractor Variables

The following variables represent information regarding the contractor you’re hiring.

{{contractor_full_name}}       - contractor's first and last name
{{contractor_first_name}} - contractor's first name
{{contractor_last_name}} - contractor's last name
{{contractor_address_1}} - contractor's street address pt 1
{{contractor_address_2}} - contractor's street address pt 2
{{contractor_city}} - contractor's city
{{contractor_state}} - contractor's state
{{contractor_postal_code}} - contractor's postal/ZIP code
{{contractor_country}} - contractor's country
{{contractor_email}} - contractor's email
{{contractor_phone}} - contractor's phone number
{{contractor_company_name}} - name of contractor's company
{{contractor_title}} - contractor's title at company
{{contractor_nickname}} - contractor's nickname
{{contractor_internal_id}} - contractor's internal id

Staff Variables

These variables represent the staff member who is assigned to the job that the contract is for. (This person is usually authorized to sign the contract on your organization’s behalf.)

{{job_staff_full_name}}       - member's first and last name
{{job_staff_first_name}} - member's first name
{{job_staff_last_name}} - member's last name
{{job_staff_email}} - member's email address
{{job_staff_phone}} - member's phone number
{{job_staff_title}}. - member's title

Job Variables

These variables represent aspects of the Job itself. The contents of these variables are filled out when you create the Job.

{{job_name}}                - name of the Job
{{job_total_amount}} - total cost of all Deliverables in Job
{{job_completion_deadline}} - date when Job must be done
{{contract_sign_deadline}} - date when contract must be signed
{{job_create_date}} - date when you created the Job
{{job_contract_date}} - effective date of contract
{{job_description}} - desription of the Job

Signature Variables

These variables are different from the rest in that they aren’t automatically filled in when the contract is generated. Instead, they are filled in when you and the contractor each digitally sign the contract.

{{organization_signature_1}} - where you must sign contract
{{organization_signed_date}} - date when you signed
{{contractor_signature_1}} - where contractor must sign contract
{{contractor_signed_date}} - date when contractor signed

Deliverable Variables and Iteration

It's very common to assign a contractor multiple Deliverables in a single contract. For example, you might need an artist to paint three different pictures, or a musician to create 10 musical tracks.

With this in mind, contract template are designed to work with iterative variables. That is, rather than entering a set of variables for each Deliverable, you just enter the variables once, and AWEbase will fill in the data for each Deliverable in the contract.

To include Deliverables in your contract, you must tell AWEbase it needs to iterate through multiple Deliverable variables using the special “for deliverable” command using the notation below:

{% for deliverable in job %}
  {{ deliverable.title }}
{% endfor %}

Let's take a look at the first and last lines and see what they do:

{% for deliverable in job %}

...means "For each Deliverable found in this Job, print the following."

{% endfor %}

...means "If that was the last Deliverable, end the loop. Otherwise, loop again."

In between the first and last lines, you can put any text you want. You can include any of the existing Deliverable variables (listed below), but you can also include regular text. For example, you might want to include the due date and description for the item, and a separator between each Deliverable, like this:

{% for deliverable in job %}
Due on or before: {{ deliverable.due_date }}
{{ deliverable.title }}
{{ deliverable.description }}
{% endfor %}

Note that while you can include any text within the loop, the first and last lines must be included exactly as listed here in order to work properly.

Note: Even if your contract only includes a single Deliverable, you must still use the iterative notation.

Deliverable Variables

These variables represent aspects of a single Deliverable. The contents of these variables are filled in when you create a Deliverable.

Note: The variable {{deliverable.due_date}} is typically an internal date, representing when your organization needs needs to have the Deliverable in-hand, which may be later than the Job deadline. You may wish to avoid using both {{deliverable.due_date}} and {{job_completion_deadline}} in the same contract in order to avoid confusion or error.

{{deliverable.title}}               - title of the Deliverable
{{deliverable.description}} - description of the Deliverable
{{deliverable.amount}} - cost of the Deliverable
{{deliverable.due_date}} - date when Deliverable needed in-hand
{{deliverable.category}} - category of the Deliverable
{{deliverable.type}} - type of the Deliverable
{{deliverable.release}} - the Release's name
{{total_num_deliverables}} - number of Deliverables in Job
{{deliverable.internal_id}} - the Deliverable's internal ID
{{deliverable.title_internal_id}} - the Title's internal ID
{{deliverable.release_internal_id}} - the Release's internal ID

Saving the contract template

When you're satisfied with your contract template, save it as a .DOCX file and upload it to AWEbase so members of your team can use. Note that you can have any number of contract templates. If you have templates you no longer use, you can mark them as "inactive" to avoid them being used in error.

Supported Fonts

To ensure that your final contracts looks like their templates, we recommend that you use the following AWEbase-supported fonts for the text of your contract templates.





Comic Sans

Ropa Sans

Courier New

Ropa Sans Pro




Times New Roman





Did this answer your question?