OdooWiki OCA HUB

OCA human resources modules for Odoo

Employees, contracts, attendance, time off, expenses, payroll and shifts. Modules that complete people management in Odoo Community. The catalogue has 167 modules in this area, 20 of them confirmed in Odoo 19.0 (reviewed on 2026-11-03).

Confirmed modules per version

12.0
69 modules
13.0
63 modules
14.0
92 modules
15.0
77 modules
16.0
77 modules
17.0
54 modules
18.0
67 modules
19.0
20 modules
20.0
0 modules

OCA repositories in this area

Other areas

Modules in this area

  • HR Holidays PublicOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_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, 18
    hr_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_public_overtime

    This module makes Odoo's overtime calculation ignore public holidays, so employees are not credited with overtime on days that are public holidays.

  • hr_holidays_security

    Lets Time Off responsibles manage and approve leave requests and allocations for their own team members, and gives them access to the Time Off Reporting menu.

  • HR Holidays SettingsOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_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_holidays_summary_email

    Employees can receive a daily or weekly email listing the approved leaves of colleagues in their company. Each employee chooses whether to get no email, a daily one, or a weekly one.

  • hr_holidays_team_manager

    Adds a Time off/Team manager role that can only see and manage time off and allocation requests for employees in their own department, and blocks them from approving allocations.

  • hr_holidays_validity_date

    Lets you set a validity period on each leave type and either warn or block employees from requesting leave outside that period.

  • HR Job Employee CategoriesOdoo 12, 13, 14, 15, 16, 17, 18
    hr_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.

  • hr_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_leave_hour

    Lets employees enter time off start and end times as decimal hours (for example 8.50) on the time off request form, instead of typing text hours.

  • hr_leave_type_code

    Adds a short code to each leave type and shows it before the leave type name, so leave types are easier to identify and report on.

  • hr_maintenance_workspace

    Create workspaces that group employees and maintenance equipment together, and assign equipment to a workspace instead of an employee or department.

  • HR Org Chart OverviewOdoo 13, 14, 15, 16
    hr_org_chart_overview

    Adds an interactive Organizational Chart overview under the HR Reports menu, showing employees, their managers and photos, with search, zoom, pan and PDF export.

  • hr_payroll_attendance_report

    Adds a worked-hours section to the payslip PDF report, listing each attendance record (date, check-in, check-out, hours) and the total hours for the payslip period.

  • hr_payroll_cancel

    Lets you cancel a payslip from any state without creating a refund, deleting or reversing its accounting entry and setting the payslip to cancelled. It also blocks cancelling a payslip while its refunded payslip is still active.

  • HR - Payroll DocumentOdoo 16, 17, 18
    hr_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_payroll_document_pymupdf

    Adds a PyMuPDF-based fallback so Odoo can still read the text of a PDF payslip when the normal reader fails, improving payslip import in the payroll management wizard.

  • HR Payroll PeriodOdoo 14, 15, 16
    hr_payroll_period

    Adds payroll periods and HR fiscal years to Odoo, so payslips and payslip batches can be linked to a period with an automatic payment date. Periods are generated from a fiscal year and follow a pay schedule.

  • hr_payslip_change_state

    Lets you change the status of several payslips at once from the payslip list, with a check that blocks the whole operation if any selected payslip is not in a state that allows the requested change.

  • hr_period

    This module is a small add-on that depends on the HR Payroll Period module. It does not add any new models, menus or screens of its own.

  • Hr Personal Equipment RequestOdoo 12, 13, 14, 15, 16, 17, 18
    hr_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_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 Personal Equipment StockOdoo 13, 14, 16, 18
    hr_personal_equipment_stock

    Links employee equipment requests to warehouse operations: accepting a request creates a stock transfer, and completing that transfer automatically validates the equipment allocation for the employee.

  • hr_personal_equipment_variant_configurator

    Lets users pick product variants (attributes like size or colour) when creating a personal equipment request, instead of choosing a plain product. The equipment line becomes editable directly in the request form.

  • hr_professional_category

    Lets you create professional categories and assign one to each employee contract, so you can classify and group contracts by category.

  • hr_recruitment_notification

    Adds a new notification option on job positions so users can be automatically notified when a new applicant applies to that specific job position.

  • hr_recruitment_security

    Adds a new Recruitment security group so recruiters only see the job positions and applications they are personally responsible for, while managers keep full visibility.

  • hr_recruitment_torecruit

    Shows how many people still need to be hired for each job position and automatically publishes or unpublishes the job on the website depending on whether the recruitment target is met.

  • Employees ShiftsOdoo 14, 15, 17, 18
    hr_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.

  • hr_shift_holidays_public

    Prevents assigning shifts to employees on public holidays by checking the employee's address when a shift planning line is created.

  • hr_skill

    Record the skills of each employee with a proficiency level (Junior, Intermediate, Senior, Expert), maintain a hierarchical catalogue of skills, and analyse who has which skills in graph and pivot reports.

  • Employees study fieldOdoo 13, 15, 17
    hr_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_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.

  • hr_worked_days_from_timesheet

    Adds an 'Import from Timesheets' button on draft payslips that fills the worked days lines from the employee's approved timesheets for the payslip period.

  • passport_expiration

    Adds a passport expiration date field to the employee form in Odoo, so HR users can record when an employee's passport expires.

  • PayrollOdoo 13, 14, 15, 16, 17, 18, 19
    payroll

    Manage employee payroll in Odoo: define salary structures and rules, generate payslips individually or in batches, compute worked days and leaves, and print payslip and contribution reports.

  • Payroll AccountingOdoo 13, 14, 15, 16, 17, 18
    payroll_account

    Links payroll to accounting: when a payslip is confirmed, Odoo automatically creates and posts the corresponding journal entry, using the salary journal and accounts defined on contracts and salary rules.

  • Payroll Contract AdvantagesOdoo 14, 16, 17, 18
    payroll_contract_advantages

    Lets payroll users define reusable advantage templates (with code, default value and allowed minimum/maximum) and attach a list of advantages with amounts to each employee contract, so salary rules can use them in payslip calculations.

  • payroll_hr_public_holidays

    Adds public holidays as a worked-days line on payslips, so salary rules can use public holiday days and hours in payroll computation.

  • payroll_rule_time_parameter

    Adds a 'Time Parameters' menu under Payroll configuration where payroll managers can define rule parameters for payslips, and lets salary rules read those parameters directly from a payslip.

  • resource_calendar_flexible_exclude_weekend

    Adds an "Exclude Weekends" option to flexible working schedules, so weekends are not counted as working time when Odoo computes attendance and unusual days.

  • Resource HookOdoo 12, 13, 14
    resource_hook

    Adds extension points (hooks) to the standard working-time calculation methods of resource calendars and resources, so other modules can change how worked hours are computed without rewriting Odoo's core code.

  • resource_leaves_geographic

    Lets you tag public holidays and calendar leaves with one or more geographic states, so each employee only sees the local holidays that apply to their address's state.

  • resource_multi_week_calendar

    Lets you set up a working time calendar that rotates between more than two weekly schedules, instead of only alternating between two. You define a main working time with several alternating weeks and Odoo automatically picks the right week for each date.

  • sale_expense_cost_reinvoice

    When an expense product is set to be re-invoiced at cost, this module puts the full expense amount as the cost on the related sales order line, so margin calculations reflect the real expense cost.

  • sale_expense_manual_reinvoice

    Lets you choose, per expense product, whether expenses are re-invoiced automatically or only after a manager reviews them. A new "Expenses to Reinvoice" menu lists pending expenses so a manager can reinvoice or discard them.

Data imported from GitHub: “confirmed” means branch, module directory and installable manifest checked on the review date. A module that is not confirmed in a version may still exist: it may be in another repository or pending the next review. Active support and OCA certification are not assessed.