Compte
Français

PEPPOL-EN16931-R111: Période de ligne se terminant après la période de facturation

Règle Peppol BIS Billing 3.0 · Erreur · UBL, CII

NormePeppol BIS Billing 3.0 (OpenPeppol)GravitéErreur: la facture est rejetéeSyntaxeUBL, CIIS'applique àFactures et avoirs transmis via le réseau Peppol (UBL) et, XRechnung reprenant ces règles, toute XRechnung.

Texte officiel de la règle

[PEPPOL-EN16931-R111] End date of line period MUST be within invoice period.

Le texte normatif est en anglais ; il est cité tel quel.

Pourquoi cette erreur apparaît

Lorsque le document et une ligne indiquent tous deux une période de facturation, la période de ligne doit être comprise dans celle du document ; cette règle contrôle la date de fin. Elle compare cac:InvoiceLine/cac:InvoicePeriod/cbc:EndDate à cac:InvoicePeriod/cbc:EndDate en en-tête (UBL), ou ram:BillingSpecifiedPeriod/ram:EndDateTime de la ligne à ram:BillingSpecifiedPeriod/ram:EndDateTime de l'en-tête (CII). Elle échoue souvent pour les abonnements dont une ligne court jusqu'à la fin d'un trimestre alors que la période d'en-tête se termine en fin de mois, ou lorsque la date de fin d'en-tête est la date de facture.

Comment corriger

Repoussez la date de fin de la période d'en-tête (BT-74) jusqu'à la date de fin de ligne la plus tardive, ou raccourcissez la période de ligne, de sorte que chaque date de fin de ligne soit antérieure ou égale à la date de fin d'en-tête. Si la période d'en-tête n'est pas nécessaire, supprimez cac:InvoicePeriod de l'en-tête et conservez les périodes sur les lignes. En CII, la date de fin se place dans ram:EndDateTime/udt:DateTimeString format="102" au format AAAAMMJJ. Après la modification, vérifiez ensemble le début (PEPPOL-EN16931-R110) et la fin.

Exemple (valide)

<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>

Ce que le validateur vérifie

Élément vérifié (contexte):

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:EndDate

Test (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:EndDateTime

Test (XPath):

udt:DateTimeString <= ../../../../ram:ApplicableHeaderTradeSettlement/ram:BillingSpecifiedPeriod/ram:EndDateTime/udt:DateTimeString

Vérifier votre facture

Déposez votre XML ou PDF dans le validateur : chaque règle en échec renvoie vers sa page ici. Gratuit, sans compte, le fichier n'est pas conservé.

Vérifier votre facture →

La même vérification par API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Règles liées

Questions fréquentes

Que signifie PEPPOL-EN16931-R111 ?

PEPPOL-EN16931-R111 est une règle peppol bis billing 3.0 : End date of line period MUST be within invoice period.

Ma facture sera-t-elle rejetée à cause de PEPPOL-EN16931-R111 ?

Oui. PEPPOL-EN16931-R111 est classée « bloquante » ; les validateurs (plateformes agréées, points d'accès Peppol, KoSIT, KSeF) rejettent la facture tant qu'elle n'est pas corrigée.

À quels formats s'applique PEPPOL-EN16931-R111 ?

Factures et avoirs transmis via le réseau Peppol (UBL) et, XRechnung reprenant ces règles, toute XRechnung. Syntaxe : UBL et CII.

Source: Peppol BIS Billing 3.0.20 (November 2025). Catalogue généré à partir des jeux de règles officiels le 2026-10-15.