Running your team on the SG HRM Portal
A plain-language walkthrough of every module in the system — attendance, leave, shifts, overtime, payroll and CPF, and commission tracking — organised by what each role actually needs to do.
Getting started
Everyone signs in through the same door. What you see next depends on your role.
Signing in
- Open the portal's login page and enter your email or username and password. New staff usually log in with their employee code (e.g. EMP004) unless HR set a different username.
- Click Login. Admins and HR land on the Dashboard; everyone else lands on My Dashboard, their personal home screen.
- First time in? Go to your name in the top-right corner and choose Change Password to set something only you know.
Forgot your password? You can't reset it yourself from the login screen — ask your HR administrator to set a new one for you from your employee record. See Questions & troubleshooting.
Changing your password
Anyone signed in can change their own password at any time:
- Click your name in the top-right corner and select Change Password.
- Enter your current password, then your new one twice to confirm.
- Passwords need at least 6 characters. Once saved, use the new password next time you sign in.
Roles & permissions
The portal has four account types. Admin and HR see the same full dashboard; Managers and Employees see a lighter, self-service view.
| Role | Dashboard | Can do |
|---|---|---|
| Admin | Dashboard | Everything — employees, payroll, shifts, policies, and system settings. |
| HR | Dashboard | Same day-to-day access as Admin: employees, attendance, leave, payroll, shifts, overtime, commission. |
| Manager | My Dashboard | Own attendance, leave and payslips, plus a Manage Team Leaves queue for first-stage leave approval. |
| Employee | My Dashboard | Clock in/out, apply for leave, view payslips and overtime history, view own profile. |
A leave request goes through two stages: the employee's Manager approves first, then HR gives the final sign-off. If HR applies the leave directly, it can skip straight to the HR stage.
Attendance & clock-in
Staff clock in and out from their phone or computer. The portal checks their GPS position against the worksite you've defined, and flags lateness automatically.
Setting up a worksite (Admin/HR)
Before anyone can clock in, define at least one geofenced worksite:
- Go to Settings → Worksites → Add Worksite.
- Give it a name and either type in its latitude/longitude or click Get My Current Location while standing there.
- Set a radius in metres — how far from that point an employee may clock in from. 200–300m suits most single-building sites.
- Assign the worksite to each employee from their Edit Employee page.
Clocking in and out (Employee)
- From My Dashboard, click Clock In / Out.
- The page shows your assigned shift and worksite. Click CLOCK IN and allow location access when your browser asks.
- If you're outside the worksite radius, the portal blocks the clock-in and tells you how far away you are.
- At the end of the day, return to the same page and click CLOCK OUT. Your hours worked are calculated automatically.
Daily reports & re-validation (Admin/HR)
Attendance → Report lists everyone's clock times for a chosen date range, with a link to their GPS location on the map. If you change the late grace period in Settings after the fact, use Re-validate Statuses to recalculate historical Late/Half Day flags against the new rule instead of editing records by hand.
Leave
Leave balances are calculated automatically from each employee's employment type, and every request is tracked through a two-stage approval.
Applying for leave (Employee)
- From My Dashboard, click Apply Leave. Your current balances for every leave type are shown at the top.
- Choose a Leave Type, a Duration (Full Day, Half Day, or a 2-hour Permission), and your dates.
- Add a reason and submit. The days are immediately marked pending against your balance so you can't accidentally double-book them.
Approving leave (Manager, then HR)
Managers see their stage under Manage Team Leaves; Admin/HR see theirs under Leaves → Manage. Either stage can reject a request — doing so releases the pending days straight back to the employee's balance.
Leave policy & types (Admin)
Under Settings → Leave Policies, set how many days per year each employment type (Full-time, Part-time, Contract) earns for each leave type. New employees are entitled automatically the moment they're added — no manual setup needed per person. Leave types themselves (Annual, Sick, Hospitalisation, No Pay, or custom ones you add) live under Leaves → Types.
Encashment
An employee can request to cash out unused leave from the Encash Leave button on My Leaves. HR approves or rejects the request under Leaves → Manage Encashment; approving it deducts the days from the employee's balance immediately.
Overtime
Most overtime is detected automatically the moment someone clocks out. Employees can also submit a manual request for hours the system didn't catch.
How auto-overtime is worked out
- Normal weekday: hours clocked beyond the employee's shift length count as OT.
- Rest day (Sunday by default): every hour worked counts as OT.
- Public holiday: every hour worked counts as OT, at the higher public-holiday rate.
Each type has its own multiplier, set under Settings → OT Settings — for example 1.5× on a normal day, 2× on a rest day, 3× on a public holiday. Add your public holiday calendar there too, so the system knows which dates qualify.
Requesting overtime manually (Employee)
- Go to Overtime History → Request OT.
- Pick the date, the OT type, and the number of hours, with a short note on why.
- It appears in HR's approval queue as Pending until actioned.
Approved OT — whether auto-detected or manually requested — flows straight into that employee's next payroll run.
Employees
The employee record is the single source of truth the rest of the system reads from — salary, CPF eligibility, shift, worksite and bank details all live here.
Adding an employee
- Go to Employees → Add Employee. The employee ID (e.g. EMP004) is generated for you.
- Fill in personal details, job details, and a starting Basic Salary — this drives every payroll calculation later.
- Assign a Default Shift and Worksite so attendance and lateness rules apply from day one.
- Under Bank & Statutory, tick CPF Eligible and PR/Citizen as they apply — see the callout below, this pair decides whether CPF is deducted at all.
- Leave the password blank to default it to the employee's ID code, or set one yourself. Click Add Employee — this also creates their login account and starting leave balances in one step.
By law, CPF contributions only apply to Singapore Citizens and Permanent Residents. If PR/Citizen is left unticked, payroll will correctly show $0 CPF for that employee even with CPF Eligible ticked — this is expected for Work Pass holders, not a bug. Double-check this box whenever CPF looks wrong on a payslip.
Editing, viewing, and resetting a password
Open any employee from the list and click Edit to update their details, upload NRIC or contract documents, or change their status to Resigned/Terminated. The same screen has a Reset Password field — leave it blank to keep their current password, or fill it in to set a new one on their behalf.
Employees can view their own record — but only their own — from View Profile on their dashboard.
Shifts & roster
Define shift patterns once, then assign them to individuals, whole departments, or specific dates for rotational rosters.
Creating a shift
Under Shifts → Add New Shift, set a name, start and end time, and a break duration in minutes — the break is automatically deducted when calculating hours worked and lateness.
Three ways to assign a shift
- Individual, fixed: becomes that employee's everyday default shift until changed.
- By department: assigns the same shift to every employee in a department in one action.
- Custom / rotational: pick specific days of the week within a date range (e.g. only Saturdays and Sundays) — useful for rest-day rotations or temporary schedule changes. This overrides the default shift only on the days selected.
The Current Assignments tab shows a day-by-day roster for the date range you choose, marking each entry Default or Custom so you can see at a glance who's on their usual pattern.
Payroll & CPF
Payroll pulls together basic salary, approved overtime, salary components, commission, unpaid leave and loan deductions, then applies CPF and SDL automatically.
What goes into a payslip
Salary components & loans
Recurring or one-off pay items — a transport allowance, a bonus, a salary deduction — are set up once under Payroll → Earnings/Deductions as a master list, then assigned to individual employees with an amount and (optionally) a specific month. Staff loans work the same way: record the loan amount and monthly instalment once, and payroll deducts it automatically each run until it's paid off.
Running payroll
- Go to Payroll → Run Payroll, choose the employee and month, then click Calculate Preview.
- Review the breakdown — earnings, deductions, CPF (employee and employer share), and SDL are all shown before anything is saved.
- Click Proceed & Process Payment to save it. This also updates any active loan balances.
CPF, at a glance
| Age band | Total rate | Employee share |
|---|---|---|
| Up to 55 | 37% | 20% |
| 56–60 | 32.5% | 16% |
| 61–65 | 23.5% | 10.5% |
| 66–70 | 16.5% | 7.5% |
| 71+ | 12.5% | 5% |
These rates, plus the CPF Ordinary Wage ceiling and the attendance late-grace-period, all live under Settings → CPF Policies and Attendance Settings — update them there if MOM rates change, and every future payroll run picks up the new numbers automatically.
Payslips, IR8A, and bank export
- Payslips — each processed run gets a printable payslip, reachable from Payroll → Payslip. Employees can only open their own.
- IR8A — Payroll → IR8A Report totals each employee's gross pay, allowances and CPF for the year, ready for annual tax filing.
- GIRO export — download a CSV of everyone's net pay and bank details for a given month to submit for bulk bank transfer.
Sales commission
Outdoor-service bookings and Thachanai Tray collections feed into staff commission, which then folds into that month's payroll automatically.
Assigning commission on a booking
- Under Sales Commission → Pending Receipts, filter by date range and service type to find unprocessed bookings.
- Click View & Commission on a receipt, choose the employee(s) involved, an amount each, and which payroll month it should land in.
- Click Save Commissions — the receipt moves to Processed Receipts and won't show up as pending again. Made a mistake? Reset on the processed list undoes it.
Thachanai Tray distribution
For collections split across the team rather than tied to one booking:
- Under Thachanai Tray, pick a date range and click Fetch Tray Amount to total the collection for that period.
- The system suggests a split based on each employee's present days and permissions in that range — adjust any amount by hand if needed.
- The Save button only unlocks once the amounts add up exactly to the tray total, so a split can never be saved out of balance.
Company settings
One place to set the details that appear on every payslip.
- Go to Settings → Company Settings.
- Enter your Company Name and an Address / Tagline line — this is what employees see at the top of their payslip.
- Click Save Settings. The change applies to every payslip generated from that point on, including ones already issued if reopened.
Questions & troubleshooting
- An employee's CPF shows $0 on their payslip — is that a bug?
- Usually not. CPF only applies to Singapore Citizens and PRs. Check the PR/Citizen box on their employee record — if it's unticked, $0 CPF is correct, even with CPF Eligible ticked. SDL still applies to everyone regardless.
- An employee forgot their password — what do I do?
- There's no self-serve "forgot password" link. Open their record under Employees → Edit and use the Reset Password field to set a new one for them.
- Why can't I delete a shift, leave type, or worksite?
- The system stops you if it's still in use — for example a shift currently assigned to an employee, or a leave type with existing requests against it. Reassign or clear those first, then delete.
- Someone is clocking in but getting rejected for being "outside the worksite radius" when they're clearly at the office.
- Check the worksite's saved coordinates and radius under Settings → Worksites — a small radius (e.g. under 100m) can be too tight for GPS accuracy indoors. 200–300m is a safer default.
- A leave request is approved by the Manager but still shows as pending overall — is that normal?
- Yes. Leave needs both a Manager approval and an HR approval before it's fully Approved. It'll sit in HR's queue until someone at that level actions it.
- Can a Manager see every employee's leave requests?
- A Manager's Manage Team Leaves queue is meant for their own team's first-stage approvals; final sign-off and full visibility across the company sits with Admin/HR.