The HR platform we built for companies that have outgrown spreadsheets — payroll, attendance, shifts, leave and access control in one system, with an audit trail behind every change.
Above the 2× weekday rate for 12 of the 38. Needs a plant-manager sign-off before the run can be locked.
What Zetta HRM is
Zetta HRM runs the parts of a business that cannot go wrong quietly. Payroll has to be right to the last decimal, leave balances have to survive an audit, and the person who approved a change has to still be recorded a year later.
It started life as a WordPress plugin. It is now a platform in its own right — a NestJS API and a Next.js application on PostgreSQL, with Redis and background queues underneath — and it no longer depends on WordPress, PHP or MySQL.
The moment a period closes
Once a period is locked the figures stop being editable. A correction after that point is a new adjustment against a named period, not a quiet edit to the one an employee has already been paid against.
That is what makes the payslip in someone's hand still reconcile a year later, and it is why the rule version is stored with the result rather than looked up when somebody asks.
Payroll run · August 2026
Data source: sample
Basic salaries
04,820,000
House rent allowance
01,928,000
Medical allowance
0241,000
Overtime
0186,400
Provident fund
0−482,000
Tax deducted at source
0−394,600
Loan instalments
0−128,000
Net payable
06,170,800BDT
Period locked01 Sep 2026, 09:14
What it does
Payroll
Salary structures, overtime policy, deductions, loans and period locking. The engine is covered by a golden-master test suite so a change to one rule cannot quietly move another figure.
Attendance & shifts
Shift definitions, shift assignment, flexible timing and daily attendance, with a holiday calendar behind it.
Leave management
Configurable leave types, balances, requests and approval queues.
Employee records
Company profile, departments, designations, employee lists and invitation flows.
Role-based access control
A dedicated RBAC module rather than a role column — permissions are enforced at the API, not just hidden in the UI.
Audit logging
A written record of who changed what and when, which is the part auditors ask for first.
Real-time dashboard
Live headcount, attendance and approval queues over a websocket layer, not a page refresh.
Import centre
Bulk onboarding from existing spreadsheets, so migrating off your current system is not a retyping exercise.
Billing & subscriptions
Stripe-backed subscription handling with plan and seat management built in.
Notices & support
Company-wide announcements and an in-product support channel.
Built on
Boring, proven and hireable — so that if you ever bring engineering in-house, you are recruiting for skills people actually have.
NestJS
API
Next.js
Web
PostgreSQL
Database
Prisma
Schema & migrations
Redis + BullMQ
Queues & caching
Stripe
Billing
Turborepo
Monorepo
Frequently Asked Questions
Is Zetta HRM a WordPress plugin?
Not any more. The original Zetta HRM shipped as a WordPress plugin. It has been rebuilt from scratch as a standalone platform — a NestJS API and a Next.js application on PostgreSQL — so it no longer depends on WordPress, PHP or MySQL.
Can it handle multiple companies?
Yes. The platform is multi-tenant: each company gets its own profile, departments, designations, holiday calendar and user roles.
How is payroll kept correct?
The payroll engine runs against a golden-master test suite — a set of known-good payslips that must reproduce exactly. Any change that would shift a figure fails the build rather than reaching a payslip.
Can we migrate our existing employee data?
Yes. The import centre handles bulk onboarding from spreadsheets so you are not re-entering records by hand.
Who can see what?
Access is governed by a role-based permission system enforced at the API layer, with an audit log recording who changed what and when.
Can we self-host it?
The platform ships with Docker configuration and runs on your own infrastructure or ours. Get in touch and we will walk through which fits your situation.
Want to see it on your own data?
We will set up a trial company, import a sample of your employee records, and walk your team through a payroll run.