Configure weekday, weekend and holiday overtime rules and auto-compute overtime hours from attendance in Odoo 17/18/19. One-time license from $299.00 USD for Odoo 17, 18, 19 — includes 12 months of updates and support.

Configure weekday, weekend and holiday overtime rules and auto-compute overtime hours from attendance in Odoo 17/18/19.
No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.
Paying overtime by hand is where payroll accuracy quietly bleeds out. Spreadsheets tracking who worked late, which day counted as 1.5x versus 2x, and whether a shift crossed into a public holiday are error-prone, slow, and impossible to audit. This ECOSIRE build-to-order module makes overtime a first-class, rule-driven part of your Odoo HR stack — so overtime hours are computed the moment attendance is recorded, priced against the correct rate, routed for approval, and pushed straight into payroll.
Overtime rule engine modeling weekday, weekend and public-holiday rules as a dedicated Odoo model with configurable rate multipliers or fixed rates
Weekday, weekend and holiday OT rates each priced independently (e.g. 1.25x weekday, 1.5x weekend, 2x public holiday) and fully editable per company
Configurable qualifying thresholds — count overtime only beyond N hours per day or N hours per week, with a grace-minute buffer if required
Configurable OT counting periods (daily, weekly, or a custom pay cycle) so calculation aligns with how you actually run payroll
Automatic overtime computation from hr.attendance using a compute field with @api.depends — no manual entry or spreadsheet reconciliation
Public-holiday awareness driven by the company calendar and resource.calendar working hours, splitting cross-day and cross-boundary shifts at the correct rate
This is not an off-the-shelf apps.odoo.com download. ECOSIRE designs, builds, installs and supports a net-new module tailored to your overtime policy, your rate structure, and your working calendars. Typical delivery is 2 to 4 weeks depending on the complexity of your rules and integrations.
At the core is a configurable rule engine. We model overtime rules as a dedicated Odoo model (models.Model) with fields for rule type (weekday, weekend, public holiday), the applicable multiplier or fixed rate, the qualifying threshold, and the counting period. A compute field decorated with @api.depends reads each employee's attendance records (hr.attendance) and the relevant working schedule and holiday calendar, then derives overtime hours automatically — no manual data entry, no re-keying between systems.
Public holidays and weekends are handled explicitly. The engine reads your company calendar and resource.calendar working hours so a shift that starts Friday evening and runs into a weekend, or lands on a declared public holiday, is split and priced at the correct rate. Thresholds let you define, for example, that only hours beyond 8 in a day or 40 in a week qualify — and the counting period (daily, weekly, or a custom pay cycle) is yours to set.
Every computed overtime block flows through an approval workflow. Managers see pending overtime in a dedicated view (Odoo list/form views in XML, or OWL components where a richer UX helps), approve or reject with a reason, and the state transition is captured for audit. Access is locked down through ir.model.access.csv and record rules so an employee sees only their own overtime while managers and payroll officers get the scope they need — and nothing more.
Approved overtime integrates with Odoo Payroll (Enterprise) as payslip inputs, or with your existing payroll export if you run Community — mapping overtime hours and amounts to the correct salary rules. QWeb reports give you per-employee and per-period overtime statements for finance and for the employee record. Automated actions and scheduled jobs (ir.cron) can roll up overtime at period close, flag anomalies, and notify approvers. And because it is native Odoo, everything is reachable over XML-RPC and JSON-RPC for downstream systems or a headline dashboard.
Built and tested against Odoo 17, 18 and 19, Community or Enterprise. You get the source, the configuration, documentation, training, and a support window — delivered by an ECOSIRE Odoo engineer, not a black box.
Owns pay accuracy and runs the monthly cycle. Needs overtime computed correctly against weekday, weekend and holiday rates, approved on record, and flowing into payslips without manual rekeying or spreadsheet audits.
Approves overtime for a team working variable shifts. Wants a single Odoo view of pending overtime, one-click approve/reject with a reason, and confidence that only genuinely qualifying hours are being charged.
Signs off labor cost and needs an auditable trail. Values per-period QWeb overtime statements, rate transparency, and the ability to reconcile approved overtime against payroll and attendance data.
Maintains the Odoo instance and integrations. Needs clean security via ir.model.access.csv and record rules, scheduled cron roll-ups, and XML-RPC/JSON-RPC access to feed BI or downstream tools.
Buy the license on ecosire.com and download the Overtime Rules & Calculation module ZIP from your account dashboard.
Extract the ZIP into your Odoo custom addons folder on the server (or upload via Apps > Install from file on Odoo.sh / runbot).
Activate Developer Mode, open Apps, click Update Apps List, search for Overtime Rules & Calculation, and press Install.
Open the new menu, paste your ECOSIRE license key, connect any external credentials (Shopify, Amazon, Stripe, etc.), and save.
Run the built-in connection test, sync your first 10 records, and schedule the recurring cron. Contact support if anything fails.
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Weekday / weekend / public-holiday OT rates | Built in as configurable rules with per-type multipliers or fixed rates | Possible but you design and build the rate model yourself | Often only a single flat OT rate; holiday logic limited | |
| Auto-calculation from attendance | Computed from hr.attendance via @api.depends, no manual entry | Requires you to write the compute logic and tests | Varies; many require manual OT entry or partial automation | |
| Configurable thresholds & counting periods | Daily/weekly/custom periods and per-day or per-week thresholds set to your policy | Fully open but entirely your effort to specify and build | Usually fixed or coarse-grained options | |
| Approval workflow with audit trail | Multi-level approve/reject with state transitions and reasons | Buildable with Odoo activities/states but must be designed | Sometimes present, often single-step and rigid | |
| Payroll integration | Mapped to Odoo Payroll salary rules (Enterprise) or structured export (Community) | You wire and maintain the mapping yourself | Integration depends on the vendor; often Enterprise-only | |
| Fit to your exact policy | Modeled to your rules, departments and contract types | Full control, at full build cost and timeline | Fit is whatever the fixed feature set allows | |
| Odoo 17 / 18 / 19 compatibility | Built and tested across all three versions | Depends on your team's maintenance | Version support varies; upgrades can lag | |
| Delivery, support & source handover | Source, docs, training and a support window from an Odoo engineer | Owned entirely by your internal team | Download plus vendor support tier; source may be obfuscated |
This is a build-to-order module, not an instant download. Typical delivery is 2 to 4 weeks depending on the complexity of your overtime rules, calendars and payroll integration. We start with a short discovery call to capture your rate structure, thresholds and counting periods, then build, test against your Odoo version, install on your instance (or a staging copy first), and hand over with documentation and training. You get progress checkpoints along the way, not a black box.
Every engagement includes a defined post-go-live support window for bug fixes and questions. During that window we address defects in the delivered module and answer configuration questions from your HR and payroll teams. We also provide version-compatibility guidance so the module keeps working as you move across Odoo 17, 18 and 19. Extended support and enhancement retainers are available if you want an ongoing relationship beyond the initial window.
The module is built and tested against Odoo 17, 18 and 19, on both Community and Enterprise. On Enterprise we map approved overtime directly to Odoo Payroll salary rules and payslip inputs. On Community, where the payroll app is not available, we deliver a structured overtime export that feeds your existing payroll process. We confirm your exact version and edition during discovery so the manifest and dependencies are correct from day one.
Overtime is derived automatically from your Odoo attendance records (hr.attendance). A compute field decorated with @api.depends reads each employee's clocked hours together with their working schedule (resource.calendar) and the company public-holiday calendar, then applies your rules: it identifies which hours are weekday, weekend or holiday, checks them against your daily or weekly thresholds, applies rounding, and prices each block at the correct rate. Nothing is entered by hand, so the numbers are reproducible and auditable.
Yes — that is the point of building it to order. Weekday, weekend and holiday rates, qualifying thresholds, counting periods, rounding rules and the number of approval levels are all configured to your policy during the build. Because we deliver the source, further changes are always possible later. If your policy differs by department, contract type or country, we model that explicitly rather than forcing you into a fixed off-the-shelf structure.
Access is enforced through Odoo's native security: ir.model.access.csv grants create/read/write/delete per role, and record rules restrict visibility so employees see only their own overtime while managers and payroll officers get the appropriate scope. Every approval or rejection is captured as a state transition with the actor and a reason, and QWeb reports plus the pivot/graph views give finance a full per-period audit trail.
Configure weekday, weekend and holiday overtime rules and auto-compute overtime hours from attendance in Odoo 17/18/19.