BR-TMP-6Datumsangaben in UBL müssen im Format JJJJ-MM-TT (YYYY-MM-DD) übermittelt werden.
Official rule text
Dates in a UBL XRechnung must be written as YYYY-MM-DD, for example 2026-08-26, and the check reports a warning rather than an error. It does not cover every date field, though, but seven named ones: IssueDate, DueDate, StartDate, EndDate, ActualDeliveryDate, TaxPointDate and PaymentDueDate — wherever they sit, including inside referenced documents.
- Severity
- Warning
- Applies to
- UBL
- Rule set
- v2026-08-31
- Checked on
Written and checked against the official KoSIT rule set by Dmytro Yalanskyi, NormAPI.
Why does BR-TMP-6 happen?
The German display format 26.08.2026 ends up in the data because the date is taken from the invoice template as an already formatted string rather than as a date value. US ordering and appended times fall into the same trap.
What the validator checks
The expression the official KoSIT rule set evaluates — not paraphrased, but read from the Schematron file it ships.
- UBL
matches(normalize-space(text()), '^\d{4}-\d{2}-\d{2}$')
Source: rule set v2026-08-31
How do you fix BR-TMP-6?
Format date values explicitly as ISO 8601 (YYYY-MM-DD) when writing the XML, and never reuse the output of the presentation layer. A time of day does not belong in a date field — see BR-TMP-7 for the same rule in CII.
In the XML
A UBL fragment — the rule applies to that syntax only.
<cbc:IssueDate>26.08.2026</cbc:IssueDate>
<cbc:DueDate>2026-09-25T00:00:00</cbc:DueDate><cbc:IssueDate>2026-08-26</cbc:IssueDate>
<cbc:DueDate>2026-09-25</cbc:DueDate>Related rules
NormAPI provides technical validation, not tax or legal advice.