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

  • gamification_badge_report

    Adds a Badge Report that shows how many gamification badges each employee has received, displayed as a graph or pivot table.

  • hr_accident

    Register and track employee accidents in Odoo's Employees app, with a reference, employee, date, description and attached documents.

  • AnnouncementOdoo 15, 17
    hr_announcement

    Extends announcements so they can be targeted to specific employees, departments, or job positions, not just users or user groups. The right people automatically see the announcement as unread.

  • Appraisal OcaOdoo 16, 18
    hr_appraisal_oca

    Manage employee performance appraisals in Odoo: create appraisal records, collect employee self-assessments and manager feedback, and control when each side can see the other's comments.

  • HR Attendance Auto CloseOdoo 12, 13, 14, 15, 16, 17
    hr_attendance_autoclose

    Automatically closes attendance records that were left open too long, so forgotten check-outs no longer corrupt the following days' attendance data.

  • hr_attendance_calendar_view

    Adds a calendar view to employee attendances, so you can see check-in and check-out periods on a calendar and switch to it from the Attendances screen.

  • hr_attendance_contract_missing_days

    This hidden module makes the automatic creation of missing attendance records follow the employee's HR contract dates and working calendar, so attendances are only generated for periods covered by a contract.

  • hr_attendance_employee_calendar_planning

    Makes overtime and undertime calculations in Attendance respect each employee's planned working calendar and flexible hours, so extra or missing time is measured against the correct schedule.

  • hr_attendance_full_history

    Employees can see their complete attendance history instead of only the current month, and a new "This month" filter lets them narrow the list back down when needed.

  • Hr Attendance GeolocationOdoo 12, 13, 14, 15, 16
    hr_attendance_geolocation

    Records the GPS coordinates of employees when they check in or check out, and shows them on attendance records for managers.

  • hr_attendance_geolocation_required

    Adds a company setting that forces employees to share their GPS location before they can check in or out, both from the attendance app and the kiosk. If location is missing, Odoo refuses the check-in with an error message.

  • hr_attendance_hour_type_report

    Adds a Payroll Report on attendances that splits each employee's worked hours into day and night hours and labels each day as weekday, Sunday or public holiday, to help prepare external payroll.

  • hr_attendance_missing_days

    Automatically creates zero-length attendance records for working days where an employee has no attendance, using a configurable reason. This helps Odoo correctly reduce overtime for days that would otherwise be ignored.

  • HR Attendance Modification Tracking.Odoo 12, 13, 14, 15, 16, 17, 18
    hr_attendance_modification_tracking

    Marks attendance records whose check-in or check-out time was changed by hand, so you can spot possible cheating. The flag appears in the attendance form, list and search filters.

  • hr_attendance_overtime

    Marks attendance lines as overtime and splits them when employees check in or out outside their planned working hours, so managers can review presence and compensatory hours.

  • hr_attendance_overtime_manual

    Attendance managers can add manual overtime entries for an employee from the employee form, and overtime records now show a note field and are visible even when the total is zero or negative.

  • HR Attendance ReasonOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_attendance_reason

    Lets you define reasons for check-in and check-out, attach them to attendance records, and optionally ask employees to pick a reason when they sign in or out from the attendance screen or kiosk.

  • Theoretical vs Attended Time AnalysisOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_attendance_report_theoretical_time

    Adds a 'Theoretical vs Attended Time Analysis' report that compares hours actually worked (from attendances) with the hours an employee was supposed to work, based on their working calendar, public holidays and leaves.

  • hr_attendance_rest_time_included

    Track employee breaks inside attendance records, with break hours counted separately from worked hours and shown on attendance screens and reports.

  • HR Attendance RFIDOdoo 12, 13, 14, 15, 16, 17, 18
    hr_attendance_rfid

    Lets you store an RFID card code on each employee and record check-in/check-out by scanning that card, without opening the attendance screen.

  • hr_attendance_sheet

    Groups employee check-in/check-out records into attendance sheets that can be submitted, reviewed, approved and locked. Adds automatic lunch deduction and overtime calculation based on company settings.

  • hr_attendance_user_list

    Adds a read-only "My Attendances" menu where each employee can see their own check-in and check-out records, with a list view and a pivot analysis of worked hours.

  • hr_attendance_validation

    Managers can review weekly employee attendance, decide which overtime counts, and validate the week. Validation locks those attendance records and can automatically create compensatory leave allocations or leave requests.

  • hr_birthday_welcome_message

    When an employee checks in on their birthday, the attendance welcome screen shows a birthday greeting instead of the usual random message.

  • HR BranchOdoo 13, 14, 15
    hr_branch

    Lets you tag each HR department with a company branch (a partner record), and filters the department choices on an employee form so only departments of the employee's own branch can be picked.

  • hr_calendar_rest_time

    Adds a Rest Time field to working schedule lines so unpaid breaks are deducted from worked hours. Odoo then reports the real working time in HR reports.

  • hr_collective_agreement

    Create and manage collective wage agreements in Odoo, with codes, scopes, publication dates, official publications and a draft/active/finished/cancelled lifecycle. HR managers can activate, finish, cancel and bulk-update agreement states.

  • hr_collective_agreement_partner

    Link collective agreements to contacts (partners) directly from the contact form, see how many agreements a partner has, and assign or remove agreements through a small pop-up wizard.

  • hr_contract_bonus

    Lets HR users attach fixed or percentage bonuses to employee contracts and see the total annual wage with and without those bonuses directly on the contract form.

  • HR Contract CurrencyOdoo 12, 13, 14
    hr_contract_currency

    Lets you set a specific currency on each employee contract, instead of always using the company currency. The currency field appears next to the wage on the contract form for users allowed to work with multiple currencies.

  • HR Contract DocumentOdoo 12, 13, 14, 16, 18
    hr_contract_document

    Adds a Documents button on the employee contract form showing how many files are attached, and lets you open the list of those attachments directly from the contract.

  • hr_contract_employee_calendar_planning

    Keeps an employee's working schedule consistent between their contract and their employee calendar plan. The contract's working hours field is hidden and automatically follows the employee's calendar.

  • HR Contract Multi JobsOdoo 12, 13, 14, 15, 16
    hr_contract_multi_job

    Lets you list several job positions on a single employee contract and mark exactly one of them as the main job. The contract's Job Title is then filled automatically from that main job.

  • HR Contract RateOdoo 12, 13, 14
    hr_contract_rate

    Lets you enter an employee's contract pay as an amount per hour, day, week, month, quarter or year, and Odoo converts it into the monthly wage used by payroll.

  • HR Contract ReferenceOdoo 12, 13, 14, 15, 16, 18
    hr_contract_reference

    Automatically gives every employee contract a unique reference number, such as EC/2025/00001, when the contract is created.

  • hr_contract_renew

    Adds a 'Renew Contract' button on employee contracts that opens a small wizard to create a new contract copied from the current one, starting the day after the old contract ends.

  • Hr Contract TypeOdoo 13, 14, 15
    hr_contract_type

    This module lets you define contract types and assign one to each employee contract, then filter or group contracts by type. It restores a feature that existed in older Odoo versions.

  • hr_contract_update_overtime

    Adds an "Update Overtime" action on HR contracts that recalculates overtime on the employee's attendance records for the contract period, so overtime stays correct after contract changes.

  • HR CourseOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_course

    Manage employee training courses, their scheduled sessions and attendance results in Odoo. HR managers create courses and sessions, assign attendees, track the session through its states and record who passed, failed or was absent.

  • Hr Course SurveyOdoo 13, 14, 16
    hr_course_survey

    Attach a scored survey to a training course and automatically send it to attendees when the course moves to validation. Results are recorded on each attendee as passed or failed, and managers can resend the survey to those who failed.

  • HR department codeOdoo 14, 15, 16, 17, 18, 19
    hr_department_code

    Adds a short code field to HR departments and shows it in the department name, list, kanban and search, so departments can be identified by a code as well as a name.

  • hr_department_deputy

    Lets you record one or more deputy managers on each department, next to the department manager. The deputy managers appear on the department form and in the department list.

  • hr_emergency_contact

    Adds an Emergency Contacts tab to the employee form so you can list the people to contact in case of an emergency for each employee.

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

  • hr_employee_bank_restrict

    Hides the bank accounts of contacts that are linked to an employee, so only users with full accounting access can see them. Bank accounts of ordinary contacts remain visible to everyone.

  • Employee Birth NameOdoo 12, 14, 15, 16
    hr_employee_birth_name

    Adds a "Birth Name" field to employee records in Odoo, visible to HR users on the employee form next to the marital status field.

  • HR Employee Birthday MailOdoo 14, 15, 16, 18
    hr_employee_birthday_mail

    Automatically sends birthday emails to employees on their birthday and notifies coworkers who opted in, based on a daily scheduled check.

  • Employee Calendar PlanningOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_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_digitized_signature

    Adds a signature field to employee records so you can capture and store an employee's handwritten signature directly in Odoo.

  • hr_employee_display_own_info

    Lets a regular employee open their own employee record and see the Personal Information and HR Settings tabs, which are normally hidden from non-HR users.

  • HR Employee DocumentOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_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_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_emergency_contact

    Adds an Emergency Contacts tab to the employee form so you can list the people to call in case of an emergency. Each contact is a person (not a company) with name, job title, phone, mobile and email.

  • HR Employee First Name, Last NameOdoo 12, 13, 14, 15, 16, 17, 18, 19
    hr_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).

  • hr_employee_firstname_partner_firstname

    This glue module makes the first name and last name fields work consistently between contacts and HR employees. When an employee record is created or updated from a user, the first and last names set on the user are copied onto the employee.

  • hr_employee_group_overview_readonly

    Adds a read-only HR overview access level so selected employees can see employee, contract, leave, attendance, fleet, skills and gamification information without being able to change it.

  • hr_employee_health

    Adds a Health tab to the employee form where HR users can record blood type, free-text health notes and a list of health conditions with type and severity.

  • Employee IDOdoo 12, 14, 15, 16, 17, 18
    hr_employee_id

    Automatically gives every employee a unique company-wide identification number, either random or from a sequence, and blocks duplicates.

  • hr_employee_identification

    Adds an identification type and an expiry date next to the existing ID number on employee records, so HR can track which kind of document each employee holds and when it expires.

  • HR Employee LanguageOdoo 12, 13, 16, 17, 18, 19
    hr_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.

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.