OdooWiki OCA HUB

OCA/hr

OCA community repository with 108 Odoo modules confirmed in the OdooWiki catalogue (versions 12.0, 13.0, 14.0, 15.0, 16.0, 17.0, 18.0, 19.0). Reviewed on 2026-11-03.

Open on GitHub

Confirmed modules per version

12.0
70 modules
13.0
37 modules
14.0
40 modules
15.0
32 modules
16.0
40 modules
17.0
24 modules
18.0
31 modules
19.0
11 modules
20.0
0 modules

Modules in the repository

  • 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_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_geolocation

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

  • 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_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.

  • 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_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 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 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.

  • hr_employee_lastnames

    Adds separate First Name, Last Name and Second Last Name fields to employee records, automatically combining them into the full name and keeping contact details in sync.

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

  • Employee Phone ExtensionOdoo 12, 13, 14, 15, 16, 18
    hr_employee_phone_extension

    Adds two extra phone fields to employee records: an internal number and a short number, shown in a new 'Internal Contact' section on the employee form.

  • hr_employee_phone_pin

    Store the PIN and PUK codes of an employee's corporate mobile phone directly on the employee record, with access controlled by two new user groups.

  • hr_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, 19
    hr_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_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 ServiceOdoo 12, 13, 14, 15, 16, 18
    hr_employee_service

    Adds Hire Date, Start Date and Termination Date fields to employee records and automatically calculates how long each employee has been with the company, shown in years, months and days.

  • HR Employee Service from ContractsOdoo 12, 13, 14, 15, 16, 18
    hr_employee_service_contract

    Automatically fills in each employee's first and last contract, plus their service start and termination dates, based on the employee's contracts.

  • hr_employee_social_media

    Lets you record the social media accounts (Skype, Twitter, Whatsapp, etc.) of each employee directly on the employee form, and lets HR managers maintain the list of social media platforms in the configuration settings.

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

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

    Lets accountants merge several open employee advances into one new consolidated advance equal to the sum of their remaining balances, and marks the originals as consolidated.

Data imported from GitHub: every listed version is confirmed (branch, module directory and installable manifest checked on the review date). Active support and OCA certification are not assessed.