Jump to content

Frappe HRMS - Ch06 Leaves

From MediawikiCIT

Frappe HRMS – Chapter 6: Leaves

Part of the Frappe HRMS documentation series.  |  Upstream: github.com/frappe/hrms

The Leaves module manages the full leave lifecycle: type definitions, policy configuration, annual allocations, applications, approvals, encashment, and the leave ledger that maintains accurate balance records.


1. Leave Type

Purpose

Defines a category of leave and all rules governing it — how it accrues, whether it carries over, whether it can be encashed, and how it affects attendance. Leave Types are the foundation for all downstream leave operations.

Key Configuration Fields

Field Description
Leave Type Name e.g., Vacation Leave, Sick Leave, Maternity Leave, Paternity Leave, Service Incentive Leave
Max Days Allowed Maximum consecutive days allowed per application (optional)
Is Carry Forward Whether unused balance rolls over to the next period
Is Encashable Whether unused balance can be converted to cash
Is Earned Leave Whether the leave accrues incrementally over time (vs. upfront allocation)
Applicable After (Working Days) Minimum service days before the leave can be applied
Allow Negative Balance Whether employees can go below zero balance
Include Holiday Whether holidays within a leave period count as leave days
Is Optional Leave Whether attendance is auto-marked on approved leave

Philippine Leave Types (Minimum Statutory)

Leave Type Basis Days Encashable
Service Incentive Leave (SIL) Labor Code Art. 95 5 days/year Yes (at separation)
Maternity Leave RA 11210 105 days (normal), 120 days (C-section) No
Paternity Leave RA 8187 7 days No
Solo Parent Leave RA 8972 7 days/year No
Magna Carta Leave (Women) RA 9262 10 days/year No
Vacation Leave Company policy Variable Company policy
Sick Leave Company policy Variable Company policy

Steps

  1. Go to HR → Leaves → Leave Type → New.
  2. Enter Leave Type Name and configure applicable fields per the table above.
  3. Save.

2. Holiday List

Purpose

Defines the official holidays for a company or location. Holiday Lists are assigned to employees directly or via their Department/Branch. Leave Applications and Attendance records reference the Holiday List to correctly mark holiday days.

Philippine Holidays

Frappe includes a feature to auto-populate regional holidays. For the Philippines, two categories apply:

  • Regular Holidays (200% pay if worked): New Year's Day, Araw ng Kagitingan, Maundy Thursday, Good Friday, Labor Day, Independence Day, National Heroes Day, Bonifacio Day, Christmas Day, Rizal Day
  • Special Non-Working Days (130% pay if worked): Chinese New Year, Ninoy Aquino Day, All Saints' Day, All Souls' Day (certain years), Feast of the Immaculate Conception, Christmas Eve, Last Day of the Year

Steps

  1. Go to HR → Leaves → Holiday List → New.
  2. Enter Holiday List Name and Year.
  3. Click Get Regional Holidays and select the Philippines region.
  4. Verify and adjust dates.
  5. Mark each holiday with type: Regular Holiday or Special Non-Working Day.
  6. Save.

Assignment

  • Assign to employees via the Employee master (Holiday List field).
  • Or assign in bulk via HR Settings (default company holiday list).

3. Leave Period

Purpose

Defines the validity period for leave allocations (typically the fiscal or calendar year). All Leave Allocations must reference a Leave Period.

Steps

  1. Go to HR → Leaves → Leave Period → New.
  2. Enter Period Name (e.g., 2025 Leave Year), Start Date, and End Date.
  3. Select the Company.
  4. Save.

4. Leave Policy

Purpose

Groups multiple Leave Types with their annual allocation quantities into a single policy document. A policy is then assigned to employees (directly or by grade/department) and drives the Leave Allocations for the period.

Steps

  1. Go to HR → Leaves → Leave Policy → New.
  2. Enter Policy Name (e.g., Regular Employee – 2025, Probationary – 2025).
  3. Under the Leave Policy Details table, add each Leave Type with:
    • Leave Type
    • Annual Allocation (days)
  4. Save.

5. Leave Policy Assignment

Purpose

Links a Leave Policy to a specific employee for a specific Leave Period. When submitted, the system automatically creates the corresponding Leave Allocation records.

Steps

  1. Go to HR → Leaves → Leave Policy Assignment → New.
  2. Select Employee, Leave Policy, Leave Period, and Effective From date.
  3. Save and submit.
  4. System creates one Leave Allocation record per Leave Type in the policy.

Bulk Assignment

Use the Leave Control Panel to assign a policy to multiple employees at once (filter by Department, Grade, Employment Type).


6. Leave Allocation

Purpose

The actual grant of leave days to an individual employee for a specific Leave Type and period. The Leave Ledger Entry is created from this record.

Steps

  1. Go to HR → Leaves → Leave Allocation → New.
  2. Select Employee, Leave Type, From Date, and To Date.
  3. Enter the number of New Leaves Allocated.
  4. Enable Carry Forward if prior year balance should be added.
  5. Submit.

Note

Do not create Leave Allocations manually if using Leave Policy Assignment — the system creates them automatically.


7. Leave Application

Purpose

The employee's request for leave. Checked against available balance and routed for manager approval. Approved applications are reflected in the Leave Ledger and automatically mark attendance as "On Leave."

Prerequisites

  • Sufficient leave balance (Leave Allocation exists)
  • Leave type not blocked by a Leave Block List for the requested dates

Steps

Employee Submission

  1. Go to HR → Leaves → Leave Application → New.
  2. Select Leave Type, From Date, and To Date.
  3. Enter Reason.
  4. Total Leave Days auto-calculates (excluding holidays if Leave Type is configured to do so).
  5. Save → Submit → Approver is notified.

Approval

  1. Approver opens the Leave Application.
  2. Reviews the request and current balance.
  3. Clicks Approve or Reject.
  4. On approval, system deducts from the leave balance via a Leave Ledger Entry.
  5. Attendance records for the covered dates are updated to "On Leave."

Half-Day Leave

Enable the Half Day toggle and select AM or PM. System deducts 0.5 days.

Next Step

  • Employee can check balance via Leave Allocation or Leave Ledger.
  • Manager can view the team's leave calendar.

8. Compensatory Leave Request

Purpose

Allows an employee who worked on a holiday or rest day to request compensatory time off in lieu of premium pay.

Steps

  1. Go to HR → Leaves → Compensatory Leave Request → New.
  2. Select Employee, Work Date (the holiday/rest day worked), and the corresponding Leave Type.
  3. Submit for approval.
  4. On approval, system creates a Leave Allocation adding compensatory days.

9. Leave Encashment

Purpose

Converts unused leave balance into a cash payment. Typically used at year-end for Service Incentive Leave or at separation for accumulated leave balances.

Prerequisites

  • Leave Type must have Is Encashable enabled
  • Employee must have positive leave balance

Steps

  1. Go to HR → Leaves → Leave Encashment → New.
  2. Select Employee, Leave Type, and Leave Period.
  3. Enter Encashable Days (system may auto-calculate based on balance).
  4. System computes cash value based on Daily Salary from the employee's Salary Structure.
  5. Submit.
  6. Process payment via Payment Entry or include in the next payroll run as an Additional Salary.

10. Leave Block List

Purpose

Prevents leave from being approved for certain departments on critical dates (e.g., month-end closing, peak production periods). Applies at the Department level.

Steps

  1. Go to HR → Leaves → Leave Block List → New.
  2. Enter Block List Name.
  3. Under Dates, add each blocked date with reason.
  4. Under Allowed, list any employees who are exempt.
  5. Assign the Block List to the relevant Department(s).
  6. Save.

11. Leave Ledger

Purpose

The double-entry ledger underlying all leave balance movements. Every allocation, application, encashment, and adjustment creates a Leave Ledger Entry. Read-only — do not edit directly.

Access

HR → Leaves → Reports → Leave Ledger


Reports

  • Employee Leave Balance — current balance per employee per leave type
  • Employee Leave Balance Summary — summary view across all employees
  • Employees Working on a Holiday — identifies attendance exceptions on holidays (triggers holiday pay computation)
  • Leave Ledger — full transaction history of all leave movements