Contracts

A contract records the terms of an employee’s position: when the employment starts and ends, the job position and department, the working schedule, and the gross wage. Every employee who is paid, or whose working time has to be tracked against a schedule, needs a running contract.

Contracts dashboard

To open the list of contracts, go to Employees app ‣ Contracts.

The Contracts page lists all contracts, grouped by Status. The available statuses are New, Running, Expired, and Cancelled. Each group displays the number of contracts it contains.

screenshot: hr-contracts-dashboard
menu
Employees ‣ Contracts
shows
The Contracts list grouped by Status, with the New, Running and Expired groups expanded.
highlight
The Status group headers with their contract counts (red frame).
data
Demo company "YourCompany HU"; at least one contract in each of New, Running and Expired.
module
hr_contract
notes
English UI, light theme, 1440px width.

Note

The Contracts menu and the contract data are only visible to users in the Employee Manager or Administrator access group of the Employees app.

Create a contract

To create a contract, click New on the Contracts dashboard, and fill in the blank contract form.

General information

  • Contract Reference: the name of the contract, such as John Smith Contract. This field is required.

  • Employee: the employee the contract belongs to.

  • Contract Start Date: the date the contract takes effect. Contracts can be created retroactively or with a future start date. Today’s date is filled in by default. This field is required.

  • Contract End Date: the end date of a fixed-term contract. Leave it empty for an open-ended contract.

  • Working Schedule: the working schedule the employee is expected to follow. Leaving the field empty makes the employee fully flexible, with no expected hours. If the selected schedule differs from the one on the employee’s work information, Odoo displays a warning next to the field.

  • Salary Structure Type: the salary structure type the contract belongs to, for example Employee or Worker. Structure types group contracts that share the same pay period and working-time rules.

  • Department: the department the employee works in. It is filled in from the employee record and can be changed.

  • Job Position: the employee’s job position. It is also filled in from the employee record.

  • Contract Type: the type of employment, for example Permanent, Temporary, Seasonal, Full-Time, Part-Time, Intern, Student, Apprenticeship, Thesis, Statutory, and Employee.

  • HR Responsible: the user responsible for validating the contract.

screenshot: hr-contracts-new-contract
menu
Employees ‣ Contracts ‣ New
shows
A filled-in contract form with the status bar on New, and the Contract Reference, Employee, start and end dates, Working Schedule, Salary Structure Type, Department, Job Position and Contract Type fields completed.
highlight
The general information group above the tabs (red frame).
data
Employee "Anita Kovács", contract "Anita Kovács Contract", Working Schedule "Standard 40 hours/week", Contract Type "Permanent".
module
hr_contract
notes
English UI, light theme, 1440px width.

Salary Information tab

Enter the employee’s monthly gross Wage in this tab. The wage is used by reporting and by any salary administration module installed on top of the contract.

Note

With the Salary application installed, this tab also shows the Engagement and the Salary Term that currently apply to the employee, and a Take the wage from the salary term button appears when the contract wage no longer matches the agreed salary term.

Details tab

Enter any free-text Notes about the contract here. This tab is only visible to contract managers.

Contract status

A new contract starts in the New status. Set the status with the status bar at the top of the form:

  • New: the contract is being prepared.

  • Running: the contract is in force. A contract in the New status whose kanban state is set to ready and whose start date has arrived is set to Running automatically.

  • Expired: the end date has passed. Contracts are expired automatically on their end date.

  • Cancelled: the contract never took effect.

Tip

Odoo notifies the HR Responsible before a contract expires and before an employee’s work permit expires. The notice periods are set per company in Settings ‣ Employees.

Trial period and work permit

The End of Trial Period date records when the employee’s trial period ends, and the Work Permit No and Visa No fields carry the corresponding values from the employee’s HR settings; editing them on the contract updates the employee record as well.