Payslips and payslip templates
Payslips are created by a payroll run and never edited afterwards. What you can do with them is read them, hand them out, and change the design of the PDF that gets handed out.
Where payslips live
There is no standalone "all payslips" page in the sidebar. Payslips are reached in two places:
| Surface | Address | Who sees it |
|---|---|---|
| The payslip register on a run's detail page | /payroll-runs/{id} | payroll.payslip.view, payroll.manage or payroll.approve |
| My Payslips | /my-payslips | employee.payslip.view — your own payslips only |
The register is scoped to one run. To find a specific employee's payslip you go through the run that produced it, filtering the register by employee name or number.
/my-payslips is the employee-facing view and it is scoped to the signed-in
employee. Holding payroll permissions does not widen it — you see your own
payslips there, exactly as any other employee does. It is documented in
Employee Self-Service; read it if you support employees
who ask questions about their payslips.
Read the register
Open a run and scroll to the grid below the summary. Columns are Payslip #, Employee #, Employee Name, Position, Gross Income, Total Benefits, Total Deductions and Net Pay, all in PHP.
The toolbar above it works like every other grid in the application:
- Search — a single box that searches one field at a time. It defaults to Employee Name; the View menu's Search In group switches it to Payslip #, Employee Name or Position.
- View — saved views, which columns are shown, the search field, and row density (Compact or Comfortable).
- Table — Export CSV, Export PDF, Refresh and Reset View. Export covers the rows the current filters select, not just the visible page.
- Column headers carry their own filters: text filters on the name and position columns, numeric range filters on the money columns.
Sorting is available on Payslip #, Employee Name, Position and the four money columns. Employee # is not sortable — it is a joined field rather than a column of the payslip itself.
Open a single payslip
Use the row menu's View, or double-click the row. A dialog opens showing the payslip rendered as a PDF, exactly as the employee will receive it — the preview is generated in your browser from the payslip data plus the active template, so what you see is the artefact, not an approximation of it.
Three controls sit at the bottom: Close, Print, and Download PDF
(filename Payslip-{payslipNumber}.pdf). Below the preview, a History
section lists any recorded changes to the payslip's fields with the old value,
the new value, who made the change and when. Most payslips have no history and
the section does not appear.
Hand out a whole run
From the run detail page, once the run has payslips:
- Download All Payslips (ZIP) produces one PDF per employee in a single
archive, named
Payroll-Run-{id}-Payslips.zip. Each file inside isPayslip-{payslipNumber}-{EmployeeName}.pdf. Rendering happens in the browser, so a large run takes a while and the button stays disabled until it finishes. - Download Payroll Summary produces
Payroll-Run-{id}-Summary.pdf, a summary of the run rather than per-employee payslips.
Employees can also collect their own: /my-payslips has a Download All as
ZIP button that covers the payslips matching whatever year and net-pay range
they have selected.
What appears on the payslip
Four switches in Payroll Settings (/payroll-settings), under the Payslip
Display section, control what is printed. They take effect on payslips rendered
from that point on — the PDF is generated at view time, so flipping a switch
changes existing payslips' PDFs too, not just future ones.
| Switch | What it adds |
|---|---|
| Show employer statutory contributions | An informational section listing the employer's SSS, PhilHealth and Pag-IBIG shares |
| Show year-to-date figures | YTD gross, deductions and net pay at the bottom |
| Show taxable income and tax breakdown | The taxable income line and withholding tax detail |
| Show leave / absence line | Leave days and absence counts for the period |
The same section holds Company Logo. Upload a PNG, JPEG, SVG or WebP under 300 KB; the payslip shows the company name alone when no logo is set. A Remove button clears it.
Currency formatting comes from Currency Code in the Rounding & Currency
section — an ISO 4217 code, PHP for Philippine payroll.
Company identity on government forms comes from a different place: the Employer Profile, covered in Government forms and statutory compliance.
Change the payslip design
Requires payroll.settings.manage, since the editor is reached from Payroll
Settings.
- Open Payroll → Payroll Settings.
- Scroll to Payslip Display (the sticky On this page list on the left jumps straight there).
- Select Customize Payslip Template →. A near-fullscreen dialog opens.
What you land on depends on whether a customisation has already been saved. With none, you get the picker; with one, you go straight to the editor and can return to the picker with Browse Templates.
The picker
Two galleries, each card showing a live preview rendered from sample data.
Ready-made designs ships four:
| Design | Look |
|---|---|
| Classic Navy | Solid navy letterhead, boxed two-column layout — the original MotorPH look |
| Modern Minimal | A thin teal accent rule instead of a solid header block, generous whitespace |
| Bold Corporate | Charcoal letterhead with a gold accent stripe and a rounded, high-contrast net pay card |
| Showcase Card | Navy letterhead band, four-column ID strip, tinted net-pay band with a year-to-date strip |
Saved templates is your own library, empty until you put something in it. Each saved card carries four actions: Use makes it the active template immediately, Edit opens it in the editor, and the two icon buttons rename and delete it.
If a customisation is already saved, a Continue with my saved template button sits above both galleries.
Selecting any card opens it in the editor.
The editor
A drag-and-drop canvas over the payslip layout. Fields can be moved, resized and restyled; the earnings and deduction rows are generated per payslip and merged in at render time rather than being fixed elements of the layout.
The header carries four controls:
| Control | Effect |
|---|---|
| Browse Templates | Back to the picker |
| Reset | Discards edits, restoring the design you started from |
| Save to Library… | Names the current design and stores it in your library — or updates the library entry you opened |
| Save | Makes the current design the active template |
The distinction between the two save buttons is the one to get right. Save writes the active template, which is what every generated payslip renders with — preview dialogs, single downloads and bulk ZIPs alike. Save to Library… only files a named copy. Switching designs no longer destroys the previous one, provided you saved it to the library first.
Certificate templates
The Recognition & Awards section of Payroll Settings has its own Manage Certificate Templates → button, opening a separate manager for award certificate designs. It is unrelated to payslip templates.
Reference
- How each figure on the payslip is computed: Business Rules.
- The API behind the register and the self-service views: Payroll API.