| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Employees (hr)
• Discuss (mail) |
| Lines of code | 1275 |
| Technical Name |
l10n_au_long_service_leave |
| License | OPL-1 |
| Website | https://gencbaris.com/odoo_plugins/ |
| Versions | 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Employees (hr)
• Discuss (mail) |
| Lines of code | 1275 |
| Technical Name |
l10n_au_long_service_leave |
| License | OPL-1 |
| Website | https://gencbaris.com/odoo_plugins/ |
| Versions | 18.0 19.0 |
Australia Long Service Leave
State-based LSL accrual, entitlement & liability engine for Odoo HR
Compute Australian long service leave for every employee with a single, auditable engine that knows the state and territory thresholds. Built on Odoo Community hr — no Enterprise payroll required.
All eight Australian jurisdictions, out of the box
Long service leave in Australia is governed by a separate Act in each state and territory, each with its own accrual rate, qualifying period and pro-rata-on-termination rule. This module ships the published statutory parameters for every jurisdiction and applies the correct one per employee.
- New South Wales — Long Service Leave Act 1955
- Victoria — Long Service Leave Act 2018
- Queensland — Industrial Relations Act 2016
- Western Australia — Long Service Leave Act 1958
- South Australia — Long Service Leave Act 1987
- Tasmania — Long Service Leave Act 1976
- Australian Capital Territory — Long Service Leave Act 1976
- Northern Territory — Long Service Leave Act 1981
What it computes
Continuous service
Measures completed years of continuous service from the LSL start date to any chosen date, by calendar anniversary, with support for excluded (non-qualifying) unpaid-absence days.
Accrued & available weeks
Linear accrual at the jurisdiction's statutory rate (weeks per year), net of long service leave already taken, giving the available balance for each employee.
Pro-rata & full qualification
Flags whether each employee has crossed the pro-rata threshold and the full qualifying period for their state or territory.
Termination payout
A wizard computes the long service leave payable on termination — the available accrued balance once the pro-rata threshold is met — valued at the employee's ordinary weekly pay (with an override).
Liability register
A point-in-time register snapshots every employee's accrual, available balance, termination payout and dollar liability as at a date, with a CSV export for the accounts and auditors.
Accrual schedule
A month-by-month accrual schedule per employee shows how the balance grows over time, exportable to CSV for provisioning.
Statutory entitlement reference
The default accrual rates below are the published statutory entitlements at the first full qualifying period. Every rate, qualifying period and pro-rata threshold is an editable model, so you adjust it if an Act changes — nothing is hard-coded.
| Jurisdiction | Accrual / year (weeks) | Full qualifying period | Entitlement at full period | Pro-rata threshold |
|---|---|---|---|---|
| NSW | 0.8667 | 10 years | 8.6667 weeks | 5 years |
| VIC | 0.8667 | 7 years | 6.0667 weeks | 7 years |
| QLD | 0.8667 | 10 years | 8.6667 weeks | 7 years |
| WA | 0.8667 | 10 years | 8.6667 weeks | 7 years |
| SA | 1.3000 | 10 years | 13 weeks | 7 years |
| TAS | 0.8667 | 10 years | 8.6667 weeks | 7 years |
| ACT | 0.8667 | 7 years | 6.0667 weeks | 5 years |
| NT | 1.3000 | 10 years | 13 weeks | 7 years |
How it works
- Set the LSL state/territory, service start date and ordinary weekly pay on each employee.
- Open LSL Balances to see live service, accrued weeks, available balance and liability per employee.
- Create an LSL Register for a date and compute the company-wide liability snapshot; export the CSV.
- On a departure, run the Termination Payout wizard to compute the LSL owed at the leaving date.
- Adjust any rate in LSL Rules if an Act changes — the engine recomputes from your values.
Built for Odoo Community
The computation engine is pure Python and fully unit tested, layered cleanly under thin Odoo models. The module depends only on hr — it works on a fresh Community install with no Enterprise payroll dependency. All processing happens inside your Odoo; no employee data leaves the system.
Disclaimer: the bundled rates reflect the published statutory entitlements at time of writing. Long service leave law changes; confirm the figures for your jurisdiction against the current Act and your industrial instrument before paying entitlements.
Screenshots
Lsl Balances
Lsl Registers
Lsl Rules
Termination Payout
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module