Payroll: Payroll Workflows: How to Run Payroll


The purpose of this documentation is to outline the use and processes associated with running payroll and creating Payslips in the Payroll application of Odoo 15.

Getting Started

Good to Know!

The US Payroll module requires Odoo's Payroll application. However, if you do not already have this application installed, Odoo will install it for you during this module's installation. 

The payroll information outlined in this doc uses modules in the  Hibou Odoo Suite. Hibou created and maintains the US Federal and State localizations for USA Payroll.

We also recommend that you install Hibou’s USA - Payroll with Accounting module, which links Rules to Accounts based on the US Accounting Localization.


To get started, navigate to the Payroll application.

Odoo image and text block

How To Run Payroll


Enter the period dates first before selecting the Employee that you are creating the payslip for. 

In order to run payroll, navigate to Payslips > All Payslips. Let's click Create in order to make a new payslip.

This will open up a new employee payslip, fill in the following information:

  • Employee: Select the employee that you are making a payslip for.

  • Period: This is automatically filled in by Odoo, so you may change the pay period if necessary.

    • Note: If the period needs to be changed, do this first before setting the Employee. Changing this afterwards will remove any changes you have made.

  • Batch: This field indicates that this payslip was created or added to a Payslip Batch.

  • Contract: Once the employee has been selected, their most recent contract in the running state will be pulled in. For more information about contracts, please review our Employee Contracts documentation.

  • Structure: This will automatically fill in the structure as the one that is on the employee's contract. For more information about structures, please review our Employee Contracts documentation.

  • Has Been Paid  : This box is only to indicate that the payslip has been paid and cannot be ticked manually.

Under the Worked Days & Inputs tab:

Depending on which Hibou Odoo Suite modules you have installed and configured, information from the Attendance, Timesheet and Leaves will load for the selected employee. Other payments and deductions will load or can be added under the Other Inputs areas.

Now you can click Save, then Compute Sheet.

After you have computed the sheet, the payslip will then move into the Waiting state immediately and a unique sequence number will be generated for the payslip.


This provides a breakdown if the payslip salary rules calculated in sequence order with their associated rates.

Under the Other Info tab you will see the following:

  • Payslip Name: This will be the generated name of the payslip. You may change this is needed.

  • Company: This will be automatically filled in with the company the payslip was created in if your database is multi-company.

  • Made Payment Order? Check this box if this payslip has already been paid.

  • Date Account: This field will still be empty until the draft entry has been created.

  • Salary Journal: This will be the salary journal defined on the salary structure.

  • Accounting EntryThis field will still be empty until the draft entry has been created.

So now let's go ahead and click Create Draft Entry.

A Confirmation modal will popup, click Ok.

Under the Other Info tab you will see the following changes once the draft entry has been created.

  • Date Account: This is the date that the payslip journal entry will be dated. If not manually edited, will default to the last day of the pay period once confirmed. Note that this field is provided by Hibou's Date On Payslip Lines module.

  • Accounting Entry: A link to the draft accounting entry will appear in this field.

Let's go ahead and click on the Accounting Entry link.

This link will take you to the draft accounting entry, click Post in order to finalize the payslip creation

Once the draft has been posted, a Journal Entry name beginning with your payroll journal short code will be posted to the general ledger in the Accounting application.


After confirming, if the payslip is missing hours, the payslip must be deleted and a new payslip must be created with the new hours added.

How To Create Payslip Batches

Let's start by navigating to Payslips > Batches. To make a new payslip batch, click Create.

One the new payslip batch form, fill in the following details:

  • Batch Name: Create a name for this payslip batch.

  • Period: Select or enter the payroll period being paid.

  • Credit Note  : If this is checked, it indicates that all payslips generated are refund payslips. 

  • Payslips Paid  : This indicates if the payslips were paid, this is not a field that can be manually set.

  • Date Account: Keep this field empty in order to use the period of validation date.

  • CompanyThis will be automatically filled in with the company the payslip was created in if your database is multi-company.

Once you have finished, click Generate Payslips.

Odoo CMS - a big picture

This will take you to the Generate Payslips wizard, where you will be able to filter your employees by their Salary Structure or Department.

You may also manually add an employee to this list by clicking Add a Line, or to remove an employee from the list, use the  button.

On the next screen you will see a list of all active employees. Put a check next to each employee that you want to create a payslip for in this batch. After all desired employees are selected, click on SELECT.

Once you have reviewed this list, click Generate to compute payslips for all the selected employees.

This will send you back to the Payslip Batch form, where you will see a new smart button has appeared. You will also notice that the payslip batch has moved to the Confirmed state.

Click on the  # Payslips smart button.

This will take you to a list of generated payslips for the batch in the Waiting status. As you can see, the Generate Payslips wizard only created payslips for eligible employees.

Using the breadcrumbs, go back to the main Payslip Batch.

If we navigate back to Payslips > All Payslips, you will see that recently generated payslips for the batch have been grouped together and are in the Waiting status.

Go ahead and click on a payslip record to open it up.

You will see that the payslips are already calculated under the Salary Computation tab.

Now, let's go back to batch payslip. While you could manually go to each payslip and create the draft entry for each one, the Batch Payslip option gives you the ability to do it all in the click of a button.

So let's go ahead and click Create Draft Entry.

A Confirmation modal will popup, click Ok.