# BR-DE-TMP-32

Source: https://xmlvalid.com/rules/BR-DE-TMP-32

> Eine Rechnung sollte zur Angabe des Liefer-/Leistungsdatums entweder BT-72 "Actual delivery date", BG-14 "Invoicing period" oder in jeder Rechnungsposition BG-26 "Invoice line period" enthalten.

- Level: warning
- Rule sets: XRechnung 3.0 rules (UBL) 2.6.0
- Context: `/ubl:Invoice | /cn:CreditNote`
- Test: `cac:Delivery/cbc:ActualDeliveryDate or cac:InvoicePeriod or (every $line in (cac:InvoiceLine | cac:CreditNoteLine) satisfies $line/cac:InvoicePeriod)`

> Eine Rechnung sollte zur Angabe des Liefer-/Leistungsdatums entweder BT-72 "Actual delivery date", BG-14 "Invoicing period" oder in jeder Rechnungsposition BG-26 "Invoice line period" enthalten.

- Level: warning
- Rule sets: XRechnung 3.0 rules (CII) 2.6.0
- Context: `/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction`
- Test: `ram:ApplicableHeaderTradeDelivery/ram:ActualDeliverySupplyChainEvent/ram:OccurrenceDateTime or ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod or (every $line in ram:IncludedSupplyChainTradeLineItem satisfies $line/ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod)`

## Why it fails

- The invoice says nothing about when the goods were delivered or the service was performed: there is no actual delivery date (BT-72), no invoicing period (BG-14) and not every line has a line period (BG-26).
- A period is given on some lines but not all of them; the rule wants either one at document level or one on every line.

## How to fix it

- Give the delivery date in `cac:Delivery/cbc:ActualDeliveryDate` (`ram:ActualDeliverySupplyChainEvent/ram:OccurrenceDateTime` in CII), or the period the invoice covers in `cac:InvoicePeriod` (`ram:BillingSpecifiedPeriod`). German VAT law asks for the date of supply on an invoice, which is why KoSIT checks it.

Validate a document against these rules: https://xmlvalid.com/validate
