
Growing SME
Twenty to two hundred staff, where HR is one person and a spreadsheet that has become load-bearing. Employee records, leave, attendance and payroll in one place, with the Cambodian rules already applied.

HR and payroll for Cambodian companies — from the clock at the door to the payslip
Running on the pre-production environment — not yet in production.
An HR and payroll system for companies in Cambodia and ASEAN. Payroll is worked out from the hours and leave already recorded rather than retyped from a spreadsheet, the Cambodian rules are built in rather than approximated, and the clock at your door can be a biometric terminal you already own.
Most small companies run HR on a shared spreadsheet until the day someone deletes a row. What replaces it here covers the whole employee lifecycle — hiring, records, contracts, leave, attendance, payroll, performance, training, discipline and assets — so the month-end payroll run reads the attendance that was already recorded rather than a sheet somebody retyped.
Two things are worth explaining properly. The first is that the Cambodian part is real. Tax on Salary is progressive here, there is relief for dependants, non-residents are treated differently, and NSSF sits alongside it — all of which is implemented in the payroll engine rather than left as an exercise for whoever maintains the spreadsheet. The rates are configuration, so the system can follow the rules when they change instead of waiting for us.
The second is the clock at your door. Most companies in Cambodia already own a fingerprint terminal, and most HR software pretends they do not. A small connector runs on site, speaks ZKTeco or Hikvision or Suprema, and forwards each clock event to HR in one shape — so attendance arrives on its own, and payroll is reading something nobody typed. The biometrics stay put: the terminal does the matching, and what travels is a person and a time, never a fingerprint.
On your data, plainly. One company must never see another’s records. That check does not depend on every query remembering to ask — it sits underneath them, and a query that arrives without a company attached is refused outright rather than quietly answered. The failure is loud, which is the one you want. The scheduled work is held to the same rule: the nightly jobs run once per company rather than sweeping across all of them.
Built and running on our pre-production environment, not yet in production and not yet serving a real company — a distinction we would rather draw ourselves than have you discover.

The reason payroll takes a week is that the numbers are gathered again from scratch every month — attendance off one sheet, leave off another, overtime from a supervisor's memory. Here that month already happened in the system. The run reads what was recorded, applies your salary components and the Cambodian tax rules, and produces payslips you can check before anything is final.

Most companies here already have a fingerprint terminal on the wall, and most HR software ignores it. A small connector runs on-site, speaks to the terminal in its own language, and forwards each clock event to HR. Attendance stops being something anyone types up. And the biometric data stays where it belongs — the terminal does the matching and only ever sends an identified person and a time.

A person is entered once, when they are still a candidate. After that the same record carries their contract, their department and cost centre, their leave and attendance, their reviews and training, anything disciplinary, and every payslip they were ever paid — so nobody rebuilds a history from folders when a question is asked two years later.
What it replaces
Why it's built this way
Progressive Tax on Salary brackets, NSSF and other statutory contributions, relief for dependants, and the flat rate for non-residents on Cambodian-sourced salary. These are implemented, not left for you to model in a spreadsheet — and the brackets are configuration, so when the rules move the system moves with them rather than needing a new version.
An on-site connector reads your existing biometric terminals and forwards clock events over one webhook, so the server never needs to know which brand you bought. ZKTeco, Hikvision and Suprema each have an adapter, and anything else can post plain HTTP. Fingerprint matching happens on the terminal; only an identified person and a timestamp are ever sent on.
Payroll disagreements are almost always disagreements about hours. When the attendance, the approved leave, the overtime and the loan repayments are all already in the system, the payroll run is a calculation rather than a reconstruction — and when someone queries a payslip you can show them what it was built from.
No company can see another's records. Every request is scoped to your company before it reaches the database, across ninety-three kinds of record, and a query that arrives without a company attached is refused outright rather than quietly answered. Scheduled work is held to the same rule — the nightly jobs run once per company rather than sweeping across all of them.
The things that actually cause month-end arguments are rarely in the HR file: the staff loan being repaid over six months, the expense claim from a site visit, which cost centre a salary belongs to. Those live here too, and they reach payroll and the journal without a second spreadsheet in between.
Groups that run several companies get them in one system without their records mixing, and cost centres let a salary be attributed to the part of the business that actually incurred it — which is usually the number the owner wanted and nobody could produce.
Who it is for

Twenty to two hundred staff, where HR is one person and a spreadsheet that has become load-bearing. Employee records, leave, attendance and payroll in one place, with the Cambodian rules already applied.

Factories, hospitality and retail, where the day starts at a terminal on the wall and overtime is a real number rather than an exception. Rosters, shift assignment, overtime rules and biometric clock-in.

Several companies under one owner, each with its own staff, payroll and statutory position — kept separate where they must be, and reportable together where that is the point.

Firms billing time, where the cost of a person and the centre they belong to matter as much as their payslip. Cost centres, contracts, performance reviews and training records.
What's inside
One record per person, with departments, positions, grades, bank details, emergency contacts, education and work history — and the before-and-after of every change kept.
Job postings and applicants through to a structured joining process, so a candidate becomes an employee without being typed in a second time.
Employment contracts with the dates that matter, watched by a job that tells you before one expires rather than after.
Clock events from ZKTeco, Hikvision, Suprema or plain HTTP, mapped to the right employee once and then left alone — plus the policies that decide what counts as late.
Who works when, what happens when they work more, and how that reaches the payslip without a supervisor's note.
Leave types, accrual, balances and requests — with approval workflows that can be more than one person deep, because most real ones are.
Salary components, a payroll run you can review before committing, and a payslip PDF per employee for the period.
Tax on Salary brackets, dependant relief, the non-resident rate, NSSF and other statutory contributions — applied on every run, and adjustable as the rules change.
Staff loans repaid over time, expense claims and their payments, and benefit plans — all reaching payroll rather than sitting beside it.
Review cycles and training programmes with enrolment, kept against the employee record instead of in a folder somebody owns.
Cases from both directions — raised by an employee, or opened by the company — recorded properly because these are the ones that end up being read back.
Which laptop, phone or vehicle a person has, and since when, so the question at the exit interview has an answer.
Company announcements and an HR policy library, so "where is that policy" stops being a message to HR.
Payroll journal entries and account mapping, so the month's cost reaches your accounts as figures rather than a PDF someone rekeys.
Granular permissions per role, two-factor login, and invitations by email — each person seeing only the screens their job needs.
A record of what changed and who changed it, across the system.
Import the employee list you already keep, so the first day is not a week of typing.
Headcount, cost and leave reporting you can pull yourself, without asking three people to assemble one number.
Questions
Yes, and specifically rather than generically. Progressive Tax on Salary brackets, relief for dependants, the flat rate applied to non-residents on Cambodian-sourced salary, and NSSF alongside other statutory contributions are implemented in the payroll engine. The brackets and rates are configuration, so they are set to match how your company is registered and can be adjusted when the rules change. What the system does not do is file anything for you — it calculates and records; lodging remains yours. Talk to us about your setup before you commit to anything.
Probably. A small connector runs on your network and speaks to the terminal, then forwards each clock event to HR over one webhook. ZKTeco, Hikvision and Suprema have adapters; anything that can make an HTTP request can use the generic one, and you can mix brands across sites. The important part is what is not sent: matching happens on the terminal, so fingerprint templates never leave it — HR only ever receives a person and a time. Tell us the make and model and we will tell you honestly whether it is supported.
Not yet, and we would rather say so. The permissions for it exist — an employee role can already be granted their own payslips, leave, overtime and expense claims — but the screens a member of staff would use are not built, so today this is a system your HR and payroll people operate. Employee self-service is the next thing on this system's list. If it is decisive for you, say so, because that moves it up.
Yes. Every request is scoped to your company before it reaches the database, across ninety-three kinds of record, and a query that arrives with no company attached is refused outright rather than answered — the failure is loud rather than quiet. The scheduled work follows the same rule: the nightly jobs run once per company instead of sweeping across all of them. This is enforced in the application layer, which is the honest description of it.
There is a 30-day trial on the Starter plan, and pricing after that depends on how many employees you have. There is no free tier — when the trial ends the account is suspended until a plan is chosen, which we think is fairer than a crippled version. Cambodian companies pay by ABA PayWay, which also presents a Bakong KHQR; card payment through Stripe is available elsewhere. Tell us your headcount and you will get a straight number rather than a quote process.
It is pre-live — built, deployed and running on our pre-production environment, but not yet in production and not yet serving a real company. That is a deliberate distinction rather than a soft launch. Get in touch to see it running or to talk about being an early pilot — pilots still shape what ships.
How it is licensed
SuiteWright HR is multi-tenant software you subscribe to, not a one-off build. Every new workspace starts on a free 30-day trial of the Pro plan. There is no permanently free tier — when the trial ends you move to a paid plan or the workspace is suspended, with your data kept intact for a grace period so subscribing brings it back.
Not open for signup yet. SuiteWright HR is Pre-live — running on the pre-production environment, not in production for any customer, so there is no trial to start today. Ask for a demo and we will tell you when signup opens.
A demo runs through your actual workflow rather than a scripted tour — bring the awkward parts.