Hibou Odoo Suite: Human Resources (HR) Modules: HR Holidays Accrual - Payroll

Repository Versions:



The purpose of this documentation is to outline the use cases and processes associated with Hibou's HR Holidays Accrual - Payroll module for Odoo.

This module allows you to set up a Leave Allocation that will be distributed to an employee upon the validation of their payslips.

Getting Started

First thing's first, we want to install the module! Navigate to the Apps application and search for 'HR Holidays Accrual - Payroll'. When ready, click Install .

Odoo CMS - a big picture

  Good to Know!

This module requires the HR Holidays Accrual module. However, if you do not already have this module installed, Odoo will install it for you during this module's installation!


To get started, navigate to the Leaves application.

Odoo - Sample 1 for three columns


Creating a new Leave Allocation

Once there, click My Leaves and then Allocation Request.

This will bring you to a list view of allocation requests. Create a new Allocation by clicking CREATE .

Here you will see the Allocation Request form. This is where we're going to create the Leave Allocation with the amount of time we want employees to accrue each time an employee's payslip is validated. 

Fill in the following information:

  • Description: A description of the leave allocation. This is not a required field.

  • Leave Type: Choose a leave type from the dropdown menu.

  • Duration: This field should be left blank unless employees are to be granted a set amount of time off in addition to the Accrue by Pay Period allocation.

Leave Accrual Using Employee Tags

The first accrual method is through the use of Employee Tags. With this method, you will be able to apply the same leave accrual to several employees.

  • Mode: Select 'By Employee Tag' from the dropdown menu. After making this selection, the 'Employee' dropdown will change to an 'Employee Tag' dropdown. Create a new tag by clicking CREATE AND EDIT from the dropdown menu. Enter the desired name for your new tag and hit SAVE . 

  • Accrue by Pay Period: Select this checkbox.

  • Allocation per Pay Period: Enter the amount to be allocated per pay period.

  • Grant by Tag: Select this checkbox.

When ready, hit Save followed by Approve .

Odoo CMS - a big picture

Now simple apply the Employee Tag to the appropriate employees. When each of their payslips are validated, the Allocation Per Pay Period amount will be added to the Leave Type you selected and will accrue with each subsequent paycheck.

Leave Accrual By Employee

The second accrual method is to grant Leave Accrual per individual employee.

  • Mode: Select 'By Employee' from the dropdown menu.

  • Employee: Select the employee that is to receive the accrual.

  • Accrue by Pay Period: Select this checkbox.

  • Allocation per Pay Period: Enter the amount to be allocated per pay period.

  • Grant by Tag: Select this checkbox.

When ready, hit SAVE followed by APPROVE .

Odoo CMS - a big picture

That's all there is to it! Now, every time this employee's payslip is validated, the Allocation per Pay Period amount will be added to their Accrued leave!

Calculating the Allocation Per Pay Period

First, the amount of hours you want the employee to accrue per year must be decided upon. This should be based on a full time schedule (usually 40 hours per week). Then divide the number of hours to be accrued per year by the number of working days in the year. This will be the leave allocation amount for a single day. Then, simply multiply this result by the number of days in your pay period. This will be the amount to enter in the Allocation Per Pay Period field.

Example: A normal employee works 40 hours a week and receives 40 hours of paid time off per year. We will say that the number of working days in a year is 260 (5 days a week multipled by the 52 weeks that make a year). To get the amount per day, we divide 40 by 260. 40 / 260 is 0.1538, the amount of hours accrued in a day. Let's say our pay period is every to weeks, which is 10 working days. 0.1538 multiplied by 10 is 1.538, the Allocation Per Pay Period.


 This module adds three new fields to the `hr.holidays` model for Allocation Requests which are used to accrue employee Leave time during pay slip validation:

  • `accrue_by_pay_period` Boolean field to indicate this allocation should be accrued by pay period

  • `allocation_per_pay_period` Float field for the Allocation to be granted per pay period

  • `accrue_max` Float field to set up a maximum amount that can be accrued by the employee.

The Grant by Tag and Accrue by Pay Period are flags that are checked when confirming payslips. If needed, an employees leave allocation may be edited as needed. Additionally, the box can be unchecked to stop any future allocations.