Oficjalna treść reguły
[PEPPOL-EN16931-R111] End date of line period MUST be within invoice period.
Tekst normatywny jest w języku angielskim i cytowany bez zmian.
Dlaczego pojawia się ten błąd
Gdy zarówno dokument, jak i pozycja podają okres rozliczeniowy, okres pozycji musi mieścić się w okresie dokumentu; ta reguła sprawdza datę końcową. Porównuje cac:InvoiceLine/cac:InvoicePeriod/cbc:EndDate z nagłówkowym cac:InvoicePeriod/cbc:EndDate (UBL) lub ram:BillingSpecifiedPeriod/ram:EndDateTime pozycji z nagłówkowym ram:BillingSpecifiedPeriod/ram:EndDateTime (CII). Często błąd dotyczy subskrypcji, w których pozycja trwa do końca kwartału, a okres w nagłówku kończy się z końcem miesiąca, lub sytuacji, gdy data końcowa w nagłówku jest datą faktury.
Jak to naprawić
Przesuń datę końcową okresu w nagłówku (BT-74) na najpóźniejszą datę końcową pozycji lub skróć okres pozycji, tak aby każda data końcowa pozycji przypadała w dniu daty końcowej nagłówka lub wcześniej. Jeśli okres w nagłówku nie jest potrzebny, usuń cac:InvoicePeriod z nagłówka i pozostaw okresy w pozycjach. W CII data końcowa trafia do ram:EndDateTime/udt:DateTimeString format="102" jako YYYYMMDD (RRRRMMDD). Po zmianie sprawdź łącznie datę początkową (PEPPOL-EN16931-R110) i końcową.
Przykład (poprawny)
<cac:InvoicePeriod>
<cbc:StartDate>2026-07-01</cbc:StartDate>
<cbc:EndDate>2026-09-30</cbc:EndDate>
</cac:InvoicePeriod>
...
<cac:InvoiceLine>...<cac:InvoicePeriod><cbc:StartDate>2026-07-01</cbc:StartDate><cbc:EndDate>2026-09-30</cbc:EndDate></cac:InvoicePeriod>...</cac:InvoiceLine>
Co sprawdza walidator
Sprawdzany element (kontekst):
UBL
ubl-invoice:Invoice[cac:InvoicePeriod/cbc:EndDate]/cac:InvoiceLine/cac:InvoicePeriod/cbc:EndDate | ubl-creditnote:CreditNote[cac:InvoicePeriod/cbc:EndDate]/cac:CreditNoteLine/cac:InvoicePeriod/cbc:EndDateTest (XPath):
xs:date(text()) <= xs:date(../../../cac:InvoicePeriod/cbc:EndDate)CII
rsm:SupplyChainTradeTransaction[ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime]/ram:IncludedSupplyChainTradeLineItem/ram:SpecifiedLineTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTimeTest (XPath):
udt:DateTimeString <= ../../../../ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString
Sprawdź swoją fakturę
Upuść plik XML lub PDF w walidatorze; każda naruszona reguła ma link do swojej strony tutaj. Bezpłatnie, bez konta, plik nie jest zapisywany.
To samo sprawdzenie przez API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validatePowiązane reguły
PEPPOL-EN16931-R001Brak identyfikatora procesu biznesowego (BT-23)PEPPOL-EN16931-R002Najwyżej jedna uwaga na poziomie dokumentu, chyba że nabywca i sprzedawca…PEPPOL-EN16931-R003Brak referencji nabywcy i numeru zamówieniaPEPPOL-EN16931-R004Identyfikator specyfikacji nie jest identyfikatorem Peppol BIS 3.0PEPPOL-EN16931-R005Waluta rozliczenia VAT jest taka sama jak waluta fakturyPEPPOL-EN16931-R006Dozwolony tylko jeden fakturowany obiekt na poziomie dokumentuPEPPOL-EN16931-R007Identyfikator procesu biznesowego ma nieprawidłowy formatPEPPOL-EN16931-R008Dokument zawiera puste elementy
Najczęstsze pytania
Co oznacza PEPPOL-EN16931-R111?
PEPPOL-EN16931-R111 to reguła peppol bis billing 3.0: End date of line period MUST be within invoice period.
Czy moja faktura zostanie odrzucona z powodu PEPPOL-EN16931-R111?
Tak. PEPPOL-EN16931-R111 ma status „krytyczny”; walidatory (KSeF, punkty dostępowe Peppol, KoSIT) odrzucają fakturę do czasu poprawienia błędu.
Jakich formatów dotyczy PEPPOL-EN16931-R111?
Faktury i noty kredytowe przesyłane siecią Peppol (UBL) oraz, ponieważ XRechnung zawiera reguły Peppol, każda XRechnung. Składnia: UBL i CII.
Źródło: Peppol BIS Billing 3.0.20 (November 2025). Katalog wygenerowany z oficjalnych zestawów reguł dnia 2026-10-15.