Skip to main content

[For Admins] Designing your timesheet export template

The full reference for building an export spreadsheet: tags, formats, duration modifiers and layout configuration.

A timesheet export template is an Excel (.xlsx) file containing {{tag}} markers. When you export, HosPortal replaces each marker with the matching data. This article lists every tag and formatting option you can use. (For how to upload a finished template, see Uploading a timesheet export template.)

Tag syntax

Tags use this form:

{{tagName}}{{tagName|format:value}}{{tagName|modifier:value}}{{tagName|format:value|modifier:value}}

Shorthand also works: {{shiftDuration|hours|regular}} is the same as {{shiftDuration|format:hours|modifier:regular}}. The parser detects which part is a format and which is a modifier.

User, Payroll and Export tags

You can place these tags anywhere you like on the spreadsheet and they will be filled with static data about the user, the payroll period, or the export ityself; they aren't replicated but are filled once wherever they are on the spreadsheet

User tags

Tag

Description

Example

{{fullName}}

Full name (first + last)

Jane Smith

{{firstName}}

First name

Jane

{{lastName}}

Last name

Smith

{{lastName|capitalize}}

Last name uppercased

SMITH

{{employeeNumber}}

Payroll identifier from the user's timesheet settings

00367798

{{role}}

First role name

Consultant

{{roles}}

All role names

{{fte}}

FTE value(s) as integer

100 or 100/50

{{fte|format:0%}}

FTE as percentage

100% or 100%/50%

{{fte|format:0.00}}

FTE as decimal

1.00 or 1.00/0.50

Example of what this might look like on your template

Export tags

These tags are filled once with information about the export itself.

Tag

Description

Example

{{exportDate|format:timestamp}}

Export date/time

Friday, March 27th 2026 @ 14:30

Payroll tags

These tags are filled with the pay period's date range.

Tag

Description

Example

{{payPeriodDate|modifier:start|format:DD/MM/YYYY}}

Pay period start date

30/03/2026

{{payPeriodDate|modifier:end|format:DD/MM/YYYY}}

Pay period end date

12/04/2026

Per-day tags (repeated for each day over the payroll period)

Place these once; HosPortal iterates across the days of the pay period, filling one cell per day. The direction depends on the template's date orientation (explained below): vertical fills down rows, horizontal fills across columns.

Date and shift

Tag

Description

Example

{{shiftDate|format:ddd}}

Day of week

Mon

{{shiftDate|format:DD/MM/YYYY}}

Date

30/03/2026

{{shiftTime|modifier:startEnd}}

Start – End time

07:30 - 18:00

{{shiftTime|modifier:start}}

Start time only

07:30

{{shiftTime|modifier:end}}

End time only

18:00

{{shiftName}}

Shift or roster name

Theatre 1 AM

Durations

Duration tags use a modifier to pick which type of time to show, and a format (usually hours) to render it. The same modifiers work on {{shiftDuration}}, {{breakDuration}}, {{leaveDuration}} and {{shiftDurationTotal}}.

Tag (per day)

Description

{{shiftDuration|hours|regular}}

Regular worked hours

{{shiftDuration|hours|overtime}}

Overtime hours

{{shiftDuration|hours|onCall}}

On-call hours

{{shiftDuration|hours|onCallOverTime}}

On-call overtime hours

{{shiftDuration|hours|regularAndBreaksAndCallBacks}}

Regular + breaks + callbacks

{{shiftDuration|hours|regularAndLeaves}}

Regular + leaves

{{shiftDuration|hours|regularAndBreaksAndCallBacksAndLeaves}}

Regular + breaks + callbacks + leaves

{{shiftDuration|hours|onCallTotal}}

On-call total

{{shiftDuration|hours|unpaidBreaks}}

Unpaid break hours

{{shiftDuration|hours|paidBreaks}}

Paid break hours

{{shiftDuration|hours|unpaidLeaves}}

Unpaid leave hours

{{shiftDuration|hours|paidLeaves}}

Paid leave hours

{{shiftDuration|hours|paidHolidays}}

Paid holiday hours

{{shiftDuration|hours|paidCallBacks}}

Paid callback hours

{{shiftDuration|hours|unpaidCallBacks}}

Unpaid callback hours

{{breakDuration|format:hours|modifier:allBreaks}}

All break duration

{{leaveDuration|format:hours|modifier:paidLeaves}}

Paid leave duration

Leave, on-call and leave type

Tag

Description

Example

{{leaveTime|modifier:startEnd}}

Leave start – end time

07:30 - 18:00

{{onCallTime|modifier:startEnd}}

On-call shift start – end time

18:00 - 07:30

{{leaveTypeName}}

Leave type name(s) for the day

Rec Leave

For single-day leave the actual times are used; for multi-day leave the nominal times come from the leave payroll setting's day durations. Multiple leaves or on-call entries on the same day are separated by new lines.

Totals (across the whole pay period)

Tag

Description

{{shiftDurationTotal|hours|regular}}

Total regular hours

{{shiftDurationTotal|hours|overtime}}

Total overtime hours

{{shiftDurationTotal|hours|onCall}}

Total on-call hours

{{shiftDurationTotal|hours|regularAndBreaksAndCallBacksAndLeaves}}

Total combined hours

{{shiftDurationTotal|hours|paidLeaves}}

Total paid leave hours

Any duration modifier from the table above also works on {{shiftDurationTotal}}.

Available formats

Format

Output

Notes

YYYY-MM-DD

2026-03-30

ISO date

DD/MM/YYYY

30/03/2026

AU date

DD/MM/YY

30/03/26

Short AU date

MM/DD/YYYY

03/30/2026

US date

HH:mm

07:30

24-hour time

h:mm A

7:30 AM

12-hour time

MMMM D

March 30

Month day

ddd

Mon

Short day name

hours

[hh]:mm

Duration in Excel time format

minutes

90

Duration in minutes

0.00

1.50

Decimal number

0%

100%

Percentage

capitalize

SMITH

Upper case

timestamp

Friday, March 27th 2026 @ 14:30

Full timestamp

shortText

1h 30min

Duration as short text

Duration modifiers

Valid values for the modifier on duration tags: regular, onCall, overtime, onCallOverTime, regularAndBreaksAndCallBacks, regularAndLeaves, regularAndBreaksAndCallBacksAndLeaves, onCallTotal, unpaidBreaks, paidBreaks, unpaidLeaves, paidLeaves, paidHolidays, paidCallBacks, unpaidCallBacks.

Layout configuration

The template's layout (date orientation, and whether several staff share one sheet) is set when you upload it — either automatically from a Settings sheet inside the workbook, or in the upload form. The key options are:

Option

Description

Date orientation

Vertical (dates run down rows) or Horizontal (dates run across columns)

Multiple users

If on, several users are placed on one sheet using a repeating block; you set where the block starts and its size (rows and columns per user)

Roster colour

Optionally apply each roster's colour as the cell background

Duplicate border

Optionally add borders when the per-user block is duplicated

Did this answer your question?