Odoo can bring leave requests, attendance records and payroll inputs into one flow, where each person sees what concerns them. The employee knows the status of a request. The manager sees where coverage is needed. HR resolves exceptions with a record. Finance reviews approved inputs without chasing four files. This depends on configuring leave types, balances and access rights up front, which is what ToDoOps sets up with each company around its own policies.

What does the month look like when the picture is shared?

A week before close, an employee opens the leave app to check a request and sees whether it is pending or approved. The manager sees who else on the team will be away and arranges cover before tasks stall. HR resolves a missed check-out and keeps the reason for the correction on record. Finance reviews approved inputs from one place.

That picture is achievable, but it comes from deliberate configuration, not from installing the apps alone.

How does Odoo manage leave requests and balances?

According to Odoo 19 documentation, Time Off brings requests, balances, allocations, approvals and reports together. Leave types, public holidays, accrual rules and allocations are configured first, and requests then flow onto that setup.

A pending request is not an approved absence, so the status must be visible to the person deciding and the person waiting. The working calendar also affects the calculation: hours per day, days per week and part-time schedules all change the computed balance.

We work with you on the list of leave types your company actually uses, the rules for each, and who approves them. Opening balances and existing policies are migrated and reviewed with HR; they are not corrected automatically.

How do you review employee attendance in Odoo?

Odoo Attendances works as a timeclock. Check-in and check-out can happen from the backend if enabled, or at a kiosk, and managers review the records. Access rights and assigned approvers are part of the design: not every employee sees everyone else’s data.

Extra hours validation can be automatic or require manager review, depending on configuration. Two points are worth settling at the start:

  • Attendance is not timesheets. Project hours logged in timesheets are separate from attendance records.
  • A log is not a verdict. Attendance records do not prove an employee’s whole productivity, and extra hours in the log do not automatically create a wage entitlement under Saudi rules.

For devices, we identify the exact model and test the connection in your environment. We do not assume every biometric device works with Odoo.

What does the Ministry say about overtime?

We reviewed the Ministry of Human Resources and Social Development page on 27 October 2026. The employer pays the hourly wage plus 50% of the basic hourly wage for overtime (Ministry reference), and compensatory paid leave is possible with the worker’s consent under the regulations.

We mention it because the rules configured in the system should follow the employee’s contract and work pattern, and that is what builds workers’ trust in a payslip. Approved attendance overtime is not by itself a legal qualifying decision; HR and finance review the contract, work pattern and applicable rules before processing.

Saudi payroll in Odoo 19: from input to entry

Odoo 19 includes Saudi-specific modules. The localisation provides Basic, Gross and Net salary structures, with a module linking payslips to accounting entries.

Each step still needs its inputs:

  • Employee and contract data.
  • A source for working time: the working schedule, approved attendance or planning.
  • Trusted bank account data, and bank or wage-protection format preparation where required.

Payroll moves through four separate actions: payroll input, a reviewed payslip, an accounting entry, and bank payment with reconciliation. Creating a payslip does not execute a payment.

We configure the localisation and reconcile results against your cases with HR and finance. If a government or bank connection is required, we define its interface, format and testing within the agreed scope.

An example: what time could be freed?

This is a hypothetical example with assumed inputs. It is not a customer outcome, a cash saving or a price. Suppose a company handles 40 requests a month, and the revised process removes about 10 minutes of chasing from each. That is 400 minutes, or 6 hours 40 minutes a month, if the new design genuinely removes those steps.

The value is that those hours can go to HR exceptions and onboarding instead of repeated replies. We record follow-up time before and after implementation to see what has actually changed. For a general estimate of implementation cost and estimated savings, the ToDoOps calculators are an optional starting point.

How do the processes connect?

Attendance, leave, payroll and accounting pass through different departments, and understanding that chain matters more than memorising screens. You can get a feel for it in Try Odoo interactively, a guided simulation with fictional data for a sales and inventory path. It shows how a document in one department becomes an input in another. It does not simulate HR functions, and it does not replace a demonstration tailored to your case.

You can also browse the Odoo apps to see which ones to start with alongside HR.

How do we start in practice?

A ToDoOps scope agrees on needs analysis, configuration, data preparation and training, with what falls in each stage settled by agreement. You can begin with a complete cycle, such as a leave request moving from employee to manager to balance, then expand attendance and payroll according to your priorities. The user training guide helps you identify what each role needs.

Frequently asked questions

Does Odoo calculate leave balances automatically? It calculates them according to the leave types, accrual rules and allocations configured first. Opening balances and existing policies need migration and review.

Can I connect my fingerprint device? That depends on the device model and the connection method. We identify the model and test it in your environment before agreeing scope.

Are timesheet hours counted as attendance? No. Project hours in timesheets are separate from attendance records.

Does Odoo connect payroll directly to Qiwa, GOSI and Mudad? Saudi localisation modules are available. Any direct government-platform connection needs its own defined requirements and testing, separate from creating a payslip.

References

  • Odoo 19 documentation, Attendances: explains check-in and check-out from the backend or a kiosk, manager review, and the extra hours validation options.
  • Odoo 19 documentation, Time Off: explains requests, balances, allocations, approvals and reports, and the need to configure types, holidays and accruals first.
  • Odoo 19 documentation, Saudi Arabia payroll: explains the salary structures, the two Saudi modules, and the setup needed for employees, contracts and working time.
  • Ministry of Human Resources and Social Development, “Overtime Hours”: an official page on overtime pay and compensatory leave, reviewed on 27 October 2026.

Next step

Start by defining the month you want: who requests, who approves, and what finance needs before close. Then look at the solution ToDoOps offers to see how we connect that to daily operations. You can estimate implementation cost and savings in the calculators, or contact us to discuss your leave policies and attendance method and choose the first cycle to start with.