Running payroll in Pakistan is not difficult because the arithmetic is hard. It is difficult because several deductions each have their own base, their own ceiling, their own province and their own filing rhythm, and most payroll spreadsheets encode last year’s version of all of them.

The rates change, typically from July. Anything written here about specific figures would be out of date before you read it, so this is about structure rather than numbers — check current rates against the relevant institution before running anything.

The deductions and what makes each awkward

Four obligations account for most of the complexity.

EOBI
Old-age benefits, contributed by both employer and employee, calculated on a wage base with a ceiling that is revised periodically. The awkwardness is the ceiling: a system that applies the percentage without capping it over-deducts, quietly, for everyone above the threshold.
Provincial social security
SESSI in Sindh, PESSI in Punjab, with equivalents elsewhere. Which applies depends on where the employee works, not where the company is registered — so a business with sites in two provinces has two schemes running in one payroll.
Income tax
Slab-based and revised annually in the finance act, with the slabs applied to projected annual income rather than the month in isolation. Mid-year joiners, bonuses and arrears all need handling, and are where most spreadsheet payrolls go wrong.
Provident fund and gratuity
Where operated, each with its own base and its own treatment at separation. Gratuity in particular surfaces only at final settlement, which is when errors are least convenient to discover.

The multi-province problem

This is the requirement most packaged payroll handles badly, and it is common in Pakistan: a head office in Karachi, a plant in Punjab, employees under different provincial social security schemes in the same monthly run.

A system that applies one scheme per company cannot do this. What you need is the scheme determined by the employee’s place of work, with the contribution, the filing and the register produced per province.

Worth checking explicitly during evaluation, with a real two-province scenario. It is not a feature anyone demos unprompted.

Attendance is the input nobody validates

Payroll accuracy is usually limited by attendance quality rather than by payroll logic. If the hours arriving from the device are wrong, a correct calculation produces a wrong payslip.

The place this breaks is exceptions: missed punches, shift swaps, overtime that was verbally approved, and the employee who worked a public holiday. Each needs a decision from someone who knows, recorded before the run rather than corrected afterwards.

An export to Excel between attendance and payroll is where most of this goes wrong, because the corrections happen in the spreadsheet and never return to the source. Then next month the same employee has the same problem.

What posting to the ledger should look like

Payroll produces a journal: gross by cost centre, each deduction to its own liability account, and the net to payables. If someone is keying that in monthly, it will eventually be keyed in wrongly, and payroll and finance will disagree about a month nobody can reconstruct.

The deduction liabilities matter particularly, because they are what you pay over to each institution. If those accounts do not reconcile to what was actually remitted, you have an exposure that compounds quietly.

Common questions

Which social security scheme applies to our employees?

It follows the employee’s place of work rather than the company’s registration — SESSI in Sindh, PESSI in Punjab, with equivalents elsewhere. A business operating in two provinces runs both in the same payroll.

Why does the EOBI ceiling matter?

Because contributions are calculated on a capped wage base. A system that applies the percentage without the cap over-deducts for every employee above the threshold, and the error is rarely noticed because the payslip still looks plausible.

Should payroll post to the general ledger automatically?

Yes. Manual journal entry introduces errors monthly and makes the deduction liability accounts unreliable — which is a problem, because those are what you remit to each institution.