Leave Management — Intelligent Time-Off Orchestration for Modern Teams
Take complete control of your organization’s leave operations with automated accruals, smart coverage enforcement, and AI-assisted request management that keeps teams staffed and employees empowered.
🌟 What is Leave Management?
Leave Management is MangoApps Workforce’s comprehensive time-off administration system. It handles the full lifecycle of employee leave — from configuring leave types and accrual policies, through request submission, manager approval, and balance tracking, all the way to coverage enforcement and reporting. The module integrates deeply with shift scheduling and attendance to ensure operational continuity.
Every leave decision is backed by real-time balance data, coverage limit awareness, and intelligent routing so approvals never bottleneck and staffing gaps are caught before they happen.
Core Value Proposition
- 🏖️ Self-Service Time Off — Employees submit, modify, and cancel requests with instant balance visibility and shift conflict warnings
- ⚡ Automated Accruals — Configurable policies accrue hours on daily, weekly, monthly, quarterly, semi-annual, annual, or hours-worked frequencies with tenure and role-based rules
- 🛡️ Coverage Protection — Hard and soft staffing limits per location prevent understaffing; blackout periods block or flag requests during critical dates
- 🤖 AI-Powered Assistant — A conversational leave agent lets employees check balances, view holidays, and manage requests through natural language
🔗 How It Works
Request-to-Resolution Flow
┌──────────────┐ ┌──────────────────┐ ┌───────────────────┐
│ Employee │ │ Validation │ │ Approval │
│ Submits │────▶│ Engine │────▶│ Routing │
│ Request │ │ │ │ │
└──────────────┘ │ • Balance check │ │ • Direct manager │
│ • Blackout check │ │ • Skip-level if │
│ • Coverage limit │ │ manager on leave│
│ • Shift conflict │ │ • Admin override │
│ • Date validity │ │ • Special approval│
└──────────────────┘ └────────┬──────────┘
│
┌────────────────────────────┘
▼
┌──────────────────────┐ ┌──────────────────┐
│ Post-Approval │ │ Notifications │
│ Actions │────▶│ & Updates │
│ │ │ │
│ • Deduct balance │ │ • Employee alert │
│ • Remove from shifts │ │ • Manager alert │
│ • Update coverage │ │ • Coverage check │
│ • Track metrics │ │ • Calendar sync │
└──────────────────────┘ └──────────────────┘
Integration Ecosystem
┌─────────────────────────────────────────────┐
│ LEAVE MANAGEMENT │
│ │
│ Requests · Balances · Policies · Reports │
└──────┬──────────┬──────────┬───────────┬────┘
│ │ │ │
┌────────▼───┐ ┌───▼──────┐ ┌▼────────┐ ┌▼───────────┐
│ Shift │ │ Holiday │ │Attendance│ │ AI Agent │
│ Scheduling │ │ Calendar │ │ Tracking │ │ (Ask AI) │
│ │ │ │ │ │ │ │
│ Auto-remove│ │ Excludes │ │ Hours- │ │ Balance │
│ conflicting│ │ holidays │ │ worked │ │ queries, │
│ assignments│ │ from PTO │ │ accrual │ │ team cal, │
│ │ │ calc │ │ tracking │ │ holidays │
└────────────┘ └──────────┘ └──────────┘ └────────────┘
│ │ │ │
┌────────▼───┐ ┌───▼──────┐ ┌▼────────┐ ┌▼───────────┐
│ Coverage │ │ Location │ │Timesheet │ │Notification│
│ Limits │ │ & Juris- │ │ Entries │ │ Service │
│ │ │ diction │ │ │ │ │
│ Hard/soft │ │ Business,│ │ Feed │ │ In-app, │
│ caps per │ │ location,│ │ hours to │ │ email, │
│ date & │ │ country │ │ accrual │ │ coverage │
│ location │ │ holidays │ │ engine │ │ alerts │
└────────────┘ └──────────┘ └──────────┘ └────────────┘
🏆 Key Features
📋 Leave Request Management
The request system supports full and half-day requests (morning or afternoon), date range validation, balance sufficiency checks, and automatic business-day calculation that respects location-specific work schedules and holidays.
| Capability | Details |
|---|---|
| Request statuses | Pending, Approved, Denied, Cancelled, Special Approval |
| Half-day support | Morning or Afternoon half-day periods with 4-hour deduction |
| Hours calculation | Automatic working-day calculation excluding weekends & holidays |
| Location-aware | Uses employee’s primary location work-day schedule for calculations |
| Modification tracking | Full audit trail of every change with before/after values |
| Shift conflict detection | Warns when leave overlaps with assigned shifts; auto-removes on approval |
| Balance snapshot | Captures balance state at request creation for historical accuracy |
| Bulk approval | Background job processes bulk approve operations for managers |
Use Case — Manager Approval with Real-Time Balance:
When a manager reviews a pending request, the system shows real-time balance data that accounts for all other pending requests from the same employee. This prevents over-commitment of leave hours even when multiple requests are in flight simultaneously.
Pro Tip: Employees can print their approved leave requests from the detail page — useful for visa applications or personal record-keeping.
📊 Leave Types & Configuration
Administrators configure leave types with granular controls over approval requirements, documentation thresholds, accrual behavior, and color-coded icons for calendar visibility.
| Setting | Options |
|---|---|
| Accrual tracking | Enable or disable per leave type |
| Approval required | Toggle per leave type |
| Documentation required | Enable with configurable day threshold (e.g., 3+ days) |
| Negative balance | Allow or block requests that would exceed available hours |
| Default type | One leave type marked as organization default |
| Advance notice | Configurable minimum notice days (default: 7) |
| Color & icon | Custom hex color and FontAwesome icon for calendar display |
| Balance deduction | Toggle whether approved requests deduct from balance |
Use Case — Configuring Sick Leave:
Set documentation_required: true with a documentation_threshold_days: 3 so employees taking three or more consecutive sick days are prompted to upload supporting documentation, while shorter absences go through standard approval.
⚙️ Accrual Policies & Rules
The accrual engine supports nine frequency modes and a flexible rule system that adjusts accrual amounts based on tenure, role, location, or employment type. Policies can be assigned to individual employees or set as defaults for a leave type.
┌────────────────────────────────────────────────┐
│ ACCRUAL ENGINE │
│ │
│ Frequencies: │
│ ┌────────┐ ┌────────┐ ┌──────────┐ │
│ │ Daily │ │Weekly │ │Bi-Weekly │ │
│ └────────┘ └────────┘ └──────────┘ │
│ ┌────────┐ ┌──────────┐ ┌────────────┐ │
│ │Monthly │ │Quarterly │ │Semi-Annual │ │
│ └────────┘ └──────────┘ └────────────┘ │
│ ┌────────┐ ┌────────────┐ ┌────────┐ │
│ │Annual │ │Hours-Worked│ │Custom │ │
│ └────────┘ └────────────┘ └────────┘ │
│ │
│ Rule Conditions ──▶ Accrual Adjustments │
│ • Tenure ≥ 5 yrs → +8 hrs/period │
│ • Role = Manager → Replace with 12 hrs │
│ • Location = NYC → Multiply by 1.2 │
│ • Employment = PT → Replace with 4 hrs │
│ │
│ Limits & Controls: │
│ • Max balance cap • Carryover limits │
│ • Waiting periods • Proration for new hires │
│ • First accrual timing (immediate → 1 year) │
│ • Anniversary-based or fixed-date annual │
└────────────────────────────────────────────────┘
| Policy Setting | Description |
|---|---|
| Accrual amount | Base hours accrued per period |
| Accrual frequency | Daily, weekly, monthly, quarterly, semi-annual, annual, hours-worked, custom |
| Max balance | Cap on total available hours (unlimited if unset) |
| Max carryover | Limit on hours carried into the next year |
| Waiting period | Days after hire before accruals begin |
| First accrual timing | Immediate, 30/60/90 days, 6 months, or 1 year after waiting period |
| Proration | Auto-prorate for mid-period hires |
| Anniversary-based | Accrue on hire date anniversary instead of fixed calendar date |
| Hours-worked mode | Accrue per X hours worked (pulls from timesheets or attendance) |
| Accrual rules | Priority-ordered rules that add, multiply, or replace the base amount |
Use Case — Tenure-Based Accrual Tiers:
Create rules within a Vacation policy: employees with < 3 years get 6.67 hrs/month (10 days/year), 3-5 years get 10 hrs/month (15 days/year), and 5+ years get 13.33 hrs/month (20 days/year). The engine evaluates rules by priority and applies the first matching condition.
Pro Tip: Use the “hours-worked” frequency for part-time employees so they accrue proportionally to actual hours logged, pulling data from approved timesheets or attendance records.
🛡️ Coverage Limits & Blackout Periods
Coverage limits prevent too many employees from being off at the same time. They enforce hard caps (block requests) or soft caps (require special approval) and can be scoped to specific locations with separate weekend thresholds.
| Feature | Details |
|---|---|
| Limit types | Hard (blocks request) and Soft (flags for special approval) |
| Scope | Business-wide or location-specific |
| Percentage-based | Set max % of staff off; auto-calculates headcount threshold |
| Weekend enforcement | Separate limits for weekdays vs. weekends |
| Priority ordering | Higher-priority limits override lower ones for the same date |
| Alternative date suggestions | System suggests up to 5 nearby dates with available coverage |
| Real-time availability | AJAX endpoint shows spots remaining when selecting dates |
Blackout Periods block or flag leave requests during critical business dates (e.g., year-end close, product launches). They can be scoped to specific leave types and locations.
| Blackout Setting | Description |
|---|---|
| Block vs. flag | Fully block requests or route to special approval |
| Leave type scope | Apply to all leave types or specific ones |
| Location scope | Apply to all locations or specific ones |
| Status tracking | Active, Upcoming, or Past |
Pro Tip: Use soft limits during moderately busy periods to give managers discretion, and switch to hard limits during critical blackout windows to enforce zero-exception policies.
🔔 Notifications & Alerts
The notification system keeps all stakeholders informed at every stage of the leave lifecycle and proactively alerts managers when coverage thresholds are approached.
| Notification | Recipients | Trigger |
|---|---|---|
| New leave request | Direct manager, skip-level if manager on leave | Request submitted |
| Special approval needed | All business admins | Request during blackout period |
| Request approved | Requesting employee | Manager approves |
| Request denied | Requesting employee (with reason) | Manager denies |
| Request cancelled | Managers (if was approved) | Employee cancels approved request |
| Request modified | Employee + managers (if dates changed on approved) | Dates or details updated |
| Coverage limit approaching | Managers & admins | Utilization ≥ 75% (hard) or 65% (soft) |
| Coverage limit reached | Managers & admins | Utilization ≥ 95% |
| Coverage limit exceeded | Managers & admins | Utilization ≥ 100% |
| Daily coverage summary | Managers & admins | Daily digest email |
| Weekly coverage report | Managers & admins | Weekly digest email |
PTO-Aware Approval Routing:
When an employee’s direct manager is themselves on approved leave, the system automatically routes notifications to the skip-level manager as well, ensuring requests are never stuck waiting for an absent approver.
📈 Reporting & Analytics
Leave Management provides both operational and strategic reporting capabilities across coverage utilization, balance distribution, and request trends.
| Report | Description |
|---|---|
| Coverage utilization report | Daily slot usage, peak utilization %, and weekly trends |
| Coverage effectiveness analysis | Measures blocked vs. flagged requests per limit |
| Location breakdown | Per-location utilization comparison |
| Blocked requests detail | Lists denied requests with user, date, reason, and limit name |
| CSV export | Downloadable coverage report with all metrics |
| Absence reports | Tracks late arrivals and absences tied to shifts with reason codes |
| Balance export | Export all employee balances (CSV, scheduled via SFTP) |
Absence Reason Codes provide structured categorization for unplanned absences. Default codes include Running Late, Sick Leave, Family Emergency, Transportation Issue, Personal Appointment, and Other — each with configurable documentation requirements and paid/unpaid flags.
🗓️ Holiday Calendar
The holiday system supports three tiers of holiday scope — business-wide, jurisdiction-specific (country, state, city), and location-specific — with parent-to-child inheritance so regional offices automatically inherit national holidays.
| Feature | Details |
|---|---|
| Holiday types | Business-wide, Jurisdiction-specific, Location-specific |
| Jurisdiction hierarchy | Country → State → City (holidays inherit down) |
| Parent location inheritance | Location holidays can apply to child locations |
| Automatic exclusion | Holidays excluded from leave-day calculations |
| Year filtering | View holidays by year with upcoming/past scopes |
| Cache layer | Holiday lookups cached for performance with auto-invalidation |
| Template system | Pre-built holiday templates for quick setup |
🤖 AI Leave Assistant
The Leave Management AI Agent integrates with MangoApps’ Ask AI system, allowing employees to manage time off through natural conversation. The agent uses tool-based execution for real-time data access.
| Capability | What It Does |
|---|---|
| Check balances | Returns available, used, and accrued hours per leave type |
| View requests | Lists leave requests filtered by status |
| Team calendar | Shows who on the employee’s team is off during a date range |
| Upcoming holidays | Lists next upcoming company holidays with days-until count |
| Leave history | Summarizes past leave usage by year |
| Conflict check | Checks if department colleagues have overlapping approved leave |
| Submit/cancel/update | Directs to the Time Off portal or processes simple operations |
Example Queries:
- “How many vacation days do I have left?”
- “Show my pending leave requests”
- “What holidays are coming up?”
- “Who on my team is off next week?”
📥 Balance Import & Export
Administrators can bulk-manage leave balances through CSV import/export with scheduled SFTP integration support for automated synchronization with external HR systems.
| Feature | Details |
|---|---|
| Import formats | CSV, Excel (.xlsx/.xls), JSON |
| Export formats | CSV (manual or scheduled) |
| Template generation | Auto-generated CSV template with current leave types |
| Identifier options | Match employees by email, employee ID, or username |
| Scheduled sync | Daily, weekly, or monthly automated import/export via SFTP |
| Validation mode | Dry-run import to preview changes before committing |
| Background processing | Large imports processed asynchronously via background jobs |
🔄 Automated Background Processing
Leave Management runs several background jobs to keep accruals current and coverage alerts timely.
| Job | Purpose |
|---|---|
| Process leave accruals | Runs accrual calculations for all eligible users in a business |
| Recalculate all balances | Rebuilds balance totals from approved request history |
| Coverage notification | Checks coverage limits and sends approaching/reached/exceeded alerts |
| Balance import | Processes uploaded CSV/Excel files asynchronously |
| Balance export | Generates downloadable export files in the background |
| Bulk approve requests | Processes batch approval operations |
| Bulk assign policy | Assigns accrual policies to multiple users at once |
👥 User Roles & Permissions
| Role | Capabilities |
|---|---|
| Employee | Submit, view, edit, cancel own requests · View own balances and accrual history · View upcoming holidays · Print approved requests · Use AI assistant |
| Manager | All employee capabilities · Approve/deny team requests · View team balances (read-only) · Team leave calendar · Shift conflict visibility · Filter by employee, type, date range |
| Administrator | All manager capabilities · Configure leave types and accrual policies · Manage coverage limits and blackout periods · Import/export balances · Company-wide request view · Manage holidays · Assign policies to users · Bulk operations |
| Super Admin | All administrator capabilities · System-level configuration access |
🚀 Getting Started
For Employees
- View Your Balances — Navigate to My Time Off to see available hours for each leave type, pending requests, and upcoming time off
- Submit a Request — Click New Request, select a leave type, choose dates (full or half day), add an optional note, and submit
- Track Status — Monitor your request status on the dashboard; you’ll receive notifications when approved or denied
- Check the Calendar — View upcoming holidays and your approved time off in a unified timeline
For Managers
- Review Pending Requests — Go to Manager > Leave Management > Requests and filter by Pending status
- Check Coverage — Review the real-time balance data and shift conflict indicators before approving
- Approve or Deny — Approve valid requests or deny with a reason that the employee will see in their notification
- Monitor Team Calendar — Use the Calendar tab to see who’s off each month and identify coverage gaps
For Administrators
- Configure Leave Types — Go to Admin > Leave Configurations > Manage to create leave types (e.g., Vacation, Sick Leave, Personal)
- Set Up Accrual Policies — Create policies with your desired frequency, amounts, and rules; set one as default per leave type
- Define Coverage Limits — Create limits per location with max-people-off thresholds and hard/soft enforcement
- Import Balances — Upload opening balances via CSV to initialize the system for existing employees
- Add Holidays — Configure business-wide and location-specific holidays for accurate day calculations
✅ Best Practices
- ✅ Set up at least one default accrual policy per leave type so new employees automatically start accruing
- ✅ Use coverage limits with percentage-based thresholds for teams that fluctuate in size
- ✅ Configure separate weekend limits when your business operates on weekends
- ✅ Enable documentation requirements for extended sick leave to maintain compliance
- ✅ Assign location-specific policies for offices in different jurisdictions with varying leave entitlements
- ✅ Use the balance calculator to project future balances before requesting extended leave
- ✅ Schedule automated balance exports via SFTP for payroll system synchronization
- ✅ Review the weekly coverage report to identify trending capacity issues early
- ✅ Use tenure-based accrual rules instead of manually adjusting balances as employees gain seniority
- ✅ Set up blackout periods well in advance of critical business dates and communicate them to staff
📚 Related Resources
- Shifts & Scheduling Overview — Understand how leave integrates with shift management
- Time & Attendance Overview — Hours-worked accrual pulls from attendance data
- Compensation Management Overview — Compensation data works alongside leave for total rewards visibility
Leave Management — because well-rested teams build better products, and well-managed time off keeps the business running smoothly.