Smart Break Tracking for Attendance
HR Attendance Breaks Pro adds comprehensive break management, policy enforcement, a real-time OWL analytics dashboard, and a mobile API to Odoo's standard attendance module.
Complete Break Management for Odoo
Every feature you need to track, analyze, and enforce break policies across your entire workforce β installed in minutes, no extra dependencies.
Break Tracking During Attendance
Start and stop breaks while checked in. Each break is linked to its attendance session with automatic duration calculation. Active breaks end automatically at check-out.
Mobile API β 6 Endpoints
Full break management from any device via 6 RESTful JSON-RPC endpoints. Start, end, cancel, and view breaks programmatically with standard Odoo session authentication.
OWL 2.x Analytics Dashboard
A dedicated real-time dashboard built with Odoo's OWL framework and Chart.js 4.4. Features KPI cards, trend lines, distribution charts, department comparisons, and a live breaks table.
Full Dark & Light Mode
The dashboard detects Odoo's dark mode via the o_dark class and the OS-level prefers-color-scheme preference. All charts re-render automatically when the theme changes. Both dark and light color palettes are fully polished.
Configurable Break Types
Create unlimited break types with icons, colors, max durations, daily limits, and time-window restrictions. Five types pre-installed: Lunch, Tea/Coffee, Prayer, Personal, Medical.
Automatic Policy Enforcement
Validates policies on every break creation: no duplicate active breaks, time-window enforcement, daily frequency limits per type, and a global session allowance β all without manual intervention.
Multi-Company Isolation
Break types are scoped per company. Record rules ensure employees see only their own data, HR users see company-level data, and managers have full unrestricted access.
Settings Integration
Fully integrated into Odoo Settings under HR > Attendance. Enable breaks, set the global max allowance per session, and toggle automatic deduction of break time from worked hours.
Exceeded Break Monitoring
The dashboard surfaces exceeded breaks by department, by break type, and over time (12-month trend). HR managers instantly see which teams and break types are most commonly over limit.
5 Pre-Configured Break Types
Install and go β five break types are set up automatically. Edit, archive, or add your own at any time.
Lunch Break
60 min max
1 per day
Tea / Coffee
15 min max
2 per day
Prayer Break
20 min max
Unlimited
Personal Break
15 min max
Unlimited
Medical Break
30 min max
Unlimited
Plus create unlimited custom break types with your own icons, limits, and time-window restrictions
Real-Time Break Analytics Dashboard
A purpose-built OWL component with 10+ Chart.js charts gives instant visibility into break activity across your whole organization.
8 Live KPI Cards
Breaks today, total break time, active breaks right now, employees on break, 30-day average duration, exceeded count, completed count, and all-time total β all updated in real time.
Daily, Weekly & Monthly Trends
Three trend charts covering the last 7 days, 8 weeks, and 12 months. The monthly view uses a dual-axis chart showing break count alongside total break hours.
Distribution Charts
Doughnut chart for breaks by type, pie chart for breaks by status (active/done/cancelled), histogram for duration distribution, and a bar chart for breaks by hour of day.
Department & Employee Analysis
Top 10 departments by break count (last 30 days), top 10 employees by break frequency, average duration vs. max allowed by type, and exceeded breaks by department.
Built for Dark Mode
The dashboard doesn't just "support" dark mode β it was architected for it. A MutationObserver watches for theme changes on the HTML element in real time. The moment you switch Odoo to dark mode, all 10+ charts are destroyed and re-rendered with an entirely new color palette.
Dark mode uses brighter, more vibrant colors calibrated for legibility on dark backgrounds. Light mode uses a clean, professional palette. Both are defined as CSS custom properties and swap instantly with smooth 300ms transitions.
See It In Action
Real screenshots from a live Odoo instance β no mockups, no illustrations. What you see is exactly what you get.


Break Types Configuration
5 pre-built types with limits & policies

Break Records β List View
Grouped by type with full duration tracking

Break Records β Kanban Board
Visual card layout by break type

Break Detail with Policy Enforcement
Exceeded ribbon flags policy violations

Break Type Form β Full Configuration
Full setup: icon, color, limits, time-window restriction
How to Get Started
Four simple steps from installation to live analytics across your organization.
Install the Module
Install from the Odoo Apps menu. The only dependency is the standard hr_attendance module β already available in every Odoo instance. Five break types are created automatically.
Configure Settings
Go to Settings > Attendance Breaks. Enable the feature, set your maximum break allowance per session (default: 60 min), and choose whether to deduct breaks from worked hours.
Define Break Types
Use the 5 built-in types or create your own. For each type, configure the icon, color, max duration, daily limit, and optionally restrict it to a specific time window during the day.
Track & Analyze
Employees start and stop breaks from the attendance form or via the mobile API. Open the Breaks Dashboard to see real-time analytics, trends, department comparisons, and policy violations.
RESTful API β 13 Endpoints
6 mobile endpoints for break management from any app or device, plus 7 dedicated dashboard endpoints for analytics data.
+ 4 more dashboard endpoints
Session-Based Authentication
All endpoints use standard Odoo session cookie auth. No custom tokens or API keys needed β just log in once via the standard Odoo login endpoint.
Full Policy Validation
The /start endpoint validates all policies before creating a break: active attendance required, no duplicate active breaks, time-window check, daily limit, and global allowance.
Consistent Response Format
Every endpoint returns { "success": bool, "data": ..., "error": ... }. Predictable structure makes client-side error handling straightforward.
Paginated History
The /history endpoint supports limit, offset, date_from, and date_to parameters for efficient pagination in mobile apps.
Technology Stack
Standard Odoo stack β no external dependencies, no npm packages, no runtime surprises. If Odoo runs, this module runs.
Ready to Add Smart Break Tracking to Odoo?
Install HR Attendance Breaks Pro on your Odoo 17, 18, or 19 instance today. Licensed under Odoo Proprietary License (OPL-1). Built by OctiVex Tech.