| 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.
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.
Payslip Generation
Creating a Payslip Batch
- Go to Payroll > Payslips > Payslip Batches → Create.
- Name – e.g. "Monthly Payroll – January 2026".
- Date From / To – Payroll period.
- Click Generate Payslips – Quickenerp creates payslips for all active contracts.
- Review each payslip. Edit lines if needed.
- Click Compute Sheet on each payslip to calculate values.
- Once verified, Confirm the batch.
Payslip Fields
| Field | Model Field | Description |
|---|---|---|
| Employee | employee_id | Linked employee record. |
| Contract | contract_id | Contract used for this period. |
| Date From/To | date_from/date_to | Pay period. |
| Line IDs | line_ids | Computed salary rule lines (each with code, amount, category). |
| Paid | paid | Mark as paid after disbursement. |
| Credit Note | credit_note | Refund/reversal payslip for corrections. |
Payslip Statuses
- Draft – Created but not computed.
- Confirmed – Computed and verified.
- Done – Paid and locked.
- Cancelled – Voided.
Employee Payslip Access
Employees can view their own payslips via the Portal. Enable in Settings: "Employee Payslip Access". Each employee sees their payslip history and can download PDFs.
Correcting a Confirmed Payslip
Never edit a paid/locked payslip directly. Instead, generate a Credit Note payslip that reverses the incorrect amounts, then issue a corrected payslip for the difference — this keeps a clean audit trail and matches what the Accounting journal entries already recorded.