Skip to main content
itzseo
All docs

Payroll & payslips — overview

How payroll works in ItzSEO — salary structures, drafts, finalize, amendments, audit trail.

HRMS & AttendanceUpdated Try it now

ItzSEO's payroll sits on top of the HRMS attendance + leave + overtime data you already have. Every month, the system drafts a payslip for each employee, HR reviews and finalizes it, and the employee sees the final payslip plus a PDF copy at /me/payroll.

The core idea

Each employee has a SalaryStructure — their basic salary, gross monthly target, OT rate, and a list of earning + deduction components (HRA, PF, ESI, TDS, etc). When the month ends, the calculation engine pulls every attendance event, leave request, OT entry, and holiday into a draft Payslip using those rules. HR reviews and finalizes; the employee gets the email and the PDF.

Lifecycle

  • DRAFT — auto-created on the 1st of the month for everyone with an active SalaryStructure. Visible to HR only. Recalculates whenever source data (attendance, leave, OT) changes.
  • FINALIZED — HR clicks Finalize. Source changes no longer auto-rewrite the row. Employee sees the payslip on /me/payroll + gets the release email. PDF available for download.
  • AMENDED — HR explicitly amends a finalized payslip with a reason. Numbers update, employee sees the change + reason on the payslip page and the email. Every field that changed is captured in the modification history.

What HR sees vs what employees see

  • HR (/hr/payroll): every employee in the workspace, current + past months, with bulk Finalize + per-row Recalculate / Finalize / Amend / Override actions. Includes a CSV export and a "Create manual payslip" dialog for edge cases.
  • Employees (/me/payroll): only FINALIZED and AMENDED payslips. Drafts are HR-internal. Each row has a PDF download. Amended payslips show a banner with HR's reason.

Who has access

Only the workspace Owner and members of an HR-flagged department can see payroll. Department managers do NOT see their team's payslips — payroll is intentionally stricter than attendance privacy. The same gate covers salary structures.

What runs on cron

  • Monthly draft — designed to fire on the 1st of each month at 00:30 IST. Creates a DRAFT payslip for every employee with an active structure.
  • Recalc safety net — designed to fire every 4 hours. Re-runs the engine on any DRAFT whose last recalc is older than 4 hours, in case the in-line recalc hook missed something.

Both are bearer-authed endpoints. Each workspace owner needs to wire them at cron-job.org (or a similar scheduler) using the workspace’s CRON_SECRET. Until they are wired, HR can still hit Create manual payslip or per-row Recalculate to drive the workflow manually. There is no auto-finalize cron — finalize is always a deliberate HR action.

© 2026 ItzSEO. All docs
All systems normal