Skip to content
SkyRosterBook a discovery call

Workflow · Month end and payroll

Bring the month together.

Reconcile attendance, absences and extra hours. Review the payroll draft and close the period when the records are ready.

Stage 1 · Attendance

Start with approved time.

Device, manual and remote entries come together here. Only approved time contributes to worked hours and payroll.

Manual own-time entries require another reviewer. Device and remote events have different approval rules; remote clock-out after more than nine hours requires review. See attendance.

Stage 2 · Exceptions

Resolve the gaps.

Put expected attendance beside recorded time and approved leave or duty. Use the Justifications queue to review the gaps.

A change to a period already started needs supervisor approval. It changes the attendance and payroll calculation.

Stage 3 · Overtime

Review overtime classifications.

Holiday work, overtime duties, extensions and extra shifts each contribute. Configured rules apply banked-hour deductions, day/night splits and first-hour treatment.

Payroll · one illustrative day

Illustrative example

Follow the hours through.

Start with a day’s work. Follow seven example steps through extra hours, time balances, rates and premiums to see how payroll data comes together.

Step 1 of 7

Four inputs, one day

Each type of extra work starts as a separate line before classification.

SkyRoster runs four independent calculations for extra time worked outside the roster, each resolving its own payroll code: a shift worked on a public holiday, an approved overtime duty, a shift extension before or after a scheduled shift, and an ad hoc work request called in on a day off.

This illustrative day includes all four types to show their treatment in one example.

The payroll pipeline's running figures after step 1 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00, Raw, not yet coded
Shift extension13:00–14:301h30, Raw, not yet coded
Overtime duty20:00–23:303h30, Raw, not yet coded
Work request01:30–05:003h30, Raw, not yet coded
Lines so far4

Step 2 of 7

Apply the Bank of Working Hours balance

Thirty minutes of the overtime duty move to the Bank of Working Hours line, before anything is priced as overtime.

Before any of this becomes overtime pay, SkyRoster checks the employee's Bank of Working Hours balance. A balance that covers the whole duty books all of it as banked hours; no balance books all of it as overtime; a partial balance, like this employee's, splits the duty.

Banked hours are allocated first. The remaining overtime is then split by day and night and assessed for the first-hour premium.

The payroll pipeline's running figures after step 2 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00, Bank Holiday
Shift extension13:00–14:301h30, Overtime
Overtime duty, banked · Bank of Working Hours (new this step)20:00–20:300h30, Banked (Bank of Working Hours)
Overtime duty, remaining (new this step)20:30–23:303h00, Proceeds to overtime, not yet split by the night boundary
Work request01:30–05:003h30, Overtime
Lines so far5

Step 3 of 7

The day/night split, a boundary you configure

The remaining overtime duty splits into a day line and a night line at the boundary. Switch the boundary below and the split moves.

Configurable

Any overtime that crosses the configured night boundary splits into separate day and night lines, each on its own rate, including a duty that runs across midnight.

Administrators configure the night boundary. Compare the two examples below: the overtime duty’s night hours change, while the work request remains within night time under either setting.

Night-time period
The payroll pipeline's running figures after step 3 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00DayBank Holiday, day
Shift extension13:00–14:301h30DayOvertime, day
Overtime duty, banked · Bank of Working Hours20:00–20:300h30, Banked (Bank of Working Hours)
Overtime duty, day (new this step)20:30–22:001h30DayOvertime, day
Overtime duty, day (new this step)20:30–23:303h00DayOvertime, day
Overtime duty, night (new this step)22:00–23:301h30NightOvertime, night
Overtime duty, night (new this step), 0h00NightOvertime, night (none under this boundary)
Work request01:30–05:003h30NightOvertime, night
Lines so far6

Step 4 of 7

The first-hour premium

Every period's first hour is marked separately, independently of whichever split it just went through.

Many collective agreements pay a higher rate for the very first hour of a period of extra time than for the hours after it. SkyRoster marks that hour on every period independently: the holiday shift, the extension, the remaining overtime duty and the work request each get their own first hour marked.

The night split and the first-hour premium are two independent cuts through the same duty; here they land at different times, so one continuous overtime duty ends up divided into three differently-rated pieces.

The payroll pipeline's running figures after step 4 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00 (incl. 1h00 premium)DayBank Holiday, day
Shift extension13:00–14:301h30 (incl. 1h00 premium)DayOvertime, day
Overtime duty, banked · Bank of Working Hours20:00–20:300h30, Banked (Bank of Working Hours)
Overtime duty, day20:30–22:001h30 (incl. 1h00 premium)DayOvertime, day
Overtime duty, day20:30–23:303h00 (incl. 1h00 premium)DayOvertime, day
Overtime duty, night22:00–23:301h30NightOvertime, night
Overtime duty, night, 0h00, none crosses into night under this boundaryNightOvertime, night (none under this boundary)
Work request01:30–05:003h30 (incl. 1h00 premium)NightOvertime, night
Lines so far6

Step 5 of 7

Compensatory Time Off, mirrored

Every paid line above is mirrored into a matching CTO line, at this employee's configured compensatory rate.

This employee's contract banks overtime as time off rather than paying it out, so every paid line above, the holiday shift, the extension, both overtime portions and the work request, is mirrored into a Compensatory Time Off (CTO) line at the contract's configured rate: one and a half hours banked per hour worked, in this illustration.

The Bank of Working Hours line is not mirrored. It was already banked, not paid, so there is nothing left to compensate a second time.

The payroll pipeline's running figures after step 5 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00 (incl. 1h00 premium)DayBank Holiday, day
Shift extension13:00–14:301h30 (incl. 1h00 premium)DayOvertime, day
Overtime duty, banked · Bank of Working Hours20:00–20:300h30, Banked (Bank of Working Hours)
Overtime duty, day20:30–22:001h30 (incl. 1h00 premium)DayOvertime, day
Overtime duty, day20:30–23:303h00 (incl. 1h00 premium)DayOvertime, day
Overtime duty, night22:00–23:301h30NightOvertime, night
Overtime duty, night, 0h00, none crosses into night under this boundaryNightOvertime, night (none under this boundary)
Work request01:30–05:003h30 (incl. 1h00 premium)NightOvertime, night
Compensatory (CTO) · mirrors Holiday shift (new this step), 7h30DayCompensatory Time Off
Compensatory (CTO) · mirrors Extension (new this step), 2h15DayCompensatory Time Off
Compensatory (CTO) · mirrors Overtime, day (new this step), 2h15DayCompensatory Time Off
Compensatory (CTO) · mirrors Overtime, day (new this step), 4h30DayCompensatory Time Off
Compensatory (CTO) · mirrors Overtime, night (new this step), 2h15NightCompensatory Time Off
Compensatory (CTO) · mirrors Overtime, night (new this step), 0h00NightCompensatory Time Off
Compensatory (CTO) · mirrors Work request (new this step), 5h15NightCompensatory Time Off
Lines so far11

Step 6 of 7

Code resolution

Every line, including the meal allowance the holiday shift triggered, resolves to a numeric code from this employee's own configuration tables.

Six configuration tables, Bank Holidays, Bank of Working Hours, Compensatory Time Off, Meal, Overtime and Preventive, map roster and attendance events to the numeric codes the client's payroll system expects. Each table is assigned per employee, so a colleague on a different collective agreement can see different codes for the same hours.

The meal allowance is not one of the four inputs, and it skips the carve-out, the split and the mirroring: it is evaluated once, directly from the holiday shift overlapping the configured meal-time window, and resolved straight to a code here. The Preventive table is not triggered by this employee's day.

The payroll pipeline's running figures after step 6 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00 (incl. 1h00 premium)DayBank Holiday, day · 4014
Shift extension13:00–14:301h30 (incl. 1h00 premium)DayOvertime, day · 4111
Overtime duty, banked · Bank of Working Hours20:00–20:300h30, Banked (Bank of Working Hours) · 4302
Overtime duty, day20:30–22:001h30 (incl. 1h00 premium)DayOvertime, day · 4120
Overtime duty, day20:30–23:303h00 (incl. 1h00 premium)DayOvertime, day · 4120
Overtime duty, night22:00–23:301h30NightOvertime, night · 4121
Overtime duty, night, 0h00, none crosses into night under this boundaryNightOvertime, night (none under this boundary) · 4121
Work request01:30–05:003h30 (incl. 1h00 premium)NightOvertime, night · 4131
Compensatory (CTO) · mirrors Holiday shift, 7h30DayCompensatory Time Off · 4214
Compensatory (CTO) · mirrors Extension, 2h15DayCompensatory Time Off · 4211
Compensatory (CTO) · mirrors Overtime, day, 2h15DayCompensatory Time Off · 4220
Compensatory (CTO) · mirrors Overtime, day, 4h30DayCompensatory Time Off · 4220
Compensatory (CTO) · mirrors Overtime, night, 2h15NightCompensatory Time Off · 4221
Compensatory (CTO) · mirrors Overtime, night, 0h00NightCompensatory Time Off · 4221
Compensatory (CTO) · mirrors Work request, 5h15NightCompensatory Time Off · 4231
Meal allowance · from Holiday shift (new this step)12:00–13:00 (window), (flat allowance), Meal · 4401
Lines so far12

Step 7 of 7

One export

These lines are what a Draft export previews, for one employee, on one day, inside one month.

A payroll officer can run a Draft export for absences, overtime or prevention at any point in the month, for one unit or the whole organisation, as many times as needed. It recomputes fresh every time and never marks anything reported.

Closing the month is irreversible: it marks contributing records as reported and archives the final file. A 20-day cooldown helps prevent accidental repeat closing. Draft and final exports remain available for download.

The payroll pipeline's running figures after step 7 of 7.
LineTimeHoursDay / nightPayroll treatment
Holiday shift08:00–13:005h00 (incl. 1h00 premium)DayBank Holiday, day · 4014
Shift extension13:00–14:301h30 (incl. 1h00 premium)DayOvertime, day · 4111
Overtime duty, banked · Bank of Working Hours20:00–20:300h30, Banked (Bank of Working Hours) · 4302
Overtime duty, day20:30–22:001h30 (incl. 1h00 premium)DayOvertime, day · 4120
Overtime duty, day20:30–23:303h00 (incl. 1h00 premium)DayOvertime, day · 4120
Overtime duty, night22:00–23:301h30NightOvertime, night · 4121
Overtime duty, night, 0h00, none crosses into night under this boundaryNightOvertime, night (none under this boundary) · 4121
Work request01:30–05:003h30 (incl. 1h00 premium)NightOvertime, night · 4131
Compensatory (CTO) · mirrors Holiday shift, 7h30DayCompensatory Time Off · 4214
Compensatory (CTO) · mirrors Extension, 2h15DayCompensatory Time Off · 4211
Compensatory (CTO) · mirrors Overtime, day, 2h15DayCompensatory Time Off · 4220
Compensatory (CTO) · mirrors Overtime, day, 4h30DayCompensatory Time Off · 4220
Compensatory (CTO) · mirrors Overtime, night, 2h15NightCompensatory Time Off · 4221
Compensatory (CTO) · mirrors Overtime, night, 0h00NightCompensatory Time Off · 4221
Compensatory (CTO) · mirrors Work request, 5h15NightCompensatory Time Off · 4231
Meal allowance · from Holiday shift12:00–13:00 (window), (flat allowance), Meal · 4401
Lines so far12

Illustrative preview · 3 of 12 lines · payroll export field order

Sample export lines in the payroll export's fixed-width field order.
CompanyEmployee no.CodeLineHoursStart–endCost centreMealCorrection
0011048224014Holiday shift5.0008:00–13:0010042NN
0011048224120Overtime duty, day1.5020:30–22:0010042NN
0011048224401Meal allowance, 12:00–13:0010042YN

12 lines from this one illustrative day feed straight into this month's Draft export, alongside every other employee's. Close of month is the step that locks them.

  • Bank of Working Hours (BWH)A per-employee credit balance accumulated by working extra hours and consumed by approved Work Requests.
  • Compensatory Time Off (CTO)Substitute time-off granted in lieu of payroll for working overtime, on holidays, or on weekly off days.
  • Bank Holiday (BH)Payroll category for a calendar holiday day worked.
  • Meal allowancePer-day meal-allowance amount included in payroll.
  • Close-of-monthThe monthly payroll finalisation event that locks in reported hours and produces the export bundle for your payroll system.

Stage 4 · Allowances

Review allowances and entitlements.

Meal allowances depend on configured time windows and work conditions. Replacement allowance follows the relevant shift, day and request settings. Compensatory-time entries apply to eligible contractual arrangements.

Confirm the employee’s assigned code tables and allowance terms. See payroll configuration.

Stage 5 · Draft

Generate and reconcile a draft export.

Generate a draft from the current absence, overtime or preventive-duty records. Nothing is marked as reported yet. Correct the records and draft again.

Review configuration warnings, employee code tables, unresolved attendance gaps, cost centres and correction lines before finalising. Validate the output against the agreed payroll import format.

Stage 6 · Close

Close the reconciled period.

Close the month to mark its contributing records as reported and archive the final file. Closing is irreversible. The 20-day interval before another close is not an undo period.

Exports remain available for download. Changes affecting an already-closed period are represented through subsequent correction lines.

Stage 7 · Handover

Hand over the agreed payroll file.

Pass the final export into your agreed payroll process. Keep the reconciliation records. A technical calculation export helps investigate a figure that needs explaining.

Explore your month-end workflow.

Start with a 20-minute discovery call about your attendance reconciliation, payroll review and period-close process. We’ll then arrange a demonstration tailored to your priorities.