A company in Kuwait that runs payroll on Odoo has four legal obligations each month: pay every salary into the employee’s account at a local bank under the wage protection system, deduct and pay PIFSS contributions for Kuwaiti employees, keep annual leave balances, and carry the end-of-service indemnity that Law No. 6 of 2010 requires. Odoo Payroll gives you the contracts, salary rules, payslips and accounting entries to do this. The Kuwait rules themselves (PIFSS branches and ceilings, the indemnity, the bank file layout) are set up as salary rules and modules by your implementation partner, and tested against a month you have already paid.
What the Kuwait labor law requires
The private sector is governed by Law No. 6 of 2010 on Labor in the Private Sector. Law No. 85 of 2017 amended two articles that matter for payroll: Article 51 on the indemnity and Article 70 on annual leave. These are the rules a payroll system has to apply:
| Rule | What the law says | Where it sits in Odoo |
|---|---|---|
| End-of-service indemnity (Article 51) | For monthly-paid staff, 15 days’ pay for each of the first five years and one month’s pay for each year after, up to 18 months’ pay. Staff paid by the day or hour have a lower scale. Since 2017 the employer may not deduct its PIFSS contributions from the indemnity. | A monthly provision per employee, and a settlement rule on the final payslip |
| Resignation (Article 53) | An employee on an open-ended contract who resigns receives half the indemnity after three to five years of service, two-thirds after five to ten years, and the full amount after ten. | The settlement rule reads years of service and the reason the contract ended |
| Annual leave (Article 70) | 30 days of paid leave a year. Since 2017, weekends, public holidays and sick leave days inside the leave do not count against it. | Time Off accrual plan, working schedule and public holidays |
| Working hours | No more than 8 hours a day or 48 hours a week, with shorter hours in Ramadan. | Working schedule on the employee |
| Overtime | Paid at the normal wage plus 25%. | Overtime hours from Attendances or entered as an input, priced by a salary rule |
| Payment of wages | Wages are paid into the employee’s account at a local bank. | Payslip batch and the bank salary file |
Two questions cause many of the disputes at settlement: which allowances count as part of the wage for the indemnity and for leave pay, and how service is counted for staff who moved between group companies. Settle both with your lawyer once, then write the answer into the salary rules so every settlement follows it.
PIFSS contributions for Kuwaiti employees
The Public Institution for Social Security (PIFSS) insures Kuwaiti employees; expatriate staff are outside it. The employer registers a new Kuwaiti employee within the first 10 days of appointment, deducts the employee’s share from salary each month, adds its own share, and pays both to PIFSS at the beginning of the following month. Late payment and late registration carry penalties.
Contributions are split into branches, each with its own maximum salary. These are the figures PIFSS lists in its FAQ, checked in October 2026:
| Branch | Maximum salary (KD) | Employee | Employer |
|---|---|---|---|
| Basic insurance | 1,500 | 5% | 10% |
| Supplementary insurance | 1,250 | 5% | 10% |
| Pension increase | 2,750 | 2.5% | 1% |
| Financial remuneration | 1,500 | 2.5% | None |
| Unemployment insurance (private and oil sectors) | 2,750 | 0.5% | 0.5% |
Basic and supplementary together cover salary up to KD 2,750. PIFSS revises ceilings from time to time, so confirm the current figures on its site before you set the rules. In Odoo each branch is a salary rule with its own ceiling and rate. The employee shares appear as deductions on the payslip, the employer shares post to expense and to a PIFSS payable account, and a contribution report gives the monthly total to pay.
Salary files to banks under the wage protection rules
Private sector salaries are paid by bank transfer into each employee’s account. The Public Authority of Manpower (PAM) runs the wage protection system that monitors those transfers, and it has warned that companies which do not pay through the approved channels on time risk having their file with PAM suspended. On 28 September 2026 the Central Bank of Kuwait launched the Kuwait Wage Payment System (KWPS), which the Central Bank operates while PAM monitors employer compliance.
For the payroll team, the salary file has to be right before it reaches the bank:
- One line per employee, with the IBAN, the civil ID number and the net amount from the validated payslip.
- The layout your bank’s corporate portal accepts, which differs from bank to bank.
- A total that equals the net pay of the payslip batch, to the fils.
- New joiners’ bank details checked before their first salary, not after a rejected transfer.
Odoo Payroll produces the payslip batches and the accounting entries. Our ITH payroll modules add the salary file in your bank’s layout, built from the validated batch, so nobody retypes amounts into the bank portal.
How Odoo Payroll and the ITH modules handle the rest
- Contracts and salary structures. Each employee’s contract holds the wage, allowances such as housing and transport, the working schedule and the salary structure. The structure is a list of salary rules computed in order: basic, allowances, overtime, deductions, PIFSS shares and net pay.
- Leave accruals. The Time Off app accrues annual leave on a plan, counts working days against the employee’s schedule and the public holidays you enter, and passes leave taken and unpaid leave to the payslip.
- Indemnity and leave provisions. The ITH modules post a monthly provision for each employee’s indemnity and leave balance, so the liability on the balance sheet matches the employee-level schedule.
- Final settlement. The settlement payslip calculates the Article 51 indemnity, applies the Article 53 reduction when the employee resigns, and pays out unused leave.
- Loans, off-cycle and retroactive runs. Employee loans are deducted on a schedule, bonuses can go in an off-cycle run, and a salary change backdated to an earlier month is recalculated without reversing payslips by hand.
- Accounting. Payslips post salary expense, deductions, the PIFSS payable and net salaries payable, by department or analytic account, in Odoo Accounting.
What to check at month end
- Joiners and leavers: contracts started or ended in the month, and new Kuwaiti employees registered with PIFSS within 10 days.
- Inputs: overtime hours, unpaid leave, sick leave, deductions and loan instalments, entered before the batch is computed.
- The payroll register against last month: every difference in gross and net pay explained by a joiner, a leaver, an increment or a one-off item.
- PIFSS: the contribution report equals the PIFSS payable in the ledger, due at the start of the next month.
- The bank file: its total equals the net pay of the batch, and new IBANs have been checked.
- Provisions: the indemnity and leave provision movement is posted, and the balances match the employee schedule.
- Payslips: published to employees in Arabic or English once the bank has confirmed the transfer.
How IT Horizon sets up payroll in Kuwait
We implement Odoo Payroll for companies in Kuwait with the payroll modules of our ITH Suite. In the workshops we write down your salary structures by grade, your allowances, the indemnity and leave rules your lawyer has confirmed, and the bank your salaries go through. Before go-live we recalculate a month you have already paid, on a copy of your data, and compare it line by line with what you paid. A consultant stays close through the first payroll runs after go-live.
What to do next
- Collect one month’s payroll register, your salary structure by grade and the name of the bank your salaries go through.
- Write down how you calculate the indemnity and leave pay today, including which allowances count.
- Book a consultation. A consultant goes through your payroll with you and replies with how it would run in Odoo and what the setup involves.