# BR-CL-06 VAT point date code must use the allowed code list

The value added tax point date code (BT-8) must be 3, 35 or 432 in UBL (restriction of UNTDID 2005) and 5, 29 or 72 in CII (restriction of UNTDID 2475).

## Problem Description

> **ERROR**: EN 16931 code-list rule (BR-CL)

## Context and Significance

BT-8 names the event that fixes the VAT point date when no explicit date (BT-7) is given; BT-7 and BT-8 must not both be present (BR-CO-3). The rule typically fails after a conversion between UBL and CII that copies the code unchanged, because each syntax uses its own code list. Another cause is a general date qualifier such as 137 (document date). Example: when VAT becomes due on payment, use 432 in UBL and 72 in CII.

## Solution

In UBL (cac:InvoicePeriod/cbc:DescriptionCode), use 3 (invoice date), 35 (actual delivery date) or 432 (payment date). In CII (ram:ApplicableTradeTax/ram:DueDateTypeCode), use 5 (invoice date), 29 (delivery date) or 72 (payment date). Do not mix the two lists.

- [Validate XML](/en/xrechnung-validator?source=resource&rule=BR-CL-06)
- [Convert invoice](/en/pdf-to-xrechnung?source=resource&rule=BR-CL-06)

## Valid Examples

- UBL: BT-8 = 35 — actual delivery date
- CII: BT-8 = 72 — payment date

## Invalid Examples

- UBL: BT-8 = 5 — CII code, not allowed in UBL
- CII: BT-8 = 35 — UBL code, not allowed in CII
- UBL: BT-8 = 137 — document date, outside the restriction

## Code Examples

### Valid XML
```
<cac:InvoicePeriod>
  <cbc:DescriptionCode>35</cbc:DescriptionCode>
</cac:InvoicePeriod>
```

### Invalid XML
```
<cac:InvoicePeriod>
  <cbc:DescriptionCode>5</cbc:DescriptionCode>
</cac:InvoicePeriod>
```

## Affected Fields

- [BT-8 Value added tax point date code](/resources/xrechnung/bt-8-vat-point-date-code)

## Related Rules

- [BR-CO-3](/resources/kosit-validator-errors/br-co-3-vat-point-date-and-code-mutually-exclusive)

## Validation Tools

- [Official KoSIT Validator](https://github.com/itplr-kosit/validator): Run the official KoSIT validator with the XRechnung configuration to check EN 16931 and XRechnung rules.
- [Convert PDF to XRechnung](/pdf-to-xrechnung): Find validation errors during conversion and review each correction.

## Related Resources

- [Official Specification](https://docs.peppol.eu/poacc/billing/3.0/rules/ubl-tc434/)
- [Test Suite](https://github.com/itplr-kosit/xrechnung-testsuite)
- [All validation errors](/resources/kosit-validator-errors): Overview of the EN 16931, XRechnung and Peppol validation rules explained here.
