Full Time Contractor Accrual
Most leave types accrue on a calendar schedule — a fixed number of days per month, or a lump sum once a year. The Full Time Contractor accrual behaviour is different: leave accrues based on paid work days — the weekdays (see Business Days) on which the contractor is paid, including public holidays and paid leave — which suits contractors and freelancers who only earn leave for the days they actually work.
Setting It Up
Select Full Time Contractor from the Accrual Behaviour dropdown when creating or editing a leave type under Settings → Leave Types.
Note
For this accrual behaviour, the Days field changes meaning. Instead of “days per annum,” it becomes the number of paid work days that must be worked to accrue 1 day of leave — for example, 17 for annual leave or 26 for sick leave. If left blank, it defaults to 17.
How It Works
TeamHub recalculates the balance for a contractor-accrual leave type from scratch in two situations:
Immediately, whenever something happens that could affect it — a leave request is submitted, approved, declined, or cancelled.
Automatically every night (around 4am), for every employee on this accrual behaviour — so a new day still accrues as soon as enough paid work days have passed, even if nothing else happened that day.
Paid Work Days = Weekdays Since Opening Date − Unpaid Leave
Days Owed = floor(Paid Work Days / Days Required Per Accrual)
New Entry = Days Owed − Days Already Posted
Weekdays are counted from the leave type’s working-day schedule (see Business Days), but public holidays are not excluded — they count as paid work days, just like any other working day.
Only the difference between what’s owed and what’s already been posted is added as a new entry, so nothing is ever double-counted, and a day only appears once it’s fully earned — there’s no partial credit part-way through a block of days.
Note
Only unpaid leave reduces the paid work days. Public holidays and paid leave of any type — annual, sick, family responsibility and so on — still count as paid work days, because the contractor is paid for them. Leave is recognised as unpaid when the name of its leave type contains “unpaid” (or “onbetaal”).
Note
The nightly run always counts days only through yesterday, never today — a day only counts once it’s actually over. Since the run happens at 4am, “yesterday” has always already fully finished by the time it runs, so there’s no need to wait for a specific time of day.
Positive and Negative Accrual
Positive accrual is the normal case: as an employee works more days, the total owed crosses the next whole-day threshold and TeamHub posts a new accrual entry for the difference.
Negative accrual can happen because the balance is always recalculated from scratch rather than simply added to. If an employee’s leave is backdated or approved after the fact for dates already counted as worked, the recalculated total can drop below what’s already been posted. When that happens, TeamHub posts a negative adjustment entry that claws back the difference.
Note
A negative adjustment is expected, automatic behaviour, not an error — it almost always means a leave record was added or changed for a date in the past.
Checking How an Entry Was Calculated
Every accrual or adjustment entry posted for this leave type carries a short breakdown of its number. Hover over the Days value for that entry in the All Entries table (under an employee’s leave type Balances) to see:
Period — the leave type’s opening balance date (or the employee’s start date) through yesterday
Paid work days — the days counted as worked; if the employee had unpaid leave, the gross days and the unpaid days deducted are shown too
Accrued — days worked divided by the days required per accrual, rounded down
This entry — the days owed in total, less what was already credited, which is this entry’s value
Worked Example
Here’s a real tooltip for a leave type requiring 26 paid work days per day of leave:
Period: 01 Jul 2026 - 15 Oct 2026
Paid work days: 77
Accrued: 77 / 26 = 2.96, rounded down to 2 days
This entry: 2 days - 0 days already credited = 2
Public holidays and paid leave count as paid work days.
The same calculation, step by step:
Step |
Result |
|---|---|
Weekdays from opening date (01 Jul 2026) through yesterday (15 Oct 2026), including the 3 public holidays in that period |
77 |
Less: unpaid leave in that period |
− 0 |
= Paid work days |
77 |
Divided by 26 paid work days required per day of leave |
÷ 26 |
= Days owed, rounded down (77 ÷ 26 = 2.96) |
2 |
Important
77 paid work days ÷ 26 = 2.96 → floor to 2 days owed.
If no days had been posted before, this run’s new entry is 2 days. The employee has worked 25 of the 26 paid work days needed for the next day (77 mod 26 = 25); once 1 more day has been worked, a 3rd day will accrue automatically, with no action needed from anyone.
Balances Can’t Be Manually Edited
Because the balance is continuously reconciled from the formula above, manually adding, editing, or deleting an opening, accrual, or adjustment entry on a contractor-accrual leave type is blocked for regular admins — the next automatic run would just recalculate over it. System administrators retain the ability to edit or delete existing entries for support purposes.
Frequently Asked Questions
- Why did a negative entry appear on this employee’s balance?
A leave record affecting the paid-work-days calculation — usually a backdated or late-approved booking — reduced the number of days actually worked, so the system posted a corrective adjustment.
- Why can’t I add or edit a balance entry for this leave type?
Contractor-accrual leave types reconcile their own balances automatically, so manual entries are blocked for regular admins. Contact a system administrator or Support if a correction is genuinely needed.
- Why is the paid-work-days count higher than I expected?
Public holidays and paid leave (annual, sick, family responsibility and so on) count as paid work days; only unpaid leave is deducted. This is intentional, since the contractor is paid for those days.
- Why doesn’t a particular entry show a calculation breakdown when I hover over it?
The breakdown is only captured on entries posted after this feature was added — older entries won’t have one, and entries posted before the paid-work-days rules changed show the older, longer breakdown.