Skip to content
TAQNIX
Odoo ModulesWordPress PluginsWordPress ThemesShopify ThemesApp TemplatesScripts & UtilitiesBlogSell on TAQNIX

End of Service Benefits (Gratuity) for Odoo 19 Community documentation

A guide to the gratuity: the policy, the settlement and its calculation, the reasons and the shares, the additions and deductions, the statement and the limits.

Documents version 1.0.0Updated Oct 23, 2026

Start here

In plain words: When an employee leaves, someone opens a spreadsheet, remembers the tiers, subtracts the unpaid leave, applies the share for a resignation, and hopes the figure is right. End of Service Benefits does it in Odoo Community with a policy you configure: days of wage per year of service by tier, an optional cap, the share payable for each reason of leaving and each length of service, the unpaid leave taken off the service, the leave pay, additions and deductions, and a step by step breakdown to print and sign.
The calculation, the statement to sign, and a resignation with a reduced share.
The calculation, the statement to sign, and a resignation with a reduced share.
Tip: The three policies delivered with the module are examples to adapt: they do not replace your labour law. Check the rules that apply to your country and your contracts, and configure the policy accordingly.

What you get

FeatureWhat it does
Policies you configureTiers (from, to, days of wage per year), a cap in months of wage, and the days in a month and in a year.
Share by reasonThe percentage payable for each reason of leaving and each length of service, for example a resignation under two years.
Three examplesA flat month per year, a 21/30 days tiered policy with a cap, and a tiered one with reduced shares on resignation.
SettlementThe employee, hire date, last day, unpaid leave days, monthly wage, reason and unused leave days.
BreakdownYears of service per tier, the cap, the share, the leave pay, the additions and deductions, and the net.
StatementA PDF statement with the breakdown and the signature boxes (employee, HR, finance).
Approval and paymentDraft, approved, paid; an employee cannot have two open settlements.
On the employeeAn End of service smart button on the employee form.
ArabicEverything is translated and works right to left.

Requirements

ItemDetails
Odoo19.0 (Community or Enterprise)
Apps neededEmployees (hr)
LicenseOPL-1 (Odoo Proprietary License v1.0)

Install

  1. Unzip the package. Inside is taqnix_end_of_service.zip; unzip it to get the folder taqnix_end_of_service.
  2. Copy the folder into one of the addons_path folders of your Odoo server and restart Odoo.
  3. Log in as an administrator, activate Developer mode, open Apps and press Update Apps List.
  4. Remove the “Apps” filter, search End of Service Benefits (Gratuity) and press Install.
# or from the command line
./odoo-bin -c odoo.conf -d YOUR_DATABASE -i taqnix_end_of_service --stop-after-init

Set up the policy

In plain words: Open Employees → End of service → Policies. Adapt one of the examples or create your own.
A policy: the tiers, the cap and the days in a month and a year.
A policy: the tiers, the cap and the days in a month and a year.
SettingMeaning
Days per year of serviceEach tier pays a number of days of wage for each year of service that falls inside it (From 0 To 5: 21 days; From 5 To empty: 30 days).
Cap (months of wage)The gratuity cannot exceed this many months of wage. 0 means no cap.
Days in a monthThe daily wage is the monthly wage divided by this number (30 by default).
Days in a yearThe years of service are the days of service divided by this number (365 by default).
Share payableThe percentage paid for a reason of leaving and a length of service. A line for Any reason applies to the reasons without a line of their own; when no line applies, the full amount is paid.
Tip: The three policies delivered with the module are examples to adapt: they do not replace your labour law. Check the rules that apply to your country and your contracts, and configure the policy accordingly.

Calculate a settlement

In plain words: Employees → End of service → Settlements → New, or the End of service button on the employee. Choose the employee (the hire date, the last day and the wage are proposed), the policy and the reason of leaving. Enter the unpaid leave days that do not count as service, and the unused leave days to pay.
A settlement with its calculation.
A settlement with its calculation.
StepHow it is calculated
ServiceLast day minus hire date plus one, minus the unpaid days, divided by the days in a year.
Daily wageMonthly wage divided by the days in a month.
Gratuity before the capFor each tier: the years inside it times its days per year times the daily wage.
CapThe gratuity cannot exceed the cap in months of wage.
ShareThe result is multiplied by the percentage for the reason and the length of service.
Leave payUnused leave days times the daily wage.
Net to payGratuity plus leave pay plus additions minus deductions.

Reasons and shares

In plain words: The same service gives a different gratuity depending on why the employee leaves: with the reduced policy, a resignation after four and a half years pays a third of the gratuity, while a termination pays all of it.
A resignation under the reduced policy.
A resignation under the reduced policy.

Additions and deductions

In plain words: On the Additions and deductions tab add what is paid on top (notice pay, a bonus) and what is taken off (a staff loan, an advance). Amounts are positive: the type tells which way they go.

Approve, pay and print

In plain words: Approve locks the figures (it needs a wage), Mark as paid records the payment date and your reference, and Print the statement gives the PDF with the breakdown and the signature boxes. A settlement that is approved or paid cannot be deleted: cancel it, which lets you calculate it again.
The statement.
The statement.
The settlements.
The settlements.

Who can do what

WhoCan
HR officersCalculate, approve and pay settlements; read the policies.
HR administratorsAlso configure the policies and delete drafts.
Other usersNo access.

Arabic and right to left

A settlement in an Arabic interface, with the calculation in Arabic.
A settlement in an Arabic interface, with the calculation in Arabic.

Limits

LimitDetail
No legal adviceThe three policies delivered with the module are examples to adapt: they do not replace your labour law. Check the rules that apply to your country and your contracts, and configure the policy accordingly.
No accounting entryThe settlement is a statement and a status: the payment is booked as you do for your payroll.
One wageThe gratuity is calculated on the monthly wage you enter, not on a history of wages.
Leave balanceThe unused leave days are entered by hand.

For developers

In plain words: Skip this chapter if you only use the module.
eos = env['taqnix.eos'].create({'employee_id': employee.id, 'policy_id': policy.id, 'reason': 'resignation',
    'date_start': '2018-03-01', 'date_end': '2026-10-31', 'wage': 6500.0, 'leave_days': 12})
eos.service_years, eos.gratuity, eos.net
eos.action_approve()
eos.action_pay()

Troubleshooting

ProblemWhat to do
The gratuity is zeroCheck the share lines: a line for the reason and the length of service may give 0%.
The wage is emptyEnter the monthly wage: it is proposed from the employee only if it is set there.
The employee already has a settlementOpen it, or cancel it to calculate another.
The unpaid days are more than the serviceEnter fewer unpaid days.

Updating and removing

Replace the folder with the new version, restart Odoo and run -u taqnix_end_of_service. Your policies and settlements are kept.

Support

Installation help and bug fixes are included for 6 months, with lifetime updates. Contact us through the marketplace page where you bought the module or write to support@taqnix.com with your Odoo version and a screenshot.