Payslips manual
The payslip automatically calculates the transition from gross to net in accordance with Tunisian regulations: CNSS (employee & employer shares), CSS and IRPP by brackets (brought to a monthly basis). Individual or bulk generation, then payment and transfer order.
Overview
The Payslips screen produces the monthly payslip for each employee. When a payslip is opened, Swifto calculates all the components (prorated gross, CNSS, taxable salary, CSS, IRPP, net); the possible entries (overtime, public holidays, bonuses, fines, advances) recalculate the net in real time. The list is grouped by month.
Business goal
- Calculate the compliant net payable
- Apply CNSS, CSS and IRPP automatically
- Bulk-generate for the entire workforce
- Pay and produce the transfer order
Target audience
- Payroll manager — generates & adjusts payslips
- Accounting — payment & transfers
- Declarations — basis for the social reports
Position in the module
The payslip relies on the employee record (marital status, children) and the contract (base pay, work schedule). It then feeds the social declarations.
Access and navigation
Left-hand side menu: Human resources → Payslips.
Payslip list
The list is grouped by month. Each row shows the employee, days worked, gross salary, net, net payable, status (Paid / Not paid) and the payment date.
| Employee⇅ | month | Days⇅ | Gross salary⇅ | Net salary⇅ | Net payable⇅ | Status | ||
|---|---|---|---|---|---|---|---|---|
| April 2026 | ||||||||
| Mohamed Ali GHARBI | April 2026 | 26 / 26 days | 2,400.000TND | 1,932.480TND | 1,932.480TND | Paid | ||
| Ines BEN SALAH | April 2026 | 26 / 26 days | 1,600.000TND | 1,345.600TND | 1,145.600TND | Not paid | ||
Table columns
| Column | Description |
|---|---|
| Employee | Employee concerned by the payslip. |
| Month | Month / year of the payroll (list grouping). |
| Days | Days worked / business days of the month. |
| Gross salary | Prorated base + overtime + bonuses. |
| Net salary | Gross − employee CNSS − CSS − IRPP. |
| Net payable | Net − advances − fines + exceptional bonuses. |
| Status | Paid or Not paid (+ payment date). |
Action bar
New
Generates a payslip for a given employee (month / year).
Bulk generation
Produces in one go the payslips for the entire workforce for a month.
Payment
Marks the selected payslips as paid (date, currency, account).
Transfer order
Exports a multiple transfer order (Excel) for the bank.
Payslip detail — gross → net engine
When a payslip is opened, Swifto automatically calculates all the components. The possible entries (overtime, unworked public holidays, bonuses, fines, advances) recalculate the net in real time.
| Designation | Rates | Base | Employee share | Employer's share |
|---|---|---|---|---|
| Gross salary | — | 2,400.000 | 2,400.000 | |
| CNSS | 9,18 % / 16,57 % | 2,400.000 | 220.320 | 397.680 |
| Taxable salary | — | 2,179.680 | ||
| CSS | 0,5 % | 2,179.680 | 10.898 | |
| IRPP | scale | 2,168.782 | 236.302 |
The Bonuses, Fines / Suspensions and Advances fields only appear for entry if there is an amount concerning them for the month (see Bonuses, allowances & advances).
CNSS, CSS & IRPP — the sequence
Social security contribution: employee share withheld + employer share (employer charge), calculated on the gross.
Social Solidarity Contribution: configurable rate applied to the taxable base, then ÷ 12.
Income tax by brackets on the annual taxable base, brought to the month (÷ 12).
Calculation sequence
1. Gross = prorated base (days/hours) + overtime + bonuses − unpaid days
2. Employee CNSS + employer CNSS (on the gross)
3. Taxable salary = Gross − employee CNSS (− professional expenses)
4. CSS = rate × taxable, then ÷ 12
5. IRPP = bracket scale (annual) ÷ 12
6. Net = Gross − employee CNSS − CSS − IRPP
The IRPP bracket scale
IRPP is calculated on the annual taxable salary by applying the progressive scale (brackets from the tax table), then divided by 12 for the monthly deduction. The deductions (head of household, children) are deducted before the scale is applied.
The amounts in the screenshots are illustrative examples. The applied CNSS, CSS rates and IRPP scale depend on the tax table in force (configurable per year).
Dependent children — special cases (IRPP)
Before applying the IRPP scale, Swifto subtracts the deductions for dependent children. Two situations qualify for an increased deduction: the disabled child and the child pursuing higher education without receiving a scholarship. The number of children concerned is entered on the employee record.
Substitution, not accumulation
The increased deduction for a disabled child or a child in higher education replaces that child's ordinary deduction — it is not added to it. This is a substitution rule, in accordance with article 40 of the Tunisian IRPP Code.
Worked example — 3 dependent children
An employee has 3 dependent children, including 1 in higher education. Assume an ordinary deduction of 100.000 TND per child per year, and an increased higher-education deduction of 1,000.000 TND per year (illustrative values — see the year's tax table).
• Child 1 (ordinary) ......... 100.000
• Child 2 (ordinary) ......... 100.000
• Child 3 (higher ed.) ...... 1,000.000 ← replaces the ordinary 100.000
Total children deduction = 1,200.000 TND / year
Compare with 3 × 100.000 = 300.000 TND if the 3 children were ordinary. The increase applies only to the child concerned; the other two keep their rank deduction. This total is subtracted from the annual taxable salary before the scale is applied, which reduces the IRPP due.
The same rule applies to a disabled child: their increased deduction replaces their ordinary deduction. Enter the number of disabled children and children in higher education on the employee record; Swifto applies the substitution automatically when calculating the payslip.
The gross↔net simulation available from the employee record uses exactly the same engine as the actual generation.
Generation & payment
Payroll is generated employee by employee or for the entire workforce (bulk generation), then paid and turned into a bank transfer order.
Bulk generation
Entire workforceChoose the month/year: Swifto produces all the payslips at once. Then adjust case by case if needed.
Payment
Mark as paidSelect payslips then fill in the date, currency and payment account. The status changes to Paid.
Transfer order
Excel exportProduces an Excel file of the multiple transfer order to send to the bank.
PDF payslip
DocumentGenerates the payslip in PDF (per-row action) to give to the employee.
Payslip statuses
| Status | Meaning |
|---|---|
| Not paid | Payslip generated, net payable awaiting settlement. |
| Paid | Payslip settled: payment date, currency and account filled in. |
Only generated and validated payslips feed the social declarations for the period.
Lifecycle (workflow)
flowchart LR A([Employee + Contract]):::s --> B[Payslip generation
Gross to Net]:::p B --> C([CNSS employee + employer]):::st B --> D([CSS]):::st B --> E([IRPP scale /12]):::st C --> F[Net payable]:::p D --> F E --> F F -->|payment| G([Paid + transfer]):::ok F --> H[Social declarations]:::p classDef p fill:#F5F3FF,stroke:#8B5CF6,color:#5B21B6; classDef s fill:#f3f1ff,stroke:#7366fe,color:#1f1c3d; classDef st fill:#FEF3C7,stroke:#F59E0B,color:#92400E; classDef ok fill:#D1FAE5,stroke:#10B981,color:#065F46;
Business rules
IRPP by brackets — the tax is calculated on the annual taxable salary by applying the progressive scale, then divided by 12 for the monthly deduction.
CNSS & CSS — CNSS separates an employee share (withheld) and an employer share (employer charge), both on the gross. CSS applies to the taxable base at a configurable rate, brought to the month.
Child deductions by substitution — a disabled child or a child in higher education has their "raised to" deduction replace (and not add to) their rank deduction. Details on the Employees page.
Simulation = generation — the gross↔net simulation (employee record) and the actual generation use the same engine: no discrepancy.
Tax table — CNSS/CSS rates and IRPP scale depend on the year's tax table. Incorrect configuration distorts all the calculations.
Roles & permissions
| Action | Manager | HR manager | Accountant | Admin |
|---|---|---|---|---|
| View payslips | — | ✅ | ✅ | ✅ |
| Generate (individual / bulk) | — | ✅ | ✅ | ✅ |
| Adjust a payslip | — | ✅ | ✅ | ✅ |
| Payment / transfer | — | — | ✅ | ✅ |
| PDF payslip | — | ✅ | ✅ | ✅ |
| Delete | — | — | — | ✅ |
Indicative matrix — the actual rights depend on the profiles defined in your company.
Usage scenarios
Monthly payroll for the entire workforce
Bulk generation for the month → case-by-case review → grouped Payment → Transfer order Excel sent to the bank.
Employee with an advance
An advance for the month is automatically deducted from the net payable of the corresponding payslip.
Overtime
Entering overtime on the payslip increases the gross and instantly recalculates the net.
FAQ & Tips
The calculated net does not match my expectations?
Check the year's tax table (CNSS/CSS rates, IRPP scale) and the dependent children (disabled / higher ed. by substitution).
A bonus / advance does not appear on the payslip?
Make sure it is entered for the same month/year as the payslip, and for the right employee. The field only shows if an amount exists.
How to generate payroll for the entire workforce?
Use bulk generation (icon ) from the list, then adjust case by case if needed.
Tip — check before paying
After a bulk generation, review the atypical payslips (overtime, fines, advances) before launching the payment and the transfer order.