BR-CO-20: Invoice line period (BG-26) without start and end date
Official message
[BR-CO-20] If 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.
[BR-CO-20] If 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.
[BR-CO-20] If 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.
- Severity
- Error The invoice is invalid and may be rejected by the recipient.
- Applies to
- EN 16931 (CII), EN 16931 (UBL), Factur-X / ZUGFeRD EN 16931
- Affected fields
- BG-26, BT-134, BT-135
What does this mean?
If an invoice line period (BG-26) is used, its start date (BT-134) or end date (BT-135) shall be filled, or both. The period in the invoice has neither.
Typical causes
The period element was created empty, e.g. because the generating system always writes it.
The dates are stated elsewhere, e.g. only in a note.
How to fix the error
State the start date (BT-134) and/or end date (BT-135) of the period, or omit the period entirely if there is none.
CII: ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod with ram:StartDateTime or ram:EndDateTime, UBL: cac:InvoiceLine/cac:InvoicePeriod with cbc:StartDate or cbc:EndDate.
Generate and validate the invoice again.
In E-Rechnungsfreund
In the invoice form, expert view ("Experte"), section "Rechnungspositionen (BG-25)" (invoice lines), fill in the fields "Zeitraum Start (BT-134)" and/or "Zeitraum Ende (BT-135)" (period start/end) of the line. If both are empty, no period is written to the XML for the line. Then validate the invoice again.
Example
Wrong
<ram:ApplicableHeaderTradeSettlement>
...
<ram:BillingSpecifiedPeriod/>
...
</ram:ApplicableHeaderTradeSettlement>
Correct
<ram:ApplicableHeaderTradeSettlement>
...
<ram:BillingSpecifiedPeriod>
<ram:StartDateTime><udt:DateTimeString format="102">20261001</udt:DateTimeString></ram:StartDateTime>
<ram:EndDateTime><udt:DateTimeString format="102">20261031</udt:DateTimeString></ram:EndDateTime>
</ram:BillingSpecifiedPeriod>
...
</ram:ApplicableHeaderTradeSettlement>
For developers: test expression per syntax
EN 16931 (CII) (CII)
Context: //ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod
(ram:StartDateTime) or (ram:EndDateTime)
EN 16931 (UBL) (UBL)
Context: cac:InvoiceLine/cac:InvoicePeriod | cac:CreditNoteLine/cac:InvoicePeriod
exists(cbc:StartDate) or exists(cbc:EndDate)
Factur-X / ZUGFeRD EN 16931 (CII)
Technical ID in the source: FX-SCH-A-000213
Context: //ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod
(ram:StartDateTime) or (ram:EndDateTime)
Related validation rules
- BR-CO-03: Value added tax point date (BT-7) and tax point date code (BT-8) are mutually exclusive
- BR-CO-04: Invoiced item VAT category code (BT-151) is missing
- BR-CO-05: Document level allowance reason code (BT-98) and allowance reason (BT-97) must indicate the same type
- BR-CO-06: Document level charge reason code (BT-105) and charge reason (BT-104) must indicate the same type
- BR-CO-07: Invoice line allowance reason code (BT-140) and allowance reason (BT-139) must indicate the same type
- BR-CO-08: Invoice line charge reason code (BT-145) and charge reason (BT-144) must indicate the same type
Last updated:
Explanation of the validation rule, not legal or tax advice.