Skip to main content

ESS (Employee Self-Service)

Introduction

ESS gives employees a secure portal to view payslips, check attendance summaries, apply for leave, review loans and savings, download Form 16, and see CTC breakdowns—without access to full HR admin screens.

Purpose

ESS enables self-service for:

  • Payslip viewing and download
  • Leave requests against company policy
  • Loan and advance visibility
  • Tax Form 16 and savings details
  • Static information and CTC disclosure

When to Use

Use ESS when you:

  • Roll out employee-facing HR features after payroll go-live
  • Reduce HR ticket volume for payslip and leave queries
  • Provide statutory Form 16 access at year end
  • Complement mobile integrations via root self-service APIs
Dual entry points

The ESS Area serves browser UI. Root controllers EmpSelfService and GuardEmpSelfService expose JSON APIs for external apps—see Related Pages.

Overview / Architecture

ESS Area controllers filter data by the logged-in user’s linkage to an employee record and CompID. Layout uses _EssLayout.cshtml with the modern sidebar pattern.

Entry URL: /ESS/EssDashboard/Index
PageID: ESS
Module flag: Ess

Controllers

ControllerPrimary responsibility
EssDashboardEmployee home
PayslipsPayslip list and print/PDF
AttendenceAttendance summary (spelling preserved)
LeaveRequestApplicationLeave application submit
LeavePolicyPolicy reference
LoanAndAdvanceLoan balance and history
SavingDetailsSavings scheme details
EmployeeCTCCTC breakdown
Form16Form 16 download
InformationCompany / HR information

Views / Layout

AssetRole
_EssLayout.cshtmlESS module shell
ESS dashboard CSSSidebar + card layout
Payslip / Form16 viewsPrint-friendly templates

DAL

DAL classRole
EmployeeSelfSerivce_DALCore self-service reads (note spelling)
Rebursement_DALReimbursement-related reads
Payroll-linked SPsPayslip and Form 16 datasets

ESS reads predominantly; writes focus on leave applications and loan visibility.

Business Objects

Namespace: BO.ESS

BO typeRole
EmployeeSelfAttendance_BOAttendance summary
LeaveRequestApp_BOLeave application
LoanAndAdvance_BOLoan/advance rows
Reimbursement_BOReimbursement claims

Employee identity is resolved from user account linkage, not anonymous access.

Typical Workflow

Employee monthly self-service path:

Data Flow

  1. Login sets CompID and user identity; ESS actions map user to employee ID via SP.
  2. Payslips appear only after payroll process posts results for the period.
  3. Leave applications write through ESS BO → approval SPs consumed by HR modules.
  4. Form16 reads annual tax snapshot tables filtered by financial year.

Reports

OutputController
Payslip (print/PDF)Payslips
Form 16Form16
Attendance summaryAttendence

Crystal or HTML rendering depends on the action; payslips often mirror payroll outputs.

Permissions

GateRequirement
Module flagdtVerifyUser.Ess == true
SessionValid CompID
Employee linkageUser account mapped to employee row
Menu permissionsOptional fine-grained ESS menus

Employees should not receive Payroll or ControlPanel flags on the same account unless intentionally designed for hybrid roles.

Common Issues

SymptomLikely cause
No payslip for monthPayroll not processed or employee not linked
Leave submit failsPolicy window or balance SP rejection
Form16 emptyTax computation not finalized for FY
API returns errorCalling root /EmpSelfService without employee context

Important Notes

Root EmpSelfService

/EmpSelfService/GetEmpSelfService returns JSON for integrations. GuardEmpSelfService redirects legacy routes to /EmpSelfService.

Typo in DAL class name

EmployeeSelfSerivce_DAL uses Serivce — search the codebase with that spelling when tracing calls.

Common Mistakes

MistakeConsequence
Granting ESS without employee linkageEmpty dashboard
Using admin account for ESS UATMisleading permission behavior
Expecting ESS to approve leaveApproval happens in HR modules

Next Steps

  1. Link test employee to user account with Ess flag.
  2. Process a test payroll month and confirm payslip visibility.
  3. Submit a leave request and approve via Attendance/Payroll path.