📘 What this page is
This page is a worked-examples companion to Leaves Settings. The parent screen explains which fields you fill in; this page shows you what those fields actually do to a real employee’s leave ledger over weeks, months, and years — so you can pick policy values with confidence before you generate your first salary.
📍 Where the rules are set: Settings → Leaves → the Leave Details aside (Edit mode). Every example below assumes the policy is configured there and the monthly Salary has been generated — that is the moment the system actually credits accrual to each employee’s ledger.
💡 How to read the timelines:
- “Credited” means the row was added at Salary Generation for that month — not on the 1st of the month and not at midnight.
- “Balance” means what the employee can apply for on that date.
- Daai standardises the daily rate at Basic ÷ 30 for both encashment and Loss-of-Pay, so the same per-day value is used wherever leave converts to money.
📅 Example 1 — Monthly Accrual on a Full Year
This is the simplest case — an employee joins on day one of the financial year and never takes leave.
| Setting | Value |
|---|---|
| Employee | Priya Sharma — joined 1 Jan 2025 |
| Leave Type | Casual Leave |
| Yearly Quota | 12 days |
| Accrual Method | Monthly (12 ÷ 12 = 1 day per month) |
Ledger Timeline
| Month | Credit at Salary Gen | Leaves Taken | Closing Balance |
|---|---|---|---|
| January 2025 | +1 | 0 | 1 |
| February 2025 | +1 | 0 | 2 |
| March 2025 | +1 | 0 | 3 |
| April 2025 | +1 | 0 | 4 |
| May 2025 | +1 | 2 | 3 |
| June 2025 | +1 | 0 | 4 |
📌 Read-out: Without any leave, Priya would have 6 Casual leaves credited by 30 June 2025. Because she used 2 days in May, her June closing balance is 4. The 6 days never appear at once — they appear one row at a time, only after her May / June salary is generated.
⚠️ Edge case — salary not yet generated: If the May salary is not yet run when Priya tries to apply on 25 May, her balance is still 4 (Jan + Feb + Mar + Apr credits). The May credit lands when HR clicks Generate for May.
🆕 Example 2 — Mid-Year Joiner (Starter Allocation)
What happens when an employee joins in the middle of the year? The starter allocation fires on the first false → true transition of Is Employee = Yes (whether at create or via the Employee toggle later), then the same monthly accrual takes over.
| Setting | Value |
|---|---|
| Employee | Anjali Mehta — joined 15 July 2025 |
| Leave Type | Casual — 12 / year (1 / month) |
Ledger Timeline
| Event | Credit | Notes |
|---|---|---|
| 15 Jul 2025 — User created with Is Employee = Yes | Starter allocation runs | System pro-rates from joining month onward; the lump for any earlier opening balance must come from Opening Balance Import, not starter allocation. |
| July salary generated | +1 | First monthly accrual |
| August → December salaries | +1 each (5 rows) | Year-end balance built up purely from monthly accrual |
📌 Why the starter allocation matters: Without it, an employee toggled to Is Employee = Yes after the fact (for example, the tenant Admin who later became an employee) would sit with all-zero leave balances forever. Daai now triggers the starter allocation on every false → true transition, both at user create and at user edit.
ℹ️ Migrating from another HR system? Use Opening Balance Import on the Leaves Settings aside once, before generating the first salary. After that the importer button hides forever and starter allocation + monthly accrual are the only paths to credit leaves.
💵 Example 3 — Encashment at Exit (Realistic Basic)
The live example assumes Basic = Monthly Salary for simplicity. In real Indian payroll, Basic is usually 40–50% of CTC, and Daai uses Basic (not Gross, not CTC) as the encashment base. Both versions are shown so you can match your structure.
Variant A — Simplified (Basic = Monthly Salary)
| Setting | Value |
|---|---|
| Employee | Ramesh Patel — exit 31 Dec 2025 |
| Leave Type | Privilege Leave — 18 / year |
| Encashment | All unused at exit |
| Monthly Salary | ₹30,000 (Basic = same) |
| Per-day rate | ₹30,000 ÷ 30 = ₹1,000 |
| Item | Days | Amount |
|---|---|---|
| Accrued through Dec | 18 | – |
| Taken | 5 | – |
| Unused (encashable) | 13 | 13 × ₹1,000 = ₹13,000 |
Variant B — Real-world (Basic = 50% of Gross)
| Item | Value |
|---|---|
| Gross Monthly Salary | ₹30,000 |
| Basic (50% of Gross) | ₹15,000 |
| Per-day rate | ₹15,000 ÷ 30 = ₹500 |
| Encashable days | 13 |
| F&F encashment | 13 × ₹500 = ₹6,500 |
⚠️ Common pitfall: Encashment uses Basic ÷ 30, not Gross ÷ 30 and not Basic ÷ 26. If you switched payroll systems and your old vendor was using a 26-day divisor, expect a ~13% lower encashment number in Daai for the same Basic.
📌 Encashable Limit caps the days, not the rate: If you had set Privilege Leave’s Encashable Limit = 10, Ramesh would still be paid only on 10 days even though 13 are unused. The other 3 lapse with the year-end / exit settlement.
🔁 Example 4 — Yearly Carry Forward (3-Year Cycle)
Carry-forward decides how many unused days survive the lapse month each year. Yearly carry-forward applies the cap once, on the lapse month.
| Setting | Value |
|---|---|
| Leave Type | Emergency Leave |
| Yearly Quota | 12 (1 / month) |
| Carry Forward Limit | 5 |
| Lapse On | December (calendar-year cycle) |
| Behaviour | Employee never takes leave |
Year-by-Year Ledger
| Year | Opening | Credited | Closing (before lapse) | Carry forward | 1 Jan next year |
|---|---|---|---|---|---|
| Year 1 | 0 | +12 | 12 | capped at 5 | 5 + 1 = 6 |
| Year 2 | 6 | +12 | 18 | capped at 5 | 5 + 1 = 6 |
| Year 3 | 6 | +12 | 18 | capped at 5 | 5 + 1 = 6 |
✅ Key takeaway: Carry Forward Limit prevents balances from compounding indefinitely. With Limit = 5, the steady-state opening balance every January is 6 (5 carried + 1 freshly credited at January salary), regardless of how many years the employee stays.
📆 Example 5 — Monthly Carry Forward (Annual Lapse Still Applies)
Monthly carry-forward lets balance keep growing month-on-month within the year — the cap only kicks in at the lapse month.
| Setting | Value |
|---|---|
| Leave Type | Emergency Leave |
| Yearly Quota | 12 (1 / month) |
| Carry Forward Limit | 5 |
| Lapse On | December |
Month-by-Month Ledger
| Month | Credit | Closing Balance | Note |
|---|---|---|---|
| January | +1 | 1 | – |
| February | +1 | 2 | No monthly cap — balance keeps growing |
| March → June | +1 each | 3 → 6 | Already above the 5-day Carry Forward Limit, but the cap doesn’t fire mid-year |
| July → November | +1 each | 7 → 11 | – |
| December (before lapse) | +1 | 12 | – |
| December (after lapse) | – | 5 | 7 days lapse |
| January (next year) | +1 | 6 | 5 carried + 1 fresh |
✅ Yearly vs Monthly — one-line difference:
- Yearly → cap applies once, on the lapse month, on the year-end balance.
- Monthly → balance accumulates freely all year; the same yearly cap still applies on the lapse month.
Net effect on the ledger is the same in this example, because the employee never used leave. The two settings diverge when an employee actually takes leave during the year — with monthly carry-forward, mid-year balances stay higher and protect against running out before the lapse.
📕 Example 6 — Lapse Month ≠ December (Financial-Year Cycle)
Most Indian companies run leave on the financial year (April → March), not the calendar year. The Lapse On dropdown on the Leave Details aside lets you set this once on the first row — the same month auto-applies to every leave type, so cycles stay aligned.
| Setting | Value |
|---|---|
| Leave Type | Casual — 12 / year |
| Carry Forward Limit | 3 |
| Lapse On | March |
| Employee balance on 31 Mar 2026 | 9 days unused |
| Date | Action | Balance |
|---|---|---|
| 31 Mar 2026 (lapse processed) | 9 → 3 (cap applied; 6 days lapse) | 3 |
| 1 Apr 2026 (FY 26–27 begins) | April salary credits +1 | 4 |
⚠️ Pick the lapse month carefully: Once the first salary has been generated, the Lapse On field for an actively-used leave type becomes read-only. Choose the lapse month that matches your own HR cycle before running payroll for the first time.
👥 Example 7 — Probation & Notice-Period Paid-Leave Toggles
The two policy switches at the top of Leave Settings — Allow Paid Leave in Probation and Allow Paid Leave in Notice Period — do not change the accrual ledger. They change whether a leave inside those windows is paid or treated as Loss of Pay.
Scenario
| Field | Value |
|---|---|
| Employee | Vikram Joshi |
| Joining | 1 Sep 2025; probation = 3 months (ends 30 Nov 2025) |
| Leave Applied | 5 days in October 2025 |
| Basic Salary | ₹20,000 → per day ₹20,000 ÷ 30 = ₹666.67 |
| Probation toggle | What happens | Salary impact |
|---|---|---|
| ON | Leave debited from Casual balance | No deduction |
| OFF | Leave is logged but treated as LWP | 5 × ₹666.67 = ₹3,333.33 deducted from October salary |
📌 Same logic for Notice Period. If Vikram resigns on 1 Mar 2026 with a 30-day notice and applies leave on 15 Mar:
- Notice toggle ON → paid leave from his accrued balance.
- Notice toggle OFF → LWP at Basic ÷ 30, deducted from his final March salary.
ℹ️ The toggles do not retroactively re-credit: Switching the toggle ON after a salary has been generated does not refund a past LWP deduction. Adjust at the Employee level on the Leave Statement tab if a one-off correction is needed.
🍽️ Example 8 — Sandwich Policy & Leave Days
Sandwich Policy doesn’t change accrual either — it changes how many days are debited when leave brackets a weekend / holiday.
| Scenario | Sandwich OFF | Sandwich ON |
|---|---|---|
| Leave on Friday + Monday (Sat & Sun in between) | 2 days debited | 4 days debited (Fri + Sat + Sun + Mon) |
| Leave on Thursday + Tuesday with a Friday public holiday | 2 days | 5 days (Thu + Fri + Sat + Sun + Mon… or whichever non-working days fall in the bracket) |
⚠️ Sandwich is paired with “Month Days” salary calculation: If your tenant uses Working Days instead, the Sandwich toggle is auto-disabled by the system and a warning is shown — weekends are already excluded from working-day pay, so sandwiching them again would double-count.
🔑 All Examples in One Picture
📌 Quick reference
- Accrual hits the ledger at salary generation, not on the 1st.
- Encashment / LWP / Conveyance daily rate = Basic ÷ 30.
- Yearly carry-forward caps once at the lapse month; Monthly never caps within the year but lapses at the same month.
- Lapse month is set on row 1 and applied to every leave type.
- Probation / Notice toggles change pay, not balance.
- Encashable Limit caps days; it cannot exceed the Carry Forward Limit for the same type.
- Starter allocation runs once on every false → true Is Employee transition; opening-balance migration uses the one-time Import.
🔗 Going back? For the screen, fields, and where each setting lives, see Leaves Settings. For the bigger HR picture, see HRM → Leaves and HRM → Salary.

