Peppol BIS Billing 3.0.21 · UBL

PEPPOL-EN16931-R110: Start date of line period MUST be within invoice period

Peppol BIS Billing 3.0.21 · UBL

fatalformat

Original rule text

[PEPPOL-EN16931-R110]-Start date of line period MUST be within invoice period.

Stored validation assertion
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