Skip to Content

Odoo End-of-Service Gratuity: Payroll Rules, Monthly Provisions & Final Settlements for GCC Companies

Calculate, accrue and pay end-of-service benefits accurately with Odoo 19 Payroll
November 7, 2026 by

End-of-service gratuity is one of the largest liabilities on a GCC company's balance sheet, yet many businesses still calculate it in a spreadsheet on the employee's last day. In Odoo 19 you can keep the inputs on the contract, accrue the provision every month through payroll, and pay the gratuity in a final settlement payslip that posts cleanly to accounting. This guide walks through a practical setup using an example company, Al Noor Trading LLC.

Step 1: Get the Contract Data Right

Gratuity depends on two numbers: the employee's service period and the wage it is based on (usually the basic salary). Both must be reliable before any formula is written.

  • Open Employees › Employees, select the employee and check the contract: start date, contract type (limited or unlimited where relevant), and the wage.
  • Keep allowances (housing, transport) separate from basic salary so the gratuity rule can pick up basic only.
  • Record unpaid leave properly through Time Off, because many labour laws exclude unpaid absence from the service period.
  • For employees migrated from a legacy system, keep the original joining date — not the Odoo go-live date.

Step 2: Activate Payroll and Your Country Localisation

Go to Payroll › Configuration › Settings and make sure accounting integration is enabled so posted payslips create journal entries. Odoo provides payroll localisations for several GCC countries (for example the UAE and Saudi Arabia) that include salary structures and rules relevant to end-of-service. Install the one that matches your company and review what it already covers before you build anything custom.

Odoo 19 payroll settings for end-of-service gratuity

Payroll settings: localisation, provision rule and accounting integration switched on.

Step 3: Define the Gratuity Formula in Salary Rules

Under Payroll › Configuration › Rules, review or create the end-of-service rule and attach it to the right structure in Payroll › Configuration › Structures. Typical inputs are the daily basic wage, years of service and the reason for leaving. The table below shows commonly cited reference formulas — always confirm against current law and your contracts.

Country (example)First 5 yearsAfter 5 yearsNotes
UAE (private sector)21 days' basic wage per year30 days' basic wage per yearMinimum one year of continuous service; total capped at two years' wage
Saudi ArabiaHalf a month's wage per yearOne month's wage per yearReduced entitlement on resignation depending on length of service
Other GCC / free zonesVaries — check local law, free-zone rules or pension schemesSome nationals are covered by social insurance instead
Pro tip: Use one daily-wage formula everywhere (for example basic × 12 ÷ 365) and store it as its own rule. Gratuity, leave encashment and unpaid-leave deductions then all use the same base, and your auditors only have one number to check.

Step 4: Accrue the Provision Every Month

Paying gratuity only on exit hides a growing liability. Instead, add a company-contribution style rule that calculates the monthly provision on each regular payslip and posts it to an expense account and an "End of Service Provision" liability account. Set the accounts on the rule and check them in Accounting › Configuration › Chart of Accounts. Each month-end, compare the liability balance with a full recalculation for all active employees and true it up if salaries changed.

End-of-service gratuity workflow in Odoo 19

The gratuity lifecycle: the provision builds monthly and is released on final settlement.

Step 5: Record the Departure

When an employee leaves, archive them from the employee form and choose a departure reason and date. Configure reasons such as Resigned, Terminated and Retired in Employees › Configuration › Departure Reasons, because the reason often changes the entitlement. Close the contract with the correct end date so the service period is calculated precisely.

Watch out: Labour laws are revised — the UAE, for example, changed its gratuity rules for resignations in recent years. Hard-coding an old formula, or applying a mainland rule to a free-zone employee, can under- or over-pay by thousands. Have HR and your legal advisor sign off the rule logic before go-live, and review it each year.

Step 6: Run the Final Settlement Payslip

Create the last payslip from Payroll › Payslips using a final-settlement structure. A well-designed structure brings everything together on one document: the last month's salary, leave encashment, gratuity, and deductions such as outstanding loan balances or advances.

Final settlement payslip with gratuity lines in Odoo 19

Example final settlement: 7 years 8 months of service, AED 6,000 basic, daily wage AED 197.26.

When the payslip is confirmed and posted, the gratuity line should be charged against the provision liability rather than hitting expenses a second time. Any difference between the accrued balance and the actual payout is posted as an adjustment.

Step 7: Reconcile, Report and Audit

Before closing the month, run through this checklist:

  • ☐ Provision liability balance matches a recalculation for all active employees.
  • ☐ Every leaver has a departure reason, end date and posted final payslip.
  • ☐ Gratuity payments are reconciled with the bank in Accounting.
  • ☐ Payslip analysis in Payroll › Reporting shows gratuity by department or company.
  • ☐ Rule changes are documented with an effective date.

With this in place, Al Noor Trading's finance team sees the true end-of-service liability every month, and HR can produce an accurate settlement within minutes of an exit being approved.


OUR EXPERTISE

How Techdocxies Helps with End-of-Service Gratuity

Techdocxies Info Solutions has delivered 50+ Odoo projects for trading, distribution and service businesses across the GCC and beyond. We don't just switch modules on — we map your real processes first, then configure, customise, migrate, train and back you with 24/7 support.

  • Gratuity salary rules built and tested for UAE, KSA and other GCC labour laws
  • Monthly end-of-service provisioning posted automatically to your chart of accounts
  • Final settlement structures combining salary, leave encashment, gratuity and loan recovery
  • Migration of historical joining dates and opening gratuity balances from legacy payroll
  • Liability reconciliation reports and annual rule reviews for auditors

Book a free Odoo consultation

Odoo Employee Loans & Advances: Salary Attachments, Instalment Deductions & Final Settlement for GCC Companies
Run salary advances and employee loans from approval to the final payslip in Odoo 19 Payroll and Accounting