Why doesn't Celery automatically switch off the ZV premium if an employee has a salary above the SVB/SZV Wage Limit?
Indeed, employees with an SVB/SZV wage above the SVB/SZV Wage Limit are in principle not insured under the ZV. But there is an exception. That has to do with the SVB/SZV reference date.
The SVB/SZV wage of last year on the SVB/SZV reference date (November) is in fact decisive for whether or not this employee is insured under the ZV in the coming year. It can therefore happen that an employee with an SVB/SZV wage of 5,500 in November 2018 is fully insured in 2019 (January to December) and also has to pay a ZV premium. And that regardless of the actual salary in 2019.
So suppose that this employee receives a salary increase to 10,000 gross per month in January 2019, then a ZV premium will still have to be calculated and paid in the months of January to December 2019. That ZV premium is then calculated over the maximum of the SVB/SZV wage limit per month.
It can therefore happen that in a payslip of 10,000 gross per month, ZV premium must be applied. If Celery does not automatically apply the ZV premium in such cases, Celery will cause an incorrect salary calculation. In addition, Celery cannot itself check the SVB/SZV wage on the reference date because not all employers process all SVB/SZV wage components in the payroll on a monthly basis. An example of this is vacation pay which is not accrued. In such a case, Celery does not include the vacation pay in the SVB/SZV wage because no accrual is applied.
For the above reason and to prevent incorrect salary calculations, Celery users themselves must check or uncheck the ZV premium for each employee.