PEPPOL-EN16931-R110: Start date of line period MUST be within invoice period
Peppol BIS Billing 3.0.21 · UBL
Original rule text
[PEPPOL-EN16931-R110]-Start date of line period MUST be within invoice period.
xs:date(text()) >= xs:date(../../../cac:InvoicePeriod/cbc:StartDate)PEPPOL-EN16931-R110 is a fatal rule in the format layer of Peppol BIS Billing 3.0.21 · UBL. An invoice that breaks it is rejected.
What this rule requires
The rule applies to each cac:InvoiceLine/cac:InvoicePeriod/cbc:StartDate in an invoice or each cac:CreditNoteLine/cac:InvoicePeriod/cbc:StartDate in a credit note. It requires the line period start date to be on or after the document-level cac:InvoicePeriod/cbc:StartDate. The test converts both dates using xs:date() and fails if the line start date is earlier than the invoice period start date. Note that the test only checks the lower bound; it does not check whether the line period end date or start date lies before the invoice period end date.
How to fix
Set the line's cac:InvoicePeriod/cbc:StartDate to a date that is on or after the document-level cac:InvoicePeriod/cbc:StartDate. In an invoice, this is in cac:InvoiceLine; in a credit note, in cac:CreditNoteLine. If the line period is correct, adjust the document-level invoice period start date to include all line periods.
Guidance on this rule. The original text above is authoritative.
Where to go next
No published Peppol BIS Billing UBL release comparison lists a change to PEPPOL-EN16931-R110.
Validate an invoice against these rules · All release changes