This module supplies a new screen enabling you to manage your work encoding (timesheet) by period. Timesheet entries are made by employees each day. At the end of the defined period, employees submit their validated sheet and the reviewer must then approve submitted entries. Periods are defined in the company forms and you can set them to run monthly, weekly or daily. By default, policy is configured to have HR Officers as reviewers.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Employees can record their time on a weekly, monthly or daily timesheet sheet, submit it for review, and reviewers can approve or reject it. Sheets are created automatically with the right period, employee and reviewer policy.
This module adds a Timesheet Sheet screen where employees enter their time day by day for a defined period (week, month or day, set per company). Each sheet shows a grid of dates against projects and tasks, and the total time is calculated automatically.
- Employees open their sheet from the My Timesheets menu, fill in the grid, then submit it. Once submitted, the sheet moves to Waiting Review and the entries can no longer be changed.
- Reviewers see submitted sheets under the To Review menu and can approve or reject them. Approval records who reviewed it; rejection sends it back to Open.
- The company settings let you choose the period range, the week start day and who reviews sheets (HR Officers, HR Managers or Timesheet Managers).
- Sheets are linked to employees, departments and companies; overlapping sheets for the same employee are blocked, and start date cannot be after end date.
- Timesheet entries are automatically attached to the sheet covering their date, and entries in a confirmed or approved sheet cannot be modified or deleted.
- Employees and departments show counts of sheets and sheets waiting for approval, and the timesheet analysis report can be filtered by sheet.
Depends on
Required by other modules
Menus it adds
Models and fields (11)
- hr.employee · extends an existing modeltimesheet_sheet_ids (Timesheet Sheets), timesheet_sheet_count (Timesheet Sheets Count)
- res.company · extends an existing modelsheet_range (Timesheet Sheet Range), timesheet_week_start (Week start day), timesheet_sheet_review_policy
- hr.department · extends an existing modeltimesheet_sheet_to_approve_count (Timesheet Sheets to Approve)
- hr_timesheet.sheet · new modelname, state (Status), user_id (User), date_end (Date To), line_ids (Timesheet Sheet Lines), can_review, company_id (Company), date_start (Date From), total_time, employee_id (Employee), reviewer_id (Reviewer), new_line_ids (Temporary Timesheets), complete_name, department_id (Department), review_policy, timesheet_ids (Timesheets), add_line_task_id (Select Task), available_task_ids (Available Tasks), add_line_project_id (Select Project)
- res.config.settings · extends an existing modelsheet_range (Timesheet Sheet Range), timesheet_week_start (Week Start Day), timesheet_sheet_review_policy
- account.analytic.line · extends an existing modelsheet_id (Sheet), sheet_state (Sheet State)
- hr_timesheet.sheet.line · new modelvalue_x (Date Name), value_y (Project Name), new_line_id
- account.analytic.account · extends an existing model
- timesheets.analysis.report · extends an existing modelsheet_id (Sheet)
- hr_timesheet.sheet.line.abstract · new modeldate, task_id (Task), sheet_id, company_id (Company), project_id (Project), employee_id (Employee), unit_amount (Quantity)
- hr_timesheet.sheet.new.analytic.line · new model
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 7 confirmed, 2 with no information of 9 versions.
Sources · Odoo 15.0
Confirmed on 2026-11-03 in branch 15.0 of OCA/timesheet.
terminal Installation and usage
OCA documentation · Odoo 18.0Installation
Source · Odoo 18.0This module relies on:
- The OCA module '2D matrix for x2many fields', and can be downloaded from Github:
Configuration
Source · Odoo 18.0If you want other default ranges different from weekly, you need to go:
- In the menu Configuration -\> Settings -\> Timesheet Options, and select in Timesheet Sheet Range the default range you want.
- When you have a weekly range you can also specify the Week Start Day.
To change who reviews submitted sheets, go to Configuration \> Settings \> Timesheet Options and configure Timesheet Sheet Review Policy accordingly.
For adding more review policies, look at the hr_timesheet_sheet_policy_xxx extra modules.
Usage
Source · Odoo 18.0If you modify the Details tab, automatically the Summary tab is updated. But if you modify the Summary tab, you need to save in order to have the Details tab updated.
In case you modify the unit amount of both tabs, the Details tab will prevail. If you modify the Summary tab, and you need to do a change in the Details tab, please save before.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.