Statutory Leave Calendar Sync
Mirror approved statutory time off into working-time calendars and see true capacity instantly
When a statutory leave request is approved in Odoo Time Off, this app
automatically writes a matching leave into the employee's working-time
calendar (resource.calendar.leaves). The absence is then
visible to every part of Odoo that reads the resource calendar –
capacity planning, scheduling and availability – with no manual
double entry. Refuse or withdraw the request and the calendar leave is
removed again, keeping the schedule and the law in perfect sync.
What it does
Automatic two-way sync
Approving a statutory leave creates a calendar leave on the employee's own resource and schedule. Editing the dates updates the mirror; refusing, resetting to draft, or deleting the request removes it. A deterministic diff engine guarantees one calendar leave per request and cleans up duplicates.
Capacity planning
A capacity run measures, for any date window, each employee's scheduled working hours, the statutory-leave hours removed from them, and the resulting available hours and FTE. Only time that falls inside real attendance windows counts – a weekend or after-hours leave removes zero working hours.
Key features
- Auto-mirror approved statutory leave into resource calendars.
- Per leave-type statutory classification with name-based defaults.
- Thirteen recognised statutory leave categories (annual, sick, maternity, paternity, parental, bereavement, jury duty and more).
- Opt-out per leave type and per company.
- Capacity runs: scheduled vs. available hours and FTE per employee.
- Per-employee “fully absent” flag for the planning window.
- Bulk re-sync wizard with orphan-leave clean-up.
- Daily housekeeping cron that re-mirrors and prunes automatically.
How the capacity maths works
| Figure | Meaning |
|---|---|
| Scheduled hours | Working hours in the window from the calendar's weekly attendance pattern. |
| Statutory leave hours | Portion of approved statutory leave that overlaps real attendance windows. |
| Available hours | Scheduled hours minus statutory leave hours (never below zero). |
| Leave utilisation | Statutory leave hours as a share of scheduled hours. |
| FTE / Available FTE | Scheduled and available hours expressed against a 40-hour full-time reference. |
Scope & boundary
This add-on classifies and synchronises leave already configured in Odoo Time Off; it does not invent country-specific entitlement numbers. The legal day/pay rules for each jurisdiction stay in your existing time-off configuration or a country statutory-leave pack. This app's job is to make sure that once leave is approved, every scheduling and capacity consumer of the working-time calendar respects it.
Built on the Odoo Community Time Off
(hr_holidays) base – no Enterprise dependency.
Compatible with Odoo 18 and 19.
Keywords
statutory leave, resource calendar sync, capacity planning, working time, time off, hr_holidays, available hours, FTE, absence management, employee scheduling, leave calendar, Odoo HR.
Screenshots
Employee Capacity
Settings
Re Sync Calendars
Capacity Runs
Update date: 2026-07-02