Feature overview
Damsy ERP is organized into MVC Areas, each representing a functional module with its own layout, dashboard, controllers, and report viewers. Users reach modules from the home dashboard after login; access is controlled by boolean flags on the authenticated user record.
Purpose
This page maps each module to its business purpose, entry URL, and access flag. Use it when scoping work, tracing permissions, or explaining the product to stakeholders.
When to use this reference
- You need to know which Area owns a feature before searching controllers
- You are configuring user module flags in the administration panel
- You are planning integrations between payroll output and billing input
Module summary
| Module | Access flag | Entry route | Primary purpose |
|---|---|---|---|
| Payroll | Payroll | /Payroll/PayrollDashboard/Index | HR masters, attendance, salary processing, statutory reports, F&F |
| Registration | Webenroll | /Registration/RegistrationDashboard/Index | Candidate enrollment, induction, unit permissions, HR registration |
| Bills | Billing | /Bills/BillsDashboard/Index | Client billing, GST/IRN, payments, credit/debit notes, billing MIS |
| Stock | ZSTOCK | /Stock/StockDashboard/Index | Inventory, requisition, PO, receipts, issues, returns |
| Sales | ZSales | /Sales/SalesDashboard/Index | Lead capture, follow-up, allowances, basic sales reports |
| ESS | Ess | /ESS/EssDashboard/Index | Employee self-service — payslips, leave, loans, Form 16, CTC |
| Contracted Rates | ContractedRates | /ContractedRates/ContractedDashboard/Index | Contracted unit rates, wage register linkage, billing rate masters |
| Operation | Operation | /Operation/OperationDashboard/Index | Grievances, incidents, client complaints, day/night checking |
| Attendance Punching | AttPunch | /AttendancePunching/AttendanceDashboard/Index | Punch entry/approval, leave entry, shifts, attendance reports |
| Control Panel | ControlPanel | /Adminisration/UserDashBoard/Index | User creation, roles, email configuration |
| Management Dashboard | ManagementDashboard | /ManagmentDashBoard/ManagmentDashBoard/Index | Cross-module KPIs and MIS — wages sheets, P&L, recoveries |
| Verification & Approval | VerificationAndApproval | /VerificationAndApproval/VerificationApprovalDashboard/Index | Salary verification workflow before payment release |
UI labels do not always match flag names. For example, Registration in the dashboard corresponds to the Webenroll flag, and Stock maps to ZSTOCK.
Module highlights
Payroll
The largest module. Covers company configuration, branches, clients, units, employee lifecycle, attendance import, salary verification and processing, arrear/bonus runs, bank upload, income tax computation, and statutory MIS via Crystal Reports.
Bills
End-to-end client billing with bill masters, particulars, payment receipt, credit/debit notes, expense tracking, GST returns, and bulk IRN generation. E-invoice credentials are loaded into session at login.
Stock
Full inventory lifecycle: item and vendor masters, requisitions, purchase orders, goods receipt, multi-variant item issue (company, branch, supervisor, site, employee), returns, and form reports.
ESS
Employee-facing portal for payslips, attendance view, leave applications, loan/advance details, savings, CTC breakdown, and Form 16. Complements payroll data with a simplified self-service UI.
Shared root features
Some capabilities live outside Areas:
- EmployeeM — shared employee master used from Payroll and Registration layouts
- ManageError — centralized and per-Area error handling
- Login / Dashboard — authentication and module launcher
How module navigation works
The ModuleManagement action on LoginController maps a PageID string to the correct Area dashboard URL. Each Area controller repeats a session gate:
if (string.IsNullOrEmpty(Convert.ToString(Session["CompID"])))
return RedirectToAction("UserLogin", "Login", new { Area = "" });
Developer notes
- Each Area has a dedicated layout under
Areas/<Area>/Views/Shared/. - Modern modules use flat topbar + sidebar shell CSS (
shell-modern.css,sidebar-unified.css). - Legacy modules (Sales, Operation, Attendance) may still use the older
header-navbarshell. - Fine-grained page menus often depend on
[dbo].[GetDataUserPermissions]— a minimal database seed may leave menus empty even when login succeeds.
On a blank database with only minimal seed data, module flags may allow dashboard access while individual menu pages fail. Seed or copy MenuMaster and UserPermissions from a working database for full navigation.
Common mistakes
| Mistake | Result |
|---|---|
| Searching for "Administration" Area folder | Folder is named Adminisration |
| Searching for "ManagementDashboard" route | Route is ManagmentDashBoard |
Assuming one ModuleAccess session key | Access comes from bool flags on dtVerifyUser |
| Opening ESS expecting admin HR screens | ESS is employee-facing; HR admin work lives in Payroll |
Related pages
Next steps
Understand the underlying platform in Technology stack, then set up your environment with Requirements.