Encash unused leave, accurately every time
A complete leave encashment workflow for Odoo 19 Time Off — eligibility rules, multi-level approval, automatic balance deduction, and optional accounting posting, all in one app.
The problem
When employees resign, retire, or reach year-end, HR must calculate the cash value of unused leave, apply eligibility rules, route approvals, and post the payout — often by hand in spreadsheets. Native Odoo Time Off tracks balances but has no way to convert them into a payout, so calculations drift from actual balances, approvals happen off-system, and audits turn up disputes.
The solution
Leave Encashment adds a complete request-to-payout flow inside Time Off: eligibility and minimum-balance rules per leave type, a two-step Manager → Finance approval chain, automatic balance deduction the moment a payout is approved, and an optional posted journal entry — with year-end batches processing many employees at once.
Everything a payout needs, in one flow
Every capability below is implemented in the module.
Accrued Balance & Eligibility
See each employee's remaining balance, expiring days, and eligibility for every leave type before a request is even submitted.
Payout Calculation
Compute the payout automatically from the contract wage divided into a daily rate, or enter a manual rate per request.
Automatic Balance Deduction
Approving an encashment creates a linked negative allocation immediately, so the balance and the payout can never drift apart.
Multi-Level Approval
Route every request through Officer submission, Manager approval, and Finance approval before it is paid.
Accounting Posting
Optionally post the approved payout as a balanced journal entry to a configurable journal and accounts — no manual re-entry.
Year-End Batch Processing
Generate encashment requests for many employees and leave types in one screen at cycle-end, then approve them together.
Leave-Type Eligibility Rules
Mark which leave types are encashable and set a minimum balance to keep, per type.
Expiry Visibility
Flag balances with a carried-over expiration date approaching within 60 days so HR can act before value is lost.
Full Audit Trail
Every request tracks its submitter, approvers, and timestamps inline, with chatter logging for defensible audits.
How it works
Configure eligibility
Mark leave types as encashable and set minimum balance and service rules in Settings.
Submit a request
HR enters the employee, leave type, and days to encash; balance and eligibility show instantly.
Approve in two steps
The request routes to a Manager, then a Finance approver, before payout.
Pay and record
Approval deducts the balance automatically and, if enabled, posts a journal entry to accounting.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
It posts approved payouts as a balanced journal entry to a configurable accounting journal, since Odoo Payroll is an Enterprise-only module. This closes the loop from approval to a recorded payout without manual re-entry.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
HR Leave Encashment
Convert unused leave into a payout with eligibility rules, calculated amounts, multi-level approval, automatic balance deduction and optional accounting posting.
Buy on Odoo App Store