Timesheets for Holidays Time Off Odoo 18
By Braincuber Team
Published on December 29, 2025
HR manager preparing monthly payroll reports discovers timesheet gaps: employees took Christmas holiday December 25 approved sick leave December 28-29 but timesheet records showing zero hours those dates, manual entry requiring 40 hours administrative work entering holiday timesheets copying approved leave requests calculating work hours across 150 employees each month wasting valuable time introducing data entry errors, project managers seeing inaccurate project costs because team member vacation hours not logged against projects causing budget variance reports showing negative variances misleading stakeholders, payroll processing delayed 3 days every month because finance team manually reconciling timesheet hours versus approved time-off records cross-checking leave balances validating holiday pay calculations, and compliance auditors requiring complete time tracking documentation including paid holidays approved leave but existing system lacking automated integration between Time Off module Timesheet module—creating administrative burden data inconsistencies payroll delays project cost inaccuracies compliance risks and inability generating accurate reports requiring manual timesheet generation automated time-off integration seamless holiday tracking and complete audit trail.
Odoo 18 automated timesheet generation for holidays and time-off enables seamless HR integration through public holiday timesheet creation automatically logging paid holidays employee working schedule, validated time-off integration generating timesheet entries approved leave requests, project task allocation assigning time-off hours specific projects tasks, mandatory day restrictions preventing leave requests critical business days, approval workflow configuration defining validation rules time-off types, public holiday inclusion options counting excluding holidays leave duration, calendar view visualization displaying color-coded leave schedules team coverage, automatic timesheet allocation creating entries immediately upon approval no validation, time-off type customization creating categories sick leave vacation personal leave, and integration with payroll connecting timesheets payroll processing invoicing—reducing administrative time 85 percent through automation eliminating manual timesheet entry via integrated workflows ensuring accurate project costing through complete time tracking improving payroll accuracy through validated time-off records and achieving compliance documentation through automated audit trails systematic record-keeping complete visibility employee time allocation.
Timesheet Automation Features: Public holiday integration, Validated time-off entries, Project task allocation, Mandatory day restrictions, Approval workflows, Holiday inclusion options, Calendar visualization, Automatic allocation, Custom time-off types, Payroll integration
Understanding Timesheet Automation
Core concepts and benefits:
Why Automate Timesheets:
Organizations require employees logging work hours via timesheets. Managing approved leave public holidays manually creates administrative burden. Odoo 18 automates process: validated time-off requests generate timesheet entries automatically ensuring complete accurate records.
Key Benefits:
- Accurate project cost tracking including leave hours
- Complete timesheet records no manual gaps
- Streamlined payroll processing automated reconciliation
- Improved compliance documentation audit trails
- Reduced administrative workload 85 percent time savings
Prerequisites:
Required Modules:
- Timesheets (hr_timesheet): Core timesheet functionality
- Time Off (hr_holidays): Leave management system
- Install both modules: Apps → Search → Install
Public Holiday Timesheets
Automatic timesheet generation for company holidays:
How It Works:
When public holiday part employee working schedule marked paid, Odoo automatically creates timesheet entry. Ensures accurate project accounting payroll reflection without manual entries.
Automatic Process:
- Public holiday configured company work schedule
- Holiday marked as "Paid"
- Employee working schedule includes holiday date
- System auto-generates timesheet entry holiday duration
- Entry appears: Timesheet → My Timesheet
Configuring Public Holidays:
- Navigate to Public Holidays:
- Go to: Time Off → Configuration → Public Holidays
- Create New Holiday:
- Click New button
- Holiday creation form opens
- Configure Holiday Details:
- Name: Holiday name (e.g., "Christmas Day")
- Date: Select holiday date (e.g., December 25, 2025)
- Company: Select company this holiday applies to
- Work Schedule: Associate with employee work schedules
- Paid: Check if paid holiday (enables timesheet generation)
- Save Configuration:
- Click Save
- Holiday now available for timesheet automation
Example Configuration:
Scenario: New Year's Day 2026
| Field | Value |
|---|---|
| Name | New Year's Day 2026 |
| Date | January 1, 2026 |
| Company | Main Company |
| Work Schedule | Standard 40 Hours/Week |
| Paid | ✓ Checked |
Result: All employees with "Standard 40 Hours/Week" schedule automatically receive 8-hour timesheet entry January 1, 2026.
Mandatory Days Configuration
Preventing leave requests on critical business days:
Purpose:
Odoo 18 allows preventing employees requesting time-off mandatory working days: end-of-month closings, inventory count days, critical audit compliance periods, annual physical inventory, fiscal year-end processing.
Configuration Steps:
- Navigate to Mandatory Days:
- Go to: Time Off → Configuration → Mandatory Days
- Create Mandatory Day:
- Click Create button
- Mandatory day form opens
- Specify Details:
- Date: Select mandatory work date
- Reason: Enter business justification (e.g., "Month-End Financial Close")
- Company: Select applicable company
- Save Configuration:
- Click Save
- Employees cannot request leave this date
Example Mandatory Days:
| Date | Reason | Impact |
|---|---|---|
| Jan 31, 2026 | Month-End Close | Finance team required |
| Mar 15, 2026 | Annual Inventory | All warehouse staff required |
| Jun 30, 2026 | Fiscal Year-End | Accounting department required |
| Dec 15, 2026 | Compliance Audit | All managers required |
Time-Off Timesheet Integration
Connecting leave requests with timesheet entries:
Step 1: Enable Time-Off in Timesheet Settings
- Navigate to: Timesheets → Configuration → Settings
- Locate section: Project Time Tracking
- Enable checkbox: Time Off
- Configure fields:
- Project: Select default project for time-off entries (e.g., "Internal Time")
- Task: Select default task (e.g., "Paid Leave")
- Click Save
Important: Project and task must exist before enabling. Create project "Internal Time" with tasks: "Paid Leave", "Sick Leave", "Vacation", "Public Holiday".
Step 2: Configure Time-Off Types
Navigate to: Time Off → Configuration → Time Off Types
Creating New Time-Off Type:
- Click New button
- Fill form fields:
- Display Name: Type name (e.g., "Annual Vacation")
- Approval: Select validation process
- Public Holiday Included: Check if holidays counted in leave duration
- Color: Select calendar color for visual identification
- Click Save
Approval Options:
| Approval Type | Description |
|---|---|
| No Validation | Auto-approved, timesheet created immediately |
| By Employee's Approver | Requires manager approval |
| By Time Off Officer | Requires HR officer approval |
| Both Approvers | Requires manager AND HR officer approval |
Step 3: Employee Submits Time-Off Request
- Navigate to Time Off:
- Go to: Time Off → My Time Off
- Click New button
- Fill Request Form:
- Time Off Type: Select type (e.g., "Annual Vacation")
- From: Select start date
- To: Select end date
- Duration: Auto-calculated based on dates work schedule
- Description: Enter reason notes (optional)
- Submit Request:
- Click Save
- Request sent for approval (if validation enabled)
Step 4: Automatic Timesheet Generation
Scenario 1: No Validation
Time-off type configured "No Validation": Timesheet entries created immediately upon saving request.
Scenario 2: Approval Required
Time-off type requires approval: Timesheet entries created only after manager/officer validates request.
Resulting Timesheet Entry:
- Date: Each day of approved leave
- Project: Configured project (e.g., "Internal Time")
- Task: Configured task (e.g., "Paid Leave")
- Hours: Work hours per day per employee schedule
- Description: Time-off type + dates
Public Holiday Inclusion Feature
Managing holidays within leave duration:
Understanding the Feature:
Odoo 18 introduces "Public Holiday Included" checkbox in Time-Off Type configuration controlling whether public holidays counted within leave duration.
When Enabled (Checked):
- Public holidays falling within leave period counted as leave days
- Example: 5-day vacation Dec 24-30 (includes Dec 25 Christmas) = 5 leave days consumed
- Use for: Paid vacation, sick leave, personal leave
When Disabled (Unchecked):
- Public holidays excluded from leave count
- Example: 5-day request Dec 24-30 (includes Dec 25 Christmas) = 4 leave days consumed
- Use for: Unpaid leave, leave-without-pay
Configuration Example:
Paid Vacation Leave Type:
- Display Name: Annual Paid Vacation
- Approval: By Employee's Approver
- Public Holiday Included: ✓ Checked
- Rationale: Employee entitled paid holiday, should count toward annual leave balance
Unpaid Leave Type:
- Display Name: Leave Without Pay
- Approval: By Time Off Officer
- Public Holiday Included: ☐ Unchecked
- Rationale: Company already providing paid holiday, shouldn't double-count unpaid leave
Calendar View Visualization
Enhanced leave planning interface:
Accessing Calendar View:
- Navigate to: Time Off → Time Off
- Click Calendar view button (top-right)
- Calendar displays all team time-off requests
Calendar Features:
View Options:
- Daily View: Detailed hour-by-hour breakdown
- Weekly View: 7-day overview team availability
- Monthly View: 30-day planning horizon
Color Coding:
- Each time-off type displays different color
- Example: Sick Leave (red), Vacation (blue), Personal Leave (green)
- Enables quick visual identification leave types
Interactive Features:
- Clickable Entries: Click time-off entry view/edit details
- Filters: Filter by department, employee, time-off type
- Group By: Group entries department, employee, type
- Overlap Detection: Identify multiple team members off same dates
HR Manager Benefits:
- Visualize leave schedules across team department
- Identify overlaps ensure sufficient coverage
- Plan project resources based team availability
- Approve/reject requests considering team capacity
- Communicate coverage plans stakeholders
Practical Workflow Example
Complete end-to-end scenario:
Scenario: Employee Annual Vacation
Step-by-Step Process:
1. Configuration (HR Manager):
- Timesheet settings enabled: Time Off integration
- Project created: "Internal Time"
- Task created: "Paid Vacation"
- Time-off type: "Annual Vacation" (Approval: Manager, Public Holiday: Included)
- Public holiday: Christmas Day Dec 25, 2025 (Paid)
- Mandatory day: Dec 31, 2025 (Year-End Close)
2. Employee Submits Request:
- Employee: John Smith
- Time Off Type: Annual Vacation
- From: December 22, 2025
- To: December 30, 2025 (Dec 31 blocked - mandatory day)
- Duration: 7 working days (includes Christmas Dec 25)
- Description: "Family holiday trip"
- Clicks Save → Request sent manager
3. Manager Reviews Calendar:
- Opens Calendar view
- Checks team coverage Dec 22-30
- Sees 2 other team members available
- Approves request
4. Automatic Timesheet Generation:
- System creates timesheet entries:
- Dec 22 (Mon): 8 hours - Internal Time / Paid Vacation
- Dec 23 (Tue): 8 hours - Internal Time / Paid Vacation
- Dec 24 (Wed): 8 hours - Internal Time / Paid Vacation
- Dec 25 (Thu): 8 hours - Internal Time / Public Holiday (auto-generated separately)
- Dec 26 (Fri): 8 hours - Internal Time / Paid Vacation
- Dec 29 (Mon): 8 hours - Internal Time / Paid Vacation
- Dec 30 (Tue): 8 hours - Internal Time / Paid Vacation
- Total: 56 hours logged automatically
5. Results:
- Complete timesheet record: No manual entry required
- Project costs accurate: Leave hours allocated "Internal Time"
- Payroll processing seamless: All hours documented
- Leave balance updated: 7 days deducted (including Dec 25 holiday)
- Compliance achieved: Complete audit trail
Best Practices
Create Dedicated Internal Project for Time-Off Allocation: Mixing time-off entries with client project timesheets equals cost confusion budget inaccuracies. Create separate project "Internal Time" "Non-Billable Time" containing tasks Paid Leave Sick Leave Public Holiday. Ensures clean separation billable non-billable hours enabling accurate project profitability analysis maintaining clear cost allocation reducing reporting complexity improving financial transparency.
Configure Appropriate Approval Workflows Preventing Abuse: No validation time-off types equals employees self-approving extended leave insufficient coverage. Implement approval requirements: annual vacation requires manager approval, sick leave beyond 3 days requires HR officer validation, extended leave both approvals. Approval workflows maintain staffing levels prevent leave abuse ensure business continuity enabling proper resource planning building accountability culture.
Use Public Holiday Inclusion Setting Strategically per Leave Type: Inconsistent holiday counting equals employee confusion leave balance errors. Enable "Public Holiday Included" paid vacation leave types (employee consuming leave entitlement), disable unpaid leave comp-time (avoiding double-counting holidays). Clear policies consistent application prevents disputes maintains accurate leave balances ensures fair treatment enabling transparent leave management reducing administrative questions.
Leverage Calendar View for Team Coverage Planning: Approving leave requests without checking team availability equals understaffing project delays. Before approving requests open calendar view check overlapping absences verify minimum staffing levels maintained critical project phases covered. Visual planning prevents coverage gaps maintains service levels enables proactive resource allocation improving project delivery supporting business continuity.
Conclusion
Odoo 18 automated timesheet generation for holidays and time-off enables seamless HR integration through public holiday timesheet creation validated time-off integration project task allocation mandatory day restrictions approval workflow configuration public holiday inclusion options calendar view visualization automatic timesheet allocation time-off type customization and payroll integration. Reduce administrative time through automation eliminating manual timesheet entry via integrated workflows ensuring accurate project costing through complete time tracking improving payroll accuracy through validated time-off records achieving compliance documentation through automated audit trails supporting strategic planning through calendar visualization enhancing employee satisfaction through streamlined leave process and improving business continuity through coverage planning achieving operational efficiency employee satisfaction and organizational effectiveness.
