← User guide

CZ Social Insurance Overview (PVPOJ)

The monthly přehled o výši pojistného for the ČSSZ — the employer's total social insurance premium for a month, summed from the payslips and exported as XML in the PVPOJ 2025 structure.

Version19.0.1.1.4
EditionCommunity and Enterprise
LicenceAGPL-3
Requiresl10n_cssk_payroll_declaration_base

What it is for

The přehled o výši pojistného (PVPOJ) is the employer's monthly report to the Czech social security administration (ČSSZ) of the social insurance premium it owes for a month: the total assessment base, the employer's and the employees' premium, and the sleva na pojistném claimed for part-time employees.

This module builds that overview for one month from the month's payslips and exports it as XML in the ČSSZ structure PVPOJ2025, checked against the official PVPOJ25.xsd. Payslips are read through l10n_cssk_payroll_declaration_base, so it works with either Czech payroll engine — see the Czech payroll guide.

Since 2026 the overview is filed only for older periods. Read the next section before you use it.

Setting it up

On the company:

Value Used as
ČSSZ variable symbol (VS), exactly 10 digits <vs>, the employer's variable symbol at the ČSSZ
OSSZ code, a number from 100 to 999 <kodOSSZ>, the competent social security office. Defaults to 100.
Company ID (IČO) or, failing that, the Tax ID <IC>
city and ZIP (street optional) the employer's address; the číslo popisné is the number at the end of the street, and the second street line counts only when it holds nothing but a number

The ČSSZ variable symbol (VS) and OSSZ code fields are on the Payroll Reporting tab of the company form (see the declaration base). They are shared with the ELDP and ONZ modules. Because the OSSZ code has a default, a forgotten code is not reported: check it.

For the discount annex, set the employee's Social insurance discount category in the payroll module and give the employee a working schedule with the shorter weekly hours, and a date of birth.

Preparing the overview

Payroll Declarations → CZ PVPOJ (social), then New. The Payroll Declarations menu is a top-level application.

  1. Choose the Year and Month. The period is always the whole calendar month.
  2. Click Generate. The module collects every confirmed payslip of the company whose period ends in the month (drafts and cancelled ones are not counted; see the declaration base), adds one row per employee, renders the XML, validates it against PVPOJ25.xsd and attaches it.
  3. Submit the XML through the ČSSZ e-portal and click Mark Submitted. The filed copy is kept. Reset to Draft reopens the overview for regeneration; a submitted overview cannot be deleted.

Generation stops if the VS is not 10 digits, the OSSZ code is not between 100 and 999, the company has no city or ZIP, or the month has no payslips. It also stops, pointing to the JMHZ, for April 2026 and later, and for January to March 2026 when the company still has an employee whose contract runs on 1 April 2026 — only an employer that had ceased to be one by then files those months. A month before 2025 is refused too: only the 2025 structure is shipped.

What the overview contains

Item Taken from
employer assessment base, band A (zakladZamestnavateleA) the sum of the employees' monthly assessment bases, each rounded up to whole koruny (§ 5d). An employee's base is taken from his Social Insurance (Employer) line (SOCIALER) — the gross capped at the annual maximum assessment base; an employee with no such line (a month he is not insured) adds nothing
employer premium, band A (pojistneZamestnavateleA) and in total 24.8 % of that total base, rounded up once, on the company total (§ 7 odst. 1 písm. a) a odst. 3)
employee premium (pojistneZamestnance) the sum of each employee's Social Insurance Total (Employee) (SOCIALEETOT), rounded up per employee
total premium (pojistneCelkem) employer + employee premium
discount block (slevaZamestnavatele) count and sum of the assessment bases of the employees who have a discount; the discount itself is 5 % of that sum, rounded up (§ 7b odst. 1)
amount to pay (pojistneUhrada) total premium less the discount
discount annex (slevaZamestnanci) per discounted employee: name, date of birth, assessment base (not the gross), the reason letter (a–g) from the discount category, and the weekly hours of the working schedule
type of overview always N (regular)
date filled in the day you click Generate

When no payslip of the month carries a discount, the discount block and annex are left out.

Limitations