Skip to content

BR-CL-06: Value added tax point date code (BT-8) not permitted

Official message

[BR-CL-06] Value added tax point date code MUST be coded using a restriction of UNTDID 2475.

EN 16931 (CII) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-CL-06] Value added tax point date code MUST be coded using a restriction of UNTDID 2005.

EN 16931 (UBL) · Error · Message language: English · Version: xrechnung-3.0.2-validator-configuration-2026-08-31
Severity
Error The invoice is invalid and may be rejected by the recipient.
Applies to
EN 16931 (CII), EN 16931 (UBL)

What does this mean?

The value added tax point date code (BT-8) must come from the code list restricted for EN 16931. The value given is not permitted.
CII (ram:ApplicableTradeTax/ram:DueDateTypeCode, UNTDID 2475): only 5 (invoice date), 29 (delivery date) or 72 (paid to date). UBL (cac:InvoicePeriod/cbc:DescriptionCode, UNTDID 2005): only 3, 35 or 432 with the same meaning.

Typical causes

A code of the other syntax was used, e.g. 35 in CII or 29 in UBL.
A date format code (e.g. 102) was confused with the tax point date code.
Spaces or free text in the code.

How to fix the error

Fill BT-8 only with one of the permitted codes of the syntax used or omit it if no code is needed.
CII: 5, 29 or 72 in ram:DueDateTypeCode. UBL: 3, 35 or 432 in cac:InvoicePeriod/cbc:DescriptionCode.
Generate and validate the invoice again.

In E-Rechnungsfreund

In the invoice form, "Experte" view, section "Datum & Zeiträume" (dates and periods), select a code from the list in the field "Steuerfälligkeitscode (BT-8)" (5, 29 or 72) or leave "– kein –" (none); in section "Steueraufstellung (BG-23)" (VAT breakdown) the same applies to the field "Steuerfall.-Code (BT-8)". The code applies to the whole invoice; the app does not accept a different code per VAT breakdown.
Validate the invoice again.

Example

Wrong

<ram:ApplicableTradeTax>
  ...
  <ram:DueDateTypeCode>35</ram:DueDateTypeCode>
  ...
</ram:ApplicableTradeTax>

Correct

<ram:ApplicableTradeTax>
  ...
  <ram:DueDateTypeCode>29</ram:DueDateTypeCode>
  ...
</ram:ApplicableTradeTax>
For developers: test expression per syntax

EN 16931 (CII) (CII)

Context: ram:DueDateTypeCode

((not(contains(normalize-space(.), ' ')) and contains(' 5 29 72 ', concat(' ', normalize-space(.), ' '))))

EN 16931 (UBL) (UBL)

Context: cac:InvoicePeriod/cbc:DescriptionCode

((not(contains(normalize-space(.), ' ')) and contains(' 3 35 432 ', concat(' ', normalize-space(.), ' '))))

Related validation rules

  • BR-CL-01: Invoice type code (BT-3) not from UNTDID 1001
  • BR-CL-03: Currency attribute currencyID not according to ISO 4217
  • BR-CL-04: Invoice currency code (BT-5) not according to ISO 4217
  • BR-CL-05: VAT accounting currency code (BT-6) not according to ISO 4217
  • BR-CL-07: Object identifier scheme (BT-18-1, BT-128-1) not from UNTDID 1153
  • BR-CL-08: Invoice note subject code (BT-21) not from UNTDID 4451

Frequently asked questions

Why is 35 valid in UBL but not in CII?

The syntaxes use different code lists: CII uses UNTDID 2475, UBL uses UNTDID 2005. The delivery date is code 29 in CII and code 35 in UBL.

Last updated:
Explanation of the validation rule, not legal or tax advice.