Skip to content

Dynamic Multi-Level Leave and Expense Approval for ERPNext A custom Frappe app that enables flexible, role-based multi-level leave approval workflows with dynamic routing based on employee hierarchy, approval history tracking, permission control, and email notifications.

License

Notifications You must be signed in to change notification settings

Beveren-Software-Inc/Ladder-Approve

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ladder Approve: Dynamic Multi-Level Leave and Expense Approval for ERPNext

Ladder Approve is a powerful custom Frappe app that introduces a dynamic, multi-level approval workflow for Leave Applications and Expense Claims in ERPNext. It automatically routes documents based on reporting hierarchy and empowers HR to act as the final approver. This app enhances control, accountability, and flexibility in organizational approval processes.


Key Features

Automated Routing Based on Hierarchy

  • Uses the reports_to field in the Employee Doctype to determine the next approver.
  • Documents move up the reporting chain until reaching a user with the HR Manager role.
Screenshot 2025-07-15 150434

Final Approval by HR

  • Users with the HR Manager role act as the final authority.
  • Supports organizations with multiple HR Managers.
  • Bypasses hierarchy if no more approvers are found.
Screenshot 2025-07-15 151113

Approval History Tracking

  • Adds a custom field custom_previous_approvers (Small Text) to track users who have approved the document previously.
  • Ensures clear traceability and auditability.
Screenshot 2025-07-15 151355

Forwarding Capability

  • Mid-level approvers can forward documents to their managers instead of finalizing them.
  • If no higher manager is found, system sends to any HR Manager.
  • Forwarding updates the document with the new current approver.
Screenshot 2025-07-15 151812

Smart Permissions & Action Control

  • Only the current approver has access to submit.

  • Uses custom Permission Query Script to control visibility based on:

    • Document Owner (Applicant)
    • Current Approver
    • Previous Approvers
    • System Manager / HR Manager / Administrator

Real-Time Email Notifications

Triggered on key transitions:

  • Document forwarded to next approver
  • Document approved or rejected
  • Includes rejection reason if applicable
Screenshot 2025-07-15 152238

HR Settings:

  • Two checkboxes to globally enable:

    • Multi-Level Leave Approval
    • Multi-Level Expense Claim Approval
Screenshot 2025-07-15 152414

Employee-Level Overrides:

  • Employees can opt out of multi-level flow via checkboxes:
Screenshot 2025-07-15 152616

Installation Guide

# Step 1: Clone the repo
bench get-app ladder_approve https://github.com/Beveren-Software-Inc/ladder_approve.git

# Step 2: Install the app
bench --site yoursite install-app ladder_approve

Configuration Steps

Step 1: Enable in HR Settings

  • Go to HR Settings

  • Enable both:

    • Enable Multi-Level Leave Approval
    • Enable Multi-Level Expense Claim Approval

Step 2: Setup Employee Overrides

  • Open Employee master
  • Use checkboxes to disable multi-level approval for specific users.

Step 3: Custom Approval Buttons in UI

  • Users see Approve or Reject based on role and stage.

Step 4: Monitor Approval History

  • custom_previous_approvers field shows who has approved so far.

Realistic Example Workflow

  1. Employee A applies for leave.
  2. Document is auto-assigned to their reporting manager (Employee B).
  3. Employee B clicks Approve, system forwards to Employee C (B’s manager).
  4. C also approves, final stage goes to HR Manager (Employee D).
  5. HR Manager takes final action (Approve or Reject).

At each step:

  • Only the current approver has actionable access.
  • Notifications are triggered.
  • Approval trail is recorded.

About

Dynamic Multi-Level Leave and Expense Approval for ERPNext A custom Frappe app that enables flexible, role-based multi-level leave approval workflows with dynamic routing based on employee hierarchy, approval history tracking, permission control, and email notifications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •