Skip to main content
Odoo 17 / 18 / 19 β€’ HR & Attendance

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.

Mobile API10+ ChartsDark & Light ModeMulti-CompanyOPL-1
13
API Endpoints
10+
Interactive Charts
v17-19
Odoo Versions
Break Analytics Dashboard
LIVEToday
24
Today's Breaks
3
Active Now
18m
Avg Duration
2
Exceeded
Breaks by Hour
By Type
Lunch
Tea
Prayer
EmployeeTypeDurationStatus
A. MohamedLunch45mActive
K. JohnsonTea18mDone
S. PatelPrayer32mExceeded
10+ Charts
Real-time analytics
Policy Exceeded
Auto-flagged
Fully compatible with:Odoo 17.0Odoo 18.0Odoo 19.0Community EditionEnterprise Edition
13
Total API Endpoints
10+
Interactive Charts
5
Built-in Break Types
3
Odoo Versions Supported
Everything You Need

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.

Ready Out of the Box

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

OWL 2.x Analytics

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.

Break Analytics
Live
142
This Month
5
On Break Now
22m
Avg Duration
9
Exceeded
30-Day Break Trend
Jan 1Jan 30
By Type
Lunch35%
Tea25%
Prayer20%
EmployeeTypeDurationStatus
Ahmed Al-RashidLunch55 minDone
Sara KhalidTea/Coffeeβ€” minActive
James OseiPrayer28 minExceeded
Theme Intelligence

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.

Odoo .o_dark class detectionSystem prefers-color-schemeReal-time chart re-render2 full color palettes300ms smooth transitionCustom dark scrollbar
Breaks Dashboard β€” Dark ModeDark
47
Breaks Today
7
Active Now
19m
Avg Duration
Weekly Trend
MonWedFriSun
Top Departments
IT
34
Sales
27
HR
18
Finance
12
Real Screenshots

See It In Action

Real screenshots from a live Odoo instance β€” no mockups, no illustrations. What you see is exactly what you get.

odoo.company.com/web#action=attendance
Attendance record showing full break integration: check-in/out times, total breaks, net worked hours, and embedded breaks table with Tea/Coffee and Lunch entries in dark Odoo theme
β˜…Attendance Integration with Breaks
localhost:8069
Break types configuration list with 5 pre-configured types, duration limits, daily allowances, and active toggles

Break Types Configuration

5 pre-built types with limits & policies

localhost:8069
Break records list view grouped by type showing Lunch, Tea/Coffee, Prayer with employee names, times, and durations

Break Records β€” List View

Grouped by type with full duration tracking

localhost:8069
Break records kanban board organized by break type columns showing Done and Exceeded status badges

Break Records β€” Kanban Board

Visual card layout by break type

localhost:8069
Break detail form showing Prayer Break with prominent EXCEEDED ribbon for policy violation enforcement

Break Detail with Policy Enforcement

Exceeded ribbon flags policy violations

localhost:8069
Tea/Coffee break type form with full configuration: icon, color, sequence, max duration, daily limit, and time window restriction fields

Break Type Form β€” Full Configuration

Full setup: icon, color, limits, time-window restriction

Up and Running in Minutes

How to Get Started

Four simple steps from installation to live analytics across your organization.

1

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.

2

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.

3

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.

4

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.

Mobile-First Integration

RESTful API β€” 13 Endpoints

6 mobile endpoints for break management from any app or device, plus 7 dedicated dashboard endpoints for analytics data.

Mobile API β€” JSON-RPC 2.0
POST/api/attendance/break/typesGet break types
POST/api/attendance/break/startStart a break
POST/api/attendance/break/endEnd a break
POST/api/attendance/break/cancelCancel a break
POST/api/attendance/break/currentCurrent break
POST/api/attendance/break/historyPaginated history
Dashboard Endpoints
POST/hr_attendance_break/statisticsAll stats
POST/hr_attendance_break/daily_trendDaily data
POST/hr_attendance_break/monthly_trendMonthly 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.

Built With

Technology Stack

Standard Odoo stack β€” no external dependencies, no npm packages, no runtime surprises. If Odoo runs, this module runs.

Python 3.10+OWL 2.xChart.js 4.4JSON-RPC 2.0PostgreSQLOdoo 17 / 18 / 19OPL-1
Get Started

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.

OPL-1 License
Odoo 17 / 18 / 19
Community & Enterprise
No Extra Dependencies