Overview
We've made a big upgrade to how leave is recorded, so that the hours booked against a worker flow through to payroll accurately - down to the individual day and pay rate.
Previously, a leave request stored a single total number of hours. Now, when you create or edit leave for a worker, Florence lets you set the hours day by day, split across each of the worker's pay rates, and it shows you a live running balance of their remaining allowance as you go.
What's New at a Glance
Hours per day — record different hours for each day of a leave request, with start and end times, instead of one lump total.
Pre-filled from the rota — Florence looks at the shifts the worker was scheduled to work and pre-fills the leave hours for you, so a typical request is just a quick check-and-confirm.
Live allowance balances — see how much of each allowance the worker has left, updating in real time as you enter hours.
Multiple pay rates supported — if a worker has more than one role/pay rate, leave hours are split across them correctly for payroll.
Clearer rota cards — leave now shows the time window and the hours together on the rota, with a per-day breakdown available in the side panel.
Guided conflict handling — after you approve leave that clashes with rostered shifts, Florence opens the side panel to walk you through reassigning or opening those shifts.
Before You Start
The new hours-based flow relies on a few things being set up during onboarding by the Florence team:
Leave types (Annual Leave, Sick Leave, etc.)
Leave allowances for each worker (how much they're entitled to)
Pay rates attached to the worker's contract (used for payroll)
If any of these aren't set up, you can still book leave — Florence will simply show a simpler version of the form (see Common Scenarios below). If you need leave types, allowances or pay rates added or changed, contact your Florence implementation contact or support.
Recording Leave Hours (the Input Grid)
When you create or edit a leave request for a worker on desktop (Rota > Leave), you'll see the new hours grid:
Select the worker, leave type and the dates.
The grid lists each day of the leave. Florence pre-fills the hours for each day based on the shifts the worker was scheduled to work.
Review each day and adjust the hours if needed — for example, set a day to 0 hours if the worker wasn't due to work, or edit the start/end time for a partial day.
As you type, the allowance balance cards at the top update to show how many hours the worker has left.
Add an optional note, then Save.
Workers with More Than One Pay Rate
Some workers have more than one role, each with its own pay rate (for example a "Base" rate and a second job role). For payroll to be correct, leave hours need to be attributed to the right pay rate for each day.
In the hours grid, each pay rate appears as its own column. That means for any given day you can record, say, 3 hours against the Base rate and 2 hours against the second role — matching the shifts the worker would otherwise have worked. Florence stores these separately so each is paid at the correct rate.
You don't have to work this out yourself — the pre-fill splits the hours across pay rates for you based on the rostered shifts. You're just checking it looks right.
Live Allowance Balances
At the top of the request you'll see a card for each relevant allowance (e.g. Annual Leave), showing the hours remaining. These update instantly as you change the hours in the grid, so you can see the impact of the request before you save it.
If a request would take the worker over their allowance, Florence shows a warning but still lets you save it — the balance simply shows as negative so you can decide how to handle it.
How Leave Shows on the Rota
Approved leave appears as a card on the worker's row, colour-coded by leave type.
The card now shows the time window and the hours together (e.g. the leave time and the recorded hours), including where the recorded hours are zero.
Open the side panel and hover over the total hours to see a per-day breakdown of how those hours were recorded.
Workers on leave won't appear as available for shift assignment during that period.
Handling Shift Conflicts
If a worker already has shifts rostered during the leave period, approving the leave creates a conflict. To make this easier to deal with, Florence now automatically opens the side panel after you create or approve the leave, prompting you to resolve each clashing shift:
Reassign the shift to another worker, or
Open the shift so other staff can pick it up.
This means leave and the rota stay in step, with no orphaned shifts left on someone who's off.
Editing, Amending & Approving
The same hours grid is used when you edit, amend or approve a request, so you can adjust the per-day hours and times at any of those points. A couple of things to know:
If a leave request was created under the old system, the first time you edit it Florence spreads the original total across the days for you, then switches it to the new per-day format.
If a request sits on a payroll run that has already been finalised, editing is blocked. You'll see a banner explaining why and the form will be disabled, so nothing that's already been paid can be changed by accident.
How This Flows Into Payroll
Because leave is now recorded per day and per pay rate, payroll can attribute the right hours to the right run and the right rate. In particular, when a leave request spans two payroll periods, only the days that fall within each run are counted in that run — no more manual splitting.
Common Scenarios
A worker with two pay rates
The hours grid shows one column per pay rate. Each day's leave hours are split across the columns to match the shifts the worker would have done, so each portion is paid at the correct rate. Pre-fill does the split for you; just review and save.
No pay rates or allowances set up ("basic" setup)
If a company doesn't use pay rates or hasn't had leave allowances configured, you'll see a simpler form rather than the full hours grid — you can still record the leave and its dates, but there are no allowance balance cards or pay-rate columns to fill in. Florence shows clear empty-state text where those would normally appear, so it's obvious nothing is missing on your end. If you'd like allowances or pay rates enabled, speak to your Florence contact.
The rota isn't published yet
You can still book leave. If shifts aren't scheduled yet, the pre-filled hours may be an estimate — you (or the worker) can update them closer to the time so payroll stays accurate.
A partial day (a few hours off)
Set the start and end time for that day and enter the hours in the grid. Only those hours are deducted from the allowance and sent to payroll.
Leave that crosses the leave-year boundary
Where a request spans the end of one leave year and the start of the next (e.g. 28 Dec – 2 Jan), Florence matches the days to the correct year's allowance rather than assuming today's date.
FAQs
What's actually changed for me day to day?
Booking leave looks similar, but you now confirm hours day by day (mostly pre-filled) and can see the worker's remaining balance live. The payoff is that payroll is far more accurate, especially for part-days, multiple roles and leave that straddles two pay periods.
Do I have to enter every day's hours manually?
No. Florence pre-fills each day from the worker's rostered shifts. You only need to adjust anything that looks off and then save.
How are hours handled for a worker with two pay rates?
Each pay rate has its own column in the grid, and hours are attributed separately so each is paid at the right rate. The split is pre-filled from the rostered shifts.
We don't use pay rates or allowances — can we still book leave?
Yes. You'll get a simpler form without the allowance cards and pay-rate columns, and clear on-screen text where those would normally be. Contact your Florence implementation contact if you'd like them enabled.
Can a worker go over their allowance?
Yes — Florence shows a warning and the balance goes negative, but it won't block you from approving the leave.
What happens to leave booked under the old system?
It keeps working. The first time you edit one of those requests, Florence spreads the original total across the days and moves it onto the new per-day format.
Why can't I edit a particular leave request?
If the request falls on a payroll run that's already been finalised, editing is locked to protect what's already been paid. You'll see a banner explaining this.
What if leave spans two payroll periods?
Only the days within each payroll run are counted in that run, so the hours land in the right period automatically.






