Skip to Content

Shift Planning & Rota

74.55 74.55

Instant digital delivery after payment confirmation.
License: OPL-1, every download is watermarked.
Terms and Conditions
Compatible with Odoo 18.0 · 19.0
OPL-1 license · Odoo 18.0 & 19.0
Shift Planning & Rota for Odoo — preview banner

Shift Planning & Rota

Build staff rotas, track availability, spot coverage gaps and publish shifts

Building staff rotas in spreadsheets means double-bookings, missed time-off and no visibility of coverage gaps until someone fails to turn up. Manual scheduling also hides labour cost until payroll, and Odoo's advanced planning is Enterprise-locked. This pure-Community app lets hospitality, retail, care and any shift-based operation plan costed shifts per employee and role, capture availability and approved leave, and detect coverage gaps and conflicts before publishing. One-click weekly duplication and bulk publish make recurring rotas fast to produce on Odoo Community alone.

Key Features

Weekly rota plans with costed totals

gb.rota.plan covers a Monday-to-Sunday week with a draft, published and closed lifecycle. _compute_totals rolls up shift_count, total_hours and a Monetary total_cost so each rota shows its labour spend, and action_publish writes published on every shift in one step.

Costed shift assignments

Each gb.rota.shift records start, stop, unpaid break_minutes and hourly_cost. _compute_hours derives duration_hours, paid_hours (gross minus break) and cost, falling back to the role default_hourly_cost when the shift has no rate of its own.

Four-way conflict detection

_compute_conflicts checks double-booking via _find_overlapping_shifts, approved time-off clashes, availability breaches and rest-period breaches. It sets conflict_level to error or warning, and action_publish refuses to publish while any blocking double-booking or time-off clash remains.

Employee availability windows

gb.rota.availability stores per-day hour_from/hour_to windows with an available flag for explicit unavailability. A constrains check blocks overlapping windows, and the covers method feeds the shift availability test so staff are not rostered outside their stated hours.

Approved time-off blocks

gb.rota.timeoff records requested, approved or refused absence with action_approve/action_refuse. Its overlaps method only counts approved blocks, which the shift engine treats as a blocking conflict so you never schedule someone who is off.

Coverage requirements and gap analysis

gb.rota.coverage sets a required_headcount per day, hour window and role. _compute_assigned counts distinct employees actually rostered in that window and computes gap, surplus and a gap/ok/over status, surfacing under- and over-staffing on the plan as gap_count.

Reusable roles with rest rules

gb.rota.role holds a colour, default_hourly_cost and a min_rest_hours value (default 11h) used by the rest-period conflict check. Roles drive both shift costing and the statutory rest gap between consecutive shifts.

One-click rota duplication

The gb.rota.duplicate.wizard clones an existing rota to a new week via copy_to_week, shifting every shift's start and stop dates by the week offset and resetting them to unpublished. Coverage requirements are copied unless you untick the option.

Use Cases

A hospitality manager builds next week's rota, sees the coverage gap on Friday night and assigns another bartender before publishing.
A care-home coordinator records carers' availability and approved leave so the engine blocks any shift that clashes with time off.
A retail supervisor duplicates last week's rota to a new week in one click and only adjusts the changed shifts.
An operations lead reviews total_cost on each plan to keep weekly labour spend within budget.
A scheduler relies on the 11-hour minimum rest check to avoid breaching working-time rest rules between shifts.
A team leader publishes the week so staff only see confirmed shifts, after resolving every blocking double-booking.

Screenshots

Shift Planning & Rota — Rotas in Odoo

Rotas

Shift Planning & Rota — Roles in Odoo

Roles

Shift Planning & Rota — All Shifts in Odoo

All Shifts

Shift Planning & Rota — Skills in Odoo

Skills

Why Choose This Module

A complete rota and scheduling tool for Odoo Community. Plan shifts per employee and role, capture staff availability and time-off, detect over- and under-coverage against a required-headcount template, and publish the rota so staff can see their assigned shifts — with no Enterprise dependency.

Specifications

  • Compatible: Odoo 18.0 / 19.0
  • License: OPL-1
  • Languages: English
  • Author: Pokutsoft
  • Dependencies: hr
  • Support: support@pokutsoft.com

Update date: 2026-07-02