Support for JMHZ in ABRA Flexi was developed based on the information available from the Czech Social Security Administration (ČSSZ) and the Ministry of Labour and Social Affairs (MPSV).
Because the JMHZ specifications and methodology were released gradually, often with delays, and in some cases lacking full clarity, it was not possible for us to cover every scenario with 100% accuracy in the first version.
We have been continuously working on the implementation and will continue to iteratively refine and expand it as new information becomes available and based on real-world feedback.
🔧 Ongoing fixes and updates
Released versions progressively include fixes and behavioral improvements based on:
clarifications to the methodology from ČSSZ / MPSV
real-world data and situations from customers
identified discrepancies during report submissions
Individual fixes will always be described in more detail in the changelog.
🚧 Known limitations and areas of further development
Below is a list of areas that have already been resolved, are currently in development, or are planned for future versions:
Description | Status | Fixed in version |
JMHZ Viewer – Municipality of workplace (10229) may not exactly match the value from the code list | 🟢 Done | — |
MH – added validation when weekly working hours are not filled in | 🟢 Done | — |
MH – incorrect population of attribute 10261 (Stipulated weekly working hours of the employee) for statutory bodies | 🟢 Done | — |
MH – deferred income carry-through for "standard" employment | 🟢 Done | 2026.3.19 |
MH – non-functional cancellation | 🟢 Done | 2026.3.19 |
Complete validations for 6-ODM. NEREZ. VNE EU so that the ELDP code is required | 🟢 Done | 2026.3.18 |
Employment record import – learn to retrieve the personal number from the person column | 🟢 Done | 2026.3.18 |
MH – add validation that the weekly working hours are known | 🟢 Done | 2026.3.18 |
JMHZ print output files are overwritten without warning | 🟢 Done | 2026.3.18 |
MH – unusual behavior of the MH wizard when alternating between "Next" and "Back" | 🟢 Done | 2026.3.18 |
MH – add validation that the employment start date is filled in | 🟢 Done | 2026.3.18 |
MH – attribute 10373 Reduced working hours scope should not be included for students | 🟢 Done | 2026.3.18 |
MH – error M28 when using the JUBILEUM pay component | 🟢 Done | 2026.3.17 |
MH – error M36 in the case of overtime without overtime supplements | 🟢 Done | 2026.3.17 |
MH – add option to save in ZIP format | 🟢 Done | 2026.3.16 |
MH – incorrect calculation of excluded days in the case of a combination of full-month absence and bonuses | 🟢 Done | 2026.3.16 |
MH – incorrect counting of absence days when absence extends more than 1 day into the current month and absence hours are filled in for the first day | 🟢 Done | 2026.3.16 |
MH – replace summing of paid leave 1–5 with the use of TOTAL PAID LEAVE | 🟢 Done | 2026.3.16 |
MH – non-resident with a signed taxpayer declaration generates invalid XML | 🟢 Done | 2026.3.15 |
MH – improve display of available submitted MH records | 🟢 Done | 2026.3.15 |
MH – review attributes conditional on the number of ELDP days | 🟢 Done | 2026.3.15 |
MH – use of incorrect person settings within the MH | 🟢 Done | 2026.3.15 |
MH – error M1 – incorrect application of social insurance discount for employees who had no income for the entire month | 🟢 Done | 2026.3.15 |
JMHZ – unable to set access rights for REGZEC and MH independently | 🟢 Done | 2026.3.14 |
MH – supplement-related elements (10332–10336) should only be populated when non-zero | 🟢 Done | 2026.3.14 |
MH – incorrect population of attribute Monthly child tax credit (10304) | 🟢 Done | 2026.3.14 |
MH – added validation that SP, health insurance, and tax bases must not have negative values | 🟢 Done | 2026.3.13 |
REGZEC – validation of the Early Termination Reason field when Free Access to the Labour Market is selected | 🟢 Done | 2026.3.13 |
Stipulated fund – value from Company Settings is not propagated to the employment record | 🟢 Done | 2026.3.13 |
REGZEC – A1 – foreign nationals with ikMpsv | 🟢 Done | 2026.3.13 |
MH – error M255 – Primary employment relationship: No primary PPV exists for the OIČ within the submission. | 🟢 Done | 2026.3.13 |
MH – error M59 – if absence covers the entire month, the assessment base (10245) should not be filled in | 🟢 Done | 2026.3.13 |
MH – fix for error: Settled wage is less than the tariff wage when using Deduction for excess holiday taken (20028) and bonuses | 🟢 Done | 2026.3.13 |
REGZEC – add length validations | 🟢 Done | 2026.3.12 |
REGZEC – missing address data for employees with a permanent residence abroad | 🟢 Done | 2026.3.12 |
Unable to delete the Stipulated Fund value on an employment record | 🟢 Done | 2026.3.12 |
MH – error 20248, 20321 (M248, M321) – population of employee summary data for a non-primary employment record | 🟢 Done | 2026.3.12 |
MH – corrective submission – error M8 – not all selected employment records are used | 🟢 Done | 2026.3.12 |
Add new deduction type DEDUCTION UNDER THE CIVIL CODE | 🟢 Done | 2026.3.11 |
Social insurance calculation for employees should be per employment record | 🟢 Done | 2026.3.11 |
REGZEC – adjustment of the Duration of pension insurance population | 🟢 Done | 2026.3.11 |
REGZEC – employment type (typeempl) should not be filled in certain cases | 🟢 Done | 2026.3.11 |
REGZEC – action A2 – add validation that wages must have been calculated | 🟢 Done | 2026.3.11 |
REGZEC – pension data will only be populated if the pension is outside ČSSZ | 🟢 Done | 2026.3.11 |
MH – add a warning that social insurance checks have not been met | 🟢 Done | 2026.3.11 |
MH – invalid XML for a non-resident with withholding tax advance | 🟢 Done | 2026.3.11 |
MH – adjust the places where the social insurance base component is used in calculations | 🟢 Done | 2026.3.11 |
MH – use Civil Code deductions for populating attribute 10116 | 🟢 Done | 2026.3.11 |
MH – holiday wage compensation amount does not match the amount in Wage Update | 🟢 Done | 2026.3.10 |
MH wizard – the list of employment records does not refresh when the opening step is changed; it appears empty | 🟢 Done | 2026.3.10 |
MH – incorrect identification of the primary PPV when Flexi contains multiple main employment records | 🟢 Done | 2026.3.10 |
REGZEC – include the company name in the file name | 🟢 Done | 2026.3.10 |
REGZEC – A3 – some employment record attributes are not populated | 🟢 Done | 2026.3.10 |
REGZEC – remove line breaks from the Issuing authority (foreigninst) field | 🟢 Done | 2026.3.10 |
REGZEC – map termination reason 5d to 5 | 🟢 Done | 2026.3.10 |
JMHZ – display of additional employment record details | 🟢 Done | 2026.3.10 |
MH – error 20332 – incorrect identification of the primary PPV | 🟢 Done | 2026.3.9 |
Automatically send the Flexi customer number to the JMHZ Viewer | 🟢 Done | 2026.3.9 |
Unable to create an MH for employment type 6-ODM. NEREZ. VNE EU | 🟢 Done | 2026.3.9 |
MH – error 40244, 40245 – certain data must not be filled in when the declaration has not been signed | 🟢 Done | 2026.3.9 |
MH – error 40242 – withholding tax data must not be included when the declaration has been signed | 🟢 Done | 2026.3.9 |
MH – error 40325 – withholding tax attributes are shown even when agreements are taxed by advance tax | 🟢 Done | 2026.3.9 |
MH – error 40243 – the taxpayer declaration section must not be included for non-residents | 🟢 Done | 2026.3.9 |
MH – other income | 🟢 Done | 2026.3.8 |
MH – fix for error: Settled wage is less than the tariff wage when using Deduction for excess holiday taken (20028) | 🟢 Done | 2026.3.8 |
JMHZ documents lose formatting after being opened in the JMHZ Viewer | 🟢 Done | 2026.3.8 |
REGZEC – incorrectly highlighted field when Pension received since is not filled in | 🟢 Done | 2026.3.8 |
MH – error 20267 – when the Settled wage for work value is zero, other attributes must not be populated | 🟢 Done | 2026.3.7 |
MH – error 20329 – if no excluded periods are reported, the excused absence reason data must not be filled in | 🟢 Done | 2026.3.7 |
MH for January – contributions to retirement savings products are not reflected | 🟢 Done | 2026.3.7 |
MH – attribute 10416 should be conditional on non-resident status | 🟢 Done | 2026.3.7 |
MH – net income must not be negative | 🟢 Done | 2026.3.7 |
MH – error 20283 – when settled income is zero, related attributes must not be populated | 🟢 Done | 2026.3.7 |
REGZEC – national ID number should be set only for Czech citizenship | 🟢 Done | 2026.3.7 |
REGZEC – fixed-term contract – element zamestnaniUkoncenoSmrti = NO is always populated | 🟢 Done | 2026.3.7 |
REGZEC – remove spaces from address number fields | 🟢 Done | 2026.3.6 |
REGZEC – remove line breaks from workplace location fields | 🟢 Done | 2026.3.6 |
REGZEC – end date is incorrectly included for the commencement action | 🟢 Done | 2026.3.6 |
REGZEC – offering employment records whose start date differs from the active from date | 🟢 Done | 2026.3.6 |
MH – incorrect social insurance calculation in the MH header when social insurance discounts exist (errors 20012, 20013) | 🟢 Done | 2026.3.6 |
REGZEC XML – populate the terminated by death element | 🟢 Done | 2026.3.6 |
MH – error 20307 – when the ELDP code is not filled in, pension insurance period data is incorrectly populated | 🟢 Done | 2026.3.5 |
MH – added ELDP code validation | 🟢 Done | 2026.3.5 |
MH – error 20099 Date is outside the month for which the report is being submitted | 🟢 Done | 2026.3.5 |
REGZEC – allow registration of employment records that were not previously registered | 🟢 Done | 2026.3.5 |
REGZEC – cancellation action contains extra data | 🟢 Done | 2026.3.5 |
MH – error 20028 when travel expenses within the limit are used | 🟢 Done | 2026.3.5 |
MH – change the way XML namespaces are used (aliases) | 🟢 Done | 2026.3.4 |
MH – error 20286 – errors in the inclusion of elements for unworked hours when there are no unworked hours | 🟢 Done | 2026.3.4 |
MH – clarify the "Was it submitted?" prompt | 🟢 Done | 2026.3.4 |
MH – error 20158 – ELDP code is not from the code list | 🟢 Done | 2026.3.4 |
MH – sick pay compensation should be included in settled wage (10328) | 🟢 Done | 2026.3.4 |
JMHZ – errors in CSV import with OIČ, PPV ID | 🟢 Done | 2026.3.3 |
REGZEC – fix for population of postal codes containing spaces | 🟢 Done | 2026.3.3 |
JMHZ – CSV import – multiple employment records with the same code | 🟢 Done | 2026.3.3 |
MH – 10259 – stipulated fund for irregular working hours contains an incorrect number | 🟢 Done | 2026.3.3 |
MH – agreed fund for irregular working hours | 🟢 Done | 2026.3.3 |
MH – error 20235 – incorrect number of forms in the batch | 🟢 Done | 2026.3.3 |
The JMHZ add-on pre-populates with data when opened directly from Flexi | 🟢 Done | 2026.3.2 |
REGZEC A3 additional registration – change of country of residence from (10459) will always be populated | 🟢 Done | 2026.3.2 |
REGZEC – if Health limitation type is filled in, the Work performed mainly attribute must also be filled in | 🟢 Done | 2026.3.2 |
Relaxed residence validation for CZ tax residents in REGZEC | 🟢 Done | 2026.3.1 |
MH – number of days of temporary incapacity for work should be in calendar days | 🟢 Done | 2026.3.1 |
JMHZ Viewer – duplicate PPV ID is not highlighted when a duplicate PPV ID is detected (error M251) | 🟢 Done | jmhz-viewer-2026-05-26 |
JMHZ Viewer – display GUID | 🟢 Done | jmhz-viewer-2026-05-26 |
JMHZ Viewer – disable checks for the Cancellation action | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – focus is on the wrong field for certain elements | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – review check M343 in the case of deferred income | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – review rounding in check 315 | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – review check M242 | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – review check for action A8 REGZEC | 🟢 Done | jmhz-viewer-2026-05-20 |
JMHZ Viewer – fix display of deferred income | 🟢 Done | jmhz-viewer-2026-05-15 |
JMHZ Viewer – fix sanitization on save | 🟢 Done | jmhz-viewer-2026-05-15 |
JMHZ Viewer – fix IK MPSV validation | 🟢 Done | jmhz-viewer-2026-05-15 |
JMHZ Viewer – update MH checks | 🟢 Done | jmhz-viewer-2026-05-15 |
JMHZ Viewer – review check R172 for action A2 | 🟢 Done | jmhz-viewer-2026-05-07 |
JMHZ Viewer – municipality names are not required to match the exact value from the code list | 🟢 Done | jmhz-viewer-2026-05-07 |
JMHZ Viewer – incorrect values in the Work performed mainly code list | 🟢 Done | jmhz-viewer-2026-05-05 |
JMHZ Viewer does not recognize 'Ž' as a valid value in the gender code list (error R16) | 🟢 Done | jmhz-viewer-2026-05-04 |
JMHZ Viewer – validation – add checks for specific code list values | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – API for code lists | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – review check R100 when Termination reason is not specified | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – fix checks M325 and M245 | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – data checks for employees with a permanent residence abroad | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – incorrect check M229 for the 4th and subsequent child tax credit | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – option to load metadata from the official ČSSZ CSV file | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – improvements to sanitization and XML generation | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – ZIP support in embedded mode (external integration) | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – fix sorting and saving of children | 🟢 Done | jmhz-viewer-2026-04-30 |
JMHZ Viewer – review REGZEC validation – pension type + pension received since | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – review K229 when there are multiple children for whom the tax credit is not applied | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – option to load and save a ZIP file | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – option to display additional employee information | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – support for passing a parameter with the Flexi customer number | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – validation of field obligations (columns I–X) | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – add checks for REGZEC attachments | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – empty elements after deleting a value cause XSD errors | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – check R50 – perform only for action A3 | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – review the check for permanent address completion for Slovak nationals | 🟢 Done | jmhz-viewer-2026-04-23 |
JMHZ Viewer – review checks M214 and M215 | 🟢 Done | jmhz-viewer-2026-04-17 |
JMHZ Viewer – review check R201 | 🟢 Done | jmhz-viewer-2026-04-17 |
JMHZ Viewer – add further MH checks | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – REGZEC – validation of Specific obligations (column F) | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – REGZEC – validation of Logical checks (column G) | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – REGZEC – validation of Obligation conditions (columns Y–AA) | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – cover existing MH checks with tests | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – fix loading of XML files with windows-1250 encoding | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – support for multiple files at once | 🟢 Done | jmhz-viewer-2026-04-16 |
JMHZ Viewer – UI fixes and improvements | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – some basic checks are not triggered when automatically opened from Flexi | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – discount data is not displayed in the header | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – does not report error 329 | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – review K42 | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – dialog for reporting an issue | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – improvements to XLS export | 🟢 Done | jmhz-viewer-2026-04-10 |
JMHZ Viewer – save to PDF | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ Viewer – implementation of REGZEC attachments | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ Viewer – review check K37 for IK MPSV | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ Viewer – checks K284, K216, K7 do not respect the employment record type | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ Viewer – review check K332 | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ Viewer – tighten check K99 | 🟢 Done | jmhz-viewer-2026-04-08 |
JMHZ employment record import error from Excel fails – when importing without a PPV ID that is already set on the employment record in Flexi | 🔵 In development | — |
MH – populate annual settlement result data (attributes 10321, 10322, 10323) | 🔵 In development | — |
MH, REGZEC – use company name in the file name | 🔵 In development | — |
PREZEC – Pre-registration of employees from 1 July 2026 | 🔵 In development | — |
New endpoint in Flexi for displaying the JMHZ Viewer | 🔵 In development | — |
MH – include national ID numbers of children and persons maintaining the same children only if valid | 🔵 In development | — |
MH – incorrect population of attributes 10268 and 10276 when there are public holidays in the month | 🔵 In development | — |
JMHZ Viewer – improve the error message when prohibited fields are filled in | 🔵 In development | — |
Add stipulated fund to JMHZ exports and imports | 🔴 Closed | — |
MH – error 20028 Settled wage is less than the sum of its components | 🔴 Closed | — |
MH – errors 20001, 20207 – errors related to social insurance discounts for the employer | 🔴 Closed | — |
JMHZ Viewer – review K255 – validation of primary PPV for an employee with multiple employment records | 🔴 Closed | — |
JMHZ Viewer – Excel spreadsheet cannot be opened in a spreadsheet application on macOS | 🔴 Closed | — |
JMHZ Viewer – verify that XML format validation correctly validates optional elements | 🔴 Closed | — |
Absence – Unpaid leave – attributes 10358, 10359, 10360, 10362 must not be populated | 🔴 Closed | — |
MH – error 20013 in the case of multiple employment records | 🔴 Closed | — |
MH – enable finding an employment record by GUID from the submission | 🔴 Closed | — |
REGZEC – add validation for the Work performed mainly field | 🔴 Closed | — |
JMHZ Viewer – may not report an error when Work performed mainly is not filled in | 🔴 Closed | — |
Add a "Wage payment date" field to the monthly report wizard | ⚪ Planned | — |
MH – excluded periods reported in the ELDP section | ⚪ Planned | — |
MH – employees receiving a pension and ELDP | ⚪ Planned | — |
REGZEC – change action and multiple person/employment record settings in one month | ⚪ Planned | — |
MH – invalid XML when employee data is not filled in | ⚪ Planned | — |
MH – remove the "full pension" condition | ⚪ Planned | — |
MH – do not offer employment records that do not have a ČSSZ employment code filled in | ⚪ Planned | — |
MH – annual settlement result | ⚪ Planned | — |
JMHZ Viewer – write-back saving of XML | ⚪ Planned | — |
JMHZ – improvements to the generated file name | ⚪ Planned | — |
JMHZ Viewer – add a summary row directly on the page | ⚪ Planned | — |
MH – refine support for prisoners | ⚪ Planned | — |
MH – error M59 for pensioners – assessment base for periods around reaching retirement age (points 3 and 4) | ⚪ Planned | — |
New employment type: Procurist | ⚪ Planned | — |
HR – OIČ should be unique | ⚪ Planned | — |
MH – adjust the name of generated files | ⚪ Planned | — |
JMHZ Viewer – add the option to merge Monthly Report XML files from multiple payroll offices | ⚪ Planned | — |
JMHZ Viewer – enable working with a cursor | ⚪ Planned | — |
MH – Deferred income and contributions to retirement savings products | ⚪ Planned | — |
MH – support for staffing agencies | ⚪ Planned | — |
JMHZ Viewer – support for PREZEC | ⚪ Planned | — |
Make REGZEC output available via API (testability) | ⚪ Planned | — |
Refactor submission type on MH tables to a localized code list | ⚪ Planned | — |
🔁 Our approach
we continuously monitor changes and new information from ČSSZ and MPSV
