Reference
Markdown exportBR-CO-20 Invoice line period needs a start or end date
If the invoice line period (BG-26) is used, the invoice line period start date (BT-134) or the invoice line period end date (BT-135) shall be filled, or both.
Problem Description
ERROR
EN 16931 calculation and consistency rule (BR-CO)
Context and Significance
This EN 16931 rule is the line-level counterpart of BR-CO-19: an invoice line period (BG-26) must not be empty. Unlike the document level in UBL, a line period has no exception for cbc:DescriptionCode, because the VAT point date code (BT-8) exists only at document level. The error often occurs when an export creates a period element for every line, even for lines without a known period.
Solution
When a cac:InvoicePeriod appears inside an invoice line, provide at least a StartDate (BT-134) or an EndDate (BT-135); otherwise remove the empty element. In CII the line period is ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod.
Quick actions
Valid Examples
- BT-134 = 2026-02-01 with BT-135 = 2026-02-28
Invalid Examples
- Line cac:InvoicePeriod present but neither BT-134 nor BT-135 filled
Code Examples
<cac:InvoiceLine>
<cac:InvoicePeriod>
<cbc:StartDate>2026-02-01</cbc:StartDate>
<cbc:EndDate>2026-02-28</cbc:EndDate>
</cac:InvoicePeriod>
</cac:InvoiceLine><cac:InvoiceLine>
<cac:InvoicePeriod>
</cac:InvoicePeriod>
</cac:InvoiceLine>