π§Initial Configuration
After activating the HRM module, a few configuration steps are recommended before you start managing employees and running payroll. All settings are accessible from Settings > HRM Configuration in the sidebar.
General Settings
Navigate to Settings > HRM Configuration > General to configure foundational options.
Fiscal Year Start Month
Defines when your organization's fiscal year begins. This affects leave carryover processing and payroll period calculations.
Default: January
Options: Any month (JanuaryβDecember)
Example: If your fiscal year runs April to March, set this to April. Leave carryover will be processed on April 1st each year.
Employee Code Format
Controls how employee codes are auto-generated when creating new employees.
year_increment
2026-001, 2026-002
Prefixed with the current year, resets each year
increment
001, 002, 003
Simple sequential numbering
Attendance Settings
Navigate to Settings > HRM Configuration > Attendance.
Working Hours
Standard Hours Per Day
8
Used for overtime calculations and payroll pro-rating
Work Start Time
09:00
Expected check-in time
Work End Time
17:00
Expected check-out time
Week-Off Days
Select which days of the week are non-working days.
Default: Saturday, Sunday
Used in payroll calculations (working days count) and automatic weekend attendance marking
Leave Management Settings
Navigate to Settings > HRM Configuration > Leave Management.
Approval Workflow
Single Level (default)
One approver reviews and approves/rejects the request
Multi Level
Request passes through multiple approval stages
Auto Approve
Requests are automatically approved upon submission
Auto-Approve Leave Types
Select specific leave types that should bypass the approval workflow entirely. Useful for types like Work From Home or Compensatory Off where approval isn't required.
Leave Carryover
Carryover Enabled
Yes
Whether unused leave days carry forward to the next fiscal year
Max Carryover Days
10
Maximum number of days that can be carried forward
Carryover Expiry (months)
3
Carried-forward days expire after this many months into the new fiscal year
Leave carryover is processed automatically on the first day of your fiscal year start month via a scheduled command.
Payroll Settings
Navigate to Settings > HRM Configuration > Payroll.
Salary Calculation Basis
Determines how salary is computed for partial months or pro-rated periods.
Working Days (default)
Salary is pro-rated based on actual working days in the period
Working Hours
Salary is calculated based on hours logged
Fixed Monthly
Full monthly salary regardless of working days
Overtime
Overtime Enabled
Yes
Whether overtime hours are factored into payroll
Overtime Multiplier
1.5x
Multiplier applied to the hourly rate for overtime hours
Notification Recipients
Select users who should receive email notifications when payroll runs are completed. Typically set to HR managers or finance team members.
Departments & Projects
Departments
Navigate to Settings > HRM Configuration > Departments to create your organizational departments before adding employees. Each employee is assigned to a department.
Examples: Human Resources, Engineering, Sales, Marketing, Finance.
Projects
Navigate to Settings > HRM Configuration > Projects to define projects that employees can log time against in their timesheets.
Setting Up Leave Types
Before employees can submit leave requests, you need to configure leave types. Navigate to Leave Management > Leave Types from the sidebar.
For each leave type, configure:
Name
e.g., Annual Leave, Sick Leave, Maternity Leave
Days Per Year
Annual entitlement for this leave type
Is Paid
Whether this leave type is paid
Requires Approval
Whether requests need manager approval
Carry Forward
Whether unused days roll over to the next year
Max Carry Forward Days
Limit on days that can be carried forward
Is Active
Enable or disable the leave type
Tip: You can use the
php artisan hrm:seed-leave-datacommand to create a standard set of leave types (Annual, Sick, Personal, Maternity, Paternity, Bereavement, Unpaid, Work From Home) with sensible defaults.
Setting Up Payroll Components
Before running payroll, define your salary components under Payroll > Payroll Components.
Components fall into three categories:
Allowance (Earnings)
Basic Salary, House Rent Allowance, Transport Allowance, Bonus
Deduction
Provident Fund, Insurance Premium, Loan Repayment
Tax
Income Tax, Social Security Tax
Each component supports two calculation methods:
Fixed: A set monetary amount (e.g., $500 Transport Allowance)
Percentage: A percentage of base or gross salary (e.g., 12% Provident Fund)
Tip: Run
php artisan hrm:seed-payroll-datato generate a standard set of payroll components (4 allowances, 3 deductions, 2 taxes) with typical configurations.
Employee Portal Configuration
The Employee Portal is configured via the config/employee-portal.php file in the HRM module directory. These settings control what employees see and can do when they log in.
Key Options
enabled
true
Enable or disable the employee portal
employee_role_name
Employee
Name of the role assigned to employee users
auto_create_user
true
Automatically create a CRM user account when an employee is created
landing_page
/timesheets
The page employees see after login
Visible Menu Items
By default, employees can access:
Timesheets
Leave Requests
Attendance
Leave Balances
Payslips
To grant employees access to pages from other modules, add the route path to the allowed_menu_items array in the config file.
Data Scoping
The portal automatically filters data so employees can only see their own records. This applies to leave requests, leave balances, attendance, timesheets, salary structures, payroll entries, and payslips.
Models excluded from scoping (visible to all employees):
Employee β so the BelongsTo dropdown works when creating records
Leave Type β so employees can see available leave types
Recommended Setup Order
Activate the module β Enter your license code in Settings > HRM Configuration > Activation
Configure general settings β Set fiscal year and employee code format
Create departments β Add your organizational structure
Create projects β Define projects for timesheet tracking (if applicable)
Set up leave types β Configure leave categories and entitlements
Configure attendance settings β Set working hours and week-off days
Set up payroll components β Define earnings, deductions, and taxes
Configure payroll settings β Set calculation basis and overtime rules
Add employees β Start creating employee records (user accounts are created automatically)
Assign salary structures β Link payroll components to each employee
Create leave balances β Allocate leave entitlements for the current year
Last updated