Skip to main content

Attributes szbDph and typSzbDphK

When to Use Rate Type and When Percentage — and Why szbDph Is Validated Against the Code List

Written by Petr Pech

The VAT rate on a document line is described by two fields — typSzbDphK, the rate type, and szbDph, the percentage value. Both are applied.


What's the difference between them

Field

Content

typSzbDphK

Rate type from the code list — typSzbDph.dphZakl, typSzbDph.dphSniz, typSzbDph.dphSniz2, typSzbDph.dphOsv.

szbDph

Rate in percent, for example 21.0 or 12.0.

If neither is provided, the base rate is used. If you provide only one of them, Flexi will calculate the other — it derives the rate type from szbDph and vice versa.

⚠️ The value of szbDph is not merely informational. It is validated against the VAT rate code list for the document's date and country. A percentage that isn't found in the code list will result in the Pro danou hodnotu sazby […], datum […] a stát […] neexistuje platná sazba DPH error. The same happens if the two fields contradict each other — for example, szbDph 21 combined with typSzbDphK reduced.


What to specify

In practice, it's best to send only typSzbDphK. Unlike the percentage, the rate type doesn't change, so this entry will survive even a legislative change to the rate amount — Flexi will look up the correct percentage for the document's date on its own.

💡 If you're sending data from a system that only knows the percentage, using szbDph is fine — just keep in mind that the value must match the rate valid as of the document's issue date.


Related

Did this answer your question?