| Responsible | System |
|---|---|
| Last Update | 07/21/2026 |
| Completion Time | 1 day 21 hours |
| Members | 1 |
Payroll Overview
View allThe Payroll Module
The Payroll module manages employee salary processing. It integrates with HR (contracts, time off, attendance) and Accounting (journal entries for salary expenses).
Core Concepts
| Concept | Model | Description |
|---|---|---|
| Salary Rule | hr.salary.rule | Defines a line on the payslip (Basic, HRA, Tax, Insurance). Has category and computation. |
| Salary Rule Category | hr.salary.rule.category | Groups rules into Allowances, Deductions, Employer Contributions, Statutory. |
| Payslip | hr.payslip | Monthly payroll document for one employee. |
| Payslip Batch | hr.payslip.run | Group of payslips for a payroll period. |
| Contract | hr.contract | Employee contract with wage, schedule, and applicable salary rules. |
| Contribution Register | hr.contract.salary.rule | Employer contributions linked to a salary rule. |
Menu Structure
- Payslips – Employee payslips, batch processing.
- Configuration – Salary rules, categories, contracts, contribution registers.
- Reporting – Payroll analysis.
Payroll Reporting
Payroll Analysis
Go to Payroll > Reporting > Payroll Analysis. Pivot with:
- Dimensions: Employee, Department, Contract, Salary Rule Category, Payslip Period.
- Measures: Gross Amount, Net Amount, Total Deductions, Employer Contributions.
- Filters: Date Range, Department, Employee.
Key Insights
- Total payroll cost per department.
- Monthly salary trends.
- Employer contribution breakdown by type.
- Tax deductions summary.
Payroll-to-Accounting Reconciliation
Each confirmed payslip batch posts a journal entry (or one entry per payslip, depending on configuration) debiting salary expense accounts and crediting the amounts owed to employees/tax authorities/benefit providers. After every run, reconcile the batch's total Net + Deductions + Employer Contributions against the posted journal entry total in Accounting — a mismatch usually means a salary rule's account mapping is wrong.
Statutory & Compliance Reports
Beyond the pivot analysis, export payslip data (gross, deductions, employer contributions by employee) in the format your tax/social-security authority requires — most jurisdictions need a periodic filing built from exactly this data, so keep salary rule codes consistent so the export mapping doesn't need to be redone each period.
Best Practices
- Run a test payroll for one employee before batch processing.
- Reconcile total payslip amounts with accounting entries every period, not just at year-end.
- Keep salary rule sequences logical – compute basic before allowances, allowances before statutory deductions.
- Back up salary rules before making changes, and test changes on a duplicated employee/contract first.
- Lock (mark Done) a payslip only after payment has actually been disbursed, not before.
Salary Rules
Go to Payroll > Configuration > Salary Rules.
Creating a Salary Rule
- Click Create.
- Category – Allowance, Deduction, Employer Contribution, Statutory.
- Sequence – Evaluation order (lower = first).
- Code – Unique identifier (e.g. BASIC, HRA, PF, TAX).
- Name – Display name.
- Condition Based On – Always True, Range (min/max salary), Python Expression.
- Computation:
- Fixed Amount.
- Percentage of another rule (e.g. HRA = 50% of BASIC).
- Python Expression (max flexibility).
Salary Rule Categories
Go to Payroll > Configuration > Salary Rule Categories. Define GROSS, NET, and other grouping categories. The NET category is special – it represents the final payable amount.
Salary Structure
A salary structure is a collection of rules applied to a contract. Create rules and link them to contracts via the Salary Rules tab on the contract form. Set:
- Base wage (fixed).
- Applicable rules for this contract.
- Employer contribution registers.
Overtime & Public Holidays
Overtime hours (from Attendance) can feed a dedicated salary rule that computes extra pay at a configured multiplier (e.g. 1.5× normal rate). Public holidays are maintained as a calendar (Employees > Configuration > Public Holidays) so a payslip period automatically excludes them from "days worked" instead of an accountant manually adjusting each one.