OCA modules for Odoo 17
There are 1,994 OCA community modules confirmed in Odoo 17.0: for each one, the branch, the module directory and the installable manifest have been checked on GitHub. Odoo 16 has 3,166. Open any module to see what it does, its availability in the other versions and its sources.
Confirmed modules per version
Repositories with the most modules in Odoo 17
See also
Modules for Odoo 17
- Employee AgeOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_age
Adds a read-only Age field to employee records, calculated automatically from the employee's birthday. It is visible on the employee form for HR users.
- Employee Calendar PlanningOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_calendar_planning
Lets you assign different working time calendars to an employee for specific date ranges, so their schedule can change over time. Odoo automatically builds a single combined working time behind the scenes.
- HR Employee DocumentOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_document
Adds a Documents button on the employee form showing how many files are attached to that employee, and lets HR users and the employee open the list of those files.
- HR Employee Document from ApplicantOdoo 16, 17hr_employee_document_from_applicant
When you hire a candidate from a job application, all files attached to that candidate are automatically copied to the new employee record, so the employee's document list is complete from day one.
- HR Employee First Name, Last NameOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_firstname
Adds separate First Name and Last Name fields to employee records and automatically builds the full name from them, with a configurable order (Lastname Firstname, Lastname, Firstname, or Firstname Lastname).
- Employee IDOdoo 12, 14, 15, 16, 17, 18hr_employee_id
Automatically gives every employee a unique company-wide identification number, either random or from a sequence, and blocks duplicates.
- HR Employee LanguageOdoo 12, 13, 16, 17, 18, 19hr_employee_language
Record the languages each employee speaks and how well they read, write, speak and listen. A new Languages tab appears on the employee form and a Languages menu lists all language records.
- Employee Medical ExaminationOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_medical_examination
Track employee medical examinations in Odoo: record each exam with its date, result and status, and generate exams in bulk for a department or job. Employees see only their own exams; HR managers see and manage all of them.
- Employee external PartnerOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_partner_external
Adds two fields to the employee form: a checkbox marking an employee as external and a link to the partner company that manages them. The partner field only appears and is required when the employee is marked external.
- Personal Protective Equipment (PPE) ManagementOdoo 12, 13, 14, 16, 17, 18hr_employee_ppe
Manage Personal Protective Equipment (PPE) given to employees: mark products as PPE, set expiry rules, print a signed receipt, and let Odoo automatically flag expired equipment.
- HR Employee RelativesOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_employee_relative
Store an employee's family members directly on the employee record, with relation type, contact details, birth date and automatically calculated age.
- HR Employee First Name and Two Last NamesOdoo 17, 18, 19hr_employee_second_lastname
Adds a 'Second last name' field to employee records, so you can store first name, father's last name and mother's last name separately. The full name is built automatically from these three parts.
- HR Employee SINOdoo 12, 13, 14, 15, 16, 17, 18hr_employee_ssn
Adds the employee Social Insurance Number (SIN) field to the employee form, so HR users can view and edit it directly in Odoo.
- Employee Advance and ClearingOdoo 12, 13, 14, 15, 16, 17, 18hr_expense_advance_clearing
Lets companies pay employees an advance before they spend, then clear that advance against real expense reports. Employees can request advances, submit clearing reports, and either receive extra reimbursement or return unused money.
- HR Expense Advance Clearing SequenceOdoo 12, 13, 14, 15, 16, 17, 18hr_expense_advance_clearing_sequence
Automatically gives employee advance expense reports their own reference number, starting with AV, instead of the standard expense report numbering.
- Hr expense cancelOdoo 12, 13, 14, 15, 16, 17, 18hr_expense_cancel
Adds a "Cancel all related operations" button on expense sheets so accountants can undo a posted or paid expense, removing its journal entries, payments and reconciliations and returning the sheet to Submitted.
- Expense Employee Analytic DefaultOdoo 15, 17hr_expense_employee_analytic_default
Lets expense analytic distributions be chosen based on the employee's own contact/address, so employee-specific analytic distribution models apply automatically to their expenses.
- Supplier invoices on HR expensesOdoo 12, 13, 14, 15, 16, 17, 18hr_expense_invoice
Link supplier invoices to employee expense lines so the company can reimburse the employee and settle the vendor debt. Create a vendor bill directly from an expense report or attach an existing posted bill to an expense.
- Select Expense JournalOdoo 12, 14, 15, 16, 17hr_expense_journal
Lets you pick the payment method (credit card or bank journal) used to pay an expense, so the expense report and its accounting entry use the correct journal.
- HR Expense PaymentOdoo 14, 15, 16, 17, 18hr_expense_payment
Links expense sheets to their payments, so you can see which payments paid which expense reports directly in Odoo.
- Remove Odoo mobile app linksOdoo 14, 15, 16, 17hr_expense_remove_mobile_link
This module removes the Odoo Enterprise mobile app download links and images from the Expenses app. It only changes the help text shown on the empty Expenses screen.
- HR expense sequenceOdoo 12, 13, 14, 15, 16, 17, 18hr_expense_sequence
Adds an automatic reference number to expense reports, generated from a configurable sequence (e.g. EX0001), shown on the report form, list, search and printed report.
- Expense Sequence OptionOdoo 14, 15, 16, 17, 18hr_expense_sequence_option
Lets you choose between several numbering sequences for expense reports (hr.expense.sheet), so different expense reports can get different reference numbers based on rules you define.
- Expense Tier ValidationOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_expense_tier_validation
Adds a multi-level approval (tier validation) process to expense reports, so submitted expenses must be reviewed and validated by designated reviewers before they can be approved.
- HR Holidays Overview - Report Calendar Type filterOdoo 17, 18, 19hr_holidays_leave_report_calendar_type
Adds a leave type filter to the Time Off Overview calendar, so users can show only certain types of leave (for example holidays, sick leave) in the calendar and in the search bar.
- Holidays natural periodOdoo 13, 14, 15, 16, 17, 18, 19hr_holidays_natural_period
Adds two new leave request units, Natural day and Natural day (Half Day), to time-off types and allocations, so employees can request leave counted in calendar days instead of working days.
- HR Holidays PublicOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_holidays_public
Manage public holidays inside the Time Off app: public holidays are shown as unusual days in the leave calendar and can be skipped when counting leave days, depending on each leave type.
- HR Holidays Public CityOdoo 14, 15, 16, 17, 18hr_holidays_public_city
Lets you restrict each public holiday to specific cities, so employees only get holidays that apply to their city (or holidays with no city set).
- HR Holidays SettingsOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_holidays_settings
Adds a Settings page for the Leaves (Time Off) app, so HR managers can open a dedicated configuration screen from the Leaves menu. The page is a placeholder that other modules can extend with their own options.
- HR Job Employee CategoriesOdoo 12, 13, 14, 15, 16, 17, 18hr_job_category
Lets HR managers tag job positions with employee categories, and automatically adds or removes those tags on employees when their contract's job changes.
- Custom Hour Interval for HolidaysOdoo 14, 15, 16, 17hr_leave_custom_hour_interval
Lets users enter the start and end time of a time off request as decimal hours (e.g. 8.50) instead of text, and automatically keeps the standard hour fields in sync.
- HR Operating UnitOdoo 12, 14, 15, 16, 17hr_operating_unit
Adds Operating Units to employee records, so each employee can be linked to one or more operating units and have a default one. A security rule limits which employees a user can see based on those operating units.
- HR - Payroll DocumentOdoo 16, 17, 18hr_payroll_document
Upload a batch of payroll PDFs, split them per employee using their identification number, optionally encrypt each PDF with that number, and email each employee their own payslip.
- Hr Personal Equipment RequestOdoo 12, 13, 14, 15, 16, 17, 18hr_personal_equipment_request
Lets HR staff and employees create personal equipment requests, allocate items such as laptops or phones to employees, and track each allocation through draft, accepted, valid and expired states.
- Hr Personal Equipment Request Tier ValidationOdoo 13, 14, 16, 17hr_personal_equipment_request_tier_validation
Adds approval tiers to personal equipment requests, so a request must be reviewed and approved by the configured reviewers before it can be accepted.
- HR Professional CategoryOdoo 16, 17, 18hr_professional_category
Lets you create professional categories and assign one to each employee contract, so you can classify and group contracts by category.
- Employees ShiftsOdoo 14, 15, 17, 18hr_shift
Lets HR plan weekly employee shifts: create a planning for a week, assign shift templates to employees, and see each day's shift, with automatic detection of leaves and holidays.
- Employees Shifts and public holidaysOdoo 14, 15, 17, 18hr_shift_holidays_public
Prevents assigning shifts to employees on public holidays by checking the employee's address when a shift planning line is created.
- Employees study fieldOdoo 13, 15, 17hr_study
Lets you keep a standardised list of studies and pick one on each employee's file instead of typing free text. HR managers maintain the list under Human Resources configuration.
- Hr Timesheet Analytic TagOdoo 16, 17, 18hr_timesheet_analytic_tag
Lets you set analytic tags on a project task so that timesheets recorded on that task automatically inherit those tags on their analytic entries.
- Timesheet - Autofill project offOdoo 17, 18, 19hr_timesheet_autofill_project_off
Stops Odoo from automatically pre-filling the project on a new timesheet line based on previous entries, so users must pick the project themselves.
- Timesheet - Begin/End HoursOdoo 15, 16, 17, 18, 19hr_timesheet_begin_end
Adds Begin Hour and End Hour fields to timesheet lines so employees can record the exact start and end time of their work, with automatic duration calculation and overlap checks.
- HR Timesheet CalendarOdoo 16, 17, 18hr_timesheet_calendar
Adds a calendar view to timesheets so users can see, create, and duplicate time entries by dragging on a calendar. It also adds a start time field and a setting to control how new entries are aligned.
- Timesheets Date Order DescOdoo 16, 17, 18hr_timesheet_date_order_desc
New timesheet lines are added at the top of the list and timesheets are sorted by date, newest first, so recent entries are always visible.
- Timesheets - Day of WeekOdoo 17, 18, 19hr_timesheet_day_week
Adds a "Day of Week" field to timesheets so you can search, group and filter them by weekday, and highlights weekend entries in yellow.
- Timesheets - Edit on topOdoo 16, 17, 18hr_timesheet_editable_top
New timesheet lines are added at the top of the list instead of the bottom, making it faster to enter several entries in a row.
- Hr Timesheet Employee Analytic TagOdoo 14, 16, 17, 18, 19hr_timesheet_employee_analytic_tag
Lets you set default analytic tags on each employee so that timesheet entries created for that employee automatically carry those tags.
- Timesheet portal (editable)Odoo 12, 14, 15, 16, 17, 18, 19hr_timesheet_portal
Lets portal users add, edit and delete their own timesheet lines directly on the customer portal task page, without going into the backend.
- Task Logs Timesheet ReportOdoo 12, 14, 16, 17, 18hr_timesheet_report
Generate a configurable Timesheet Report from task logs, choosing which fields to show, how to group lines, and the time format, then view it in the browser or export it to PDF or XLSX.
- HR Timesheet SheetOdoo 12, 13, 14, 15, 16, 17, 18hr_timesheet_sheet
Employees 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.
- HR Timesheet Sheet Auto-draftOdoo 12, 13, 14, 15, 16, 17, 18hr_timesheet_sheet_autodraft
Automatically creates a draft Timesheet Sheet for any timesheet entry that is not yet covered by an existing sheet, so employees' time entries always fall inside a valid sheet.
- Task Log: limit Task by ProjectOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_timesheet_task_domain
When logging time on a timesheet, the Task field only shows tasks that belong to the selected project and are still open, so users cannot pick tasks from other projects or closed stages.
- Hr Timesheet Task RequiredOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_timesheet_task_required
Lets you make the task field mandatory on timesheets, either by default for the whole company or per project, so users cannot log time without choosing a task.
- Task Log: Open/Close TaskOdoo 12, 13, 14, 15, 16, 17, 18, 19hr_timesheet_task_stage
Open or close the task linked to a timesheet entry directly from the timesheet line, without leaving the timesheet screen. The task is moved to the first stage marked as closed or to the first open stage of its project.
- Time Type in TimesheetOdoo 12, 14, 15, 16, 17, 18hr_timesheet_time_type
Lets you tag each timesheet line with a Time Type (for example development, meeting, support) so you can classify and report on the nature of the work logged.
- HR Timesheet Type Non BillableOdoo 16, 17, 18hr_timesheet_type_non_billable
Lets you mark timesheet types as non-billable, so hours logged with those types are excluded from project remaining hours and task effective hours.
- HR Timesheet Calendar Unusual DaysOdoo 17, 18hr_timesheet_unusual_days
Shows weekends and public holidays with a different background colour in the timesheet calendar, so employees can easily spot unusual working days when filling in their timesheets.
- HR Work Entry ProfileOdoo 17hr_work_entry_profile
Adds a "Work Entries" smart button to the user profile screen, letting employees jump straight from their profile to their own HR work entries.
- Text from HTML fieldOdoo 12, 13, 14, 15, 16, 17, 18html_text
This module adds a helper that turns any HTML content into plain text, so excerpts can be generated without tags or attributes. It can limit the result by words or characters and add an ellipsis when the text is cut.
- IAP Alternative ProviderOdoo 12, 13, 14, 15, 16, 17, 18, 19iap_alternative_provider
Adds a Provider field to IAP accounts so other modules can plug in non-Odoo providers for services like SMS. It is a base/technical module: on its own it only shows the choice "Odoo IAP".