Payroll

Payroll, right from formula to bank

Design pay formulas on a drag-drop canvas, run payroll for a whole period, approve it, distribute payslips and export bank transfers — the preview matches the real run exactly.

Rifena UI · Sample dataComplete product screen

Operations payroll · DynamixJSCActive

2026.08 · Whole company · 6 components

Earnings 4 components

Contract base salaryBS01FIXED
Calc typeFIXEDFixed value
FormulaBS01 = contract.salary × (actual_days / standard_days)
AttributesPIT: YesInsurance: Yes
Responsibility / on-call allowanceALW01FIXED
Drop at position 3KPI bonusKPI01PERCENT
Service charge shareSC01FIXED

Deductions 1 component

Mandatory insurance deductionINS01PERCENT

Tax 1 component

Personal income taxPIT01LOOKUP
Add from the library on the left
KPI bonus was added at position 3.

Highlights

One closed-loop payroll engine, from formula to payment

Drag-drop formula canvas

Arrange earning, deduction, tax and contribution components on a canvas; pick a calc type — FIXED, RATE, PERCENT or LOOKUP — per component.

mathjs formula engine

Write expressions like contract.salary × actual_days / standard_days; the mathjs engine computes them precisely and transparently per component.

Preview matches the real run

The preview uses the same engine as the real payroll run, so the number on screen is the number employees actually receive.

Draft → published → archived versions

Every pay template has a clear version lifecycle, so you can edit a draft safely and publish without disrupting a live run.

Bank export with reconciliation

Validate the data, generate files in each bank's format (e.g. Vietcombank) and reconcile before sending the transfer batch.

Anomaly flags

The system flags unusual cases such as a negative net salary, so you can review them before approving and paying.

Visual

A payroll run from timesheet to approval and payout

Rifena UI · Sample data

June 2026 payroll

Approved

Period 01/06 – 30/06/2026 · 48 employees · approved by Nguyễn Hoàng Anh at 09:12

Gross pay

612.450.000đ

Total deductions

−71.320.000đ

Social · health insurance · PIT

Net paid

541.130.000đ

+3.2% vs period 05/2026

Employee

48

1 anomaly to review

Payroll table

Payslips by employee · sorted by net pay

1–5 / 48
EmployeeEarningsDeductionsNet payStatus

Nguyễn Văn An

DXJ-0001 · Front desk

14.500.000đ−1.812.500đ12.687.500đApproved

Trần Thị Bích

DXJ-0014 · Housekeeping

9.800.000đ−1.330.000đ8.470.000đApproved

Lê Hoàng Nam

DXJ-0007 · Restaurant

11.200.000đ−1.484.000đ9.716.000đApproved

Phạm Minh Tuấn

DXJ-0002 · Kitchen

22.000.000đ−3.190.000đ18.810.000đApproved

Võ Thu Hằng

DXJ-0003 · Accounting

16.400.000đ−2.296.000đ14.104.000đDraft

In detail

Capabilities

Execution conditions per component

Set an applicability condition on each pay component, so it only computes when an employee meets the criteria you define.

Per-employee override with approval

Override a value for a specific employee through an approval workflow, while keeping the shared pay template intact.

Period-based run workflow

Create a run, auto-calculate via the template, submit for approval, generate payslips, create a payment batch, then export to bank.

Transparent run statuses

Track a run through draft, pending, approved, payment created and paid — you always know exactly where it stands.

Frozen payslips with integrity hash

Payslip data is frozen and stamped with an integrity hash, with PDF export and email distribution to each employee.

Automatic personal income tax

Compute personal income tax on progressive brackets, applying self and dependent exemptions automatically per employee.

Ready for your business, today.