Officiële regeltekst
[PEPPOL-EN16931-R008] Document MUST not contain empty elements.
De normatieve tekst is Engels en wordt ongewijzigd geciteerd.
Waarom deze fout optreedt
Peppol verbiedt elementen zonder kindelementen en zonder tekstinhoud, omdat een leeg element dubbelzinnig is (ontbreekt de waarde of is ze bewust leeg?) en de verdere verwerking verstoort. De regel markeert elk element dat voldoet aan //*[not(*) and not(normalize-space())], in CII met een uitzondering voor ram:ApplicableHeaderTradeDelivery, dat leeg mag zijn. Lege elementen komen vrijwel altijd uit sjablonen die elke optionele tag aanmaken en die alleen vullen als er gegevens zijn, bijv. <cbc:Note/>, <cbc:Telephone></cbc:Telephone> of een lege <cac:Delivery/>.
Zo lost u het op
Genereer optionele elementen alleen als u een waarde heeft: zet elke optionele tag in uw sjabloon of serializer binnen een voorwaarde. Verwijder waarden die alleen uit witruimte bestaan, want die gelden als leeg. Controleer ook containers: een <cac:Contact/> zonder kindelementen of een <cac:PartyIdentification><cbc:ID/></cac:PartyIdentification> faalt allebei. Haal de uitvoer opnieuw door de validator, want het verwijderen van één leeg kindelement kan een leeg ouderelement achterlaten.
Voorbeeld (geldig)
<cac:Contact>
<cbc:Name>Accounts receivable</cbc:Name>
<cbc:ElectronicMail>invoice@muster-gmbh.de</cbc:ElectronicMail>
</cac:Contact>
Wat de validator controleert
Gecontroleerd element (context):
UBL
//*[not(*) and not(normalize-space())]Test (XPath):
false()CII
//*[not(name() = 'ram:ApplicableHeaderTradeDelivery') and not(*) and not(normalize-space())]Test (XPath):
false()
Automatisch herstellen
Deze fout kan automatisch worden hersteld: sleep het bestand naar de checker en klik op "Automatisch herstellen".
Dezelfde controle via API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateGerelateerde regels
PEPPOL-EN16931-R001Identificatie van het bedrijfsproces (BT-23) ontbreektPEPPOL-EN16931-R002Maximaal één notitie op documentniveau toegestaan, tenzij koper en verkoper…PEPPOL-EN16931-R003Noch kopersreferentie noch inkooporderreferentie opgegevenPEPPOL-EN16931-R004Specificatie-identificatie is niet die van Peppol BIS Billing 3.0PEPPOL-EN16931-R005Btw-boekhoudvaluta is gelijk aan de factuurvalutaPEPPOL-EN16931-R006Slechts één gefactureerd object toegestaan op documentniveauPEPPOL-EN16931-R007Identificatie van het bedrijfsproces heeft een verkeerd formaatPEPPOL-EN16931-R010Elektronisch adres van de koper (BT-49) ontbreekt
Veelgestelde vragen
Wat betekent PEPPOL-EN16931-R008?
PEPPOL-EN16931-R008 is een peppol bis billing 3.0-regel: Document MUST not contain empty elements.
Wordt mijn factuur geweigerd vanwege PEPPOL-EN16931-R008?
Ja. PEPPOL-EN16931-R008 is "fataal"; validators (Peppol-accesspoints, KoSIT, KSeF) weigeren de factuur totdat de fout is opgelost.
Voor welke formaten geldt PEPPOL-EN16931-R008?
Facturen en creditnota's via het Peppol-netwerk (UBL), inclusief NLCIUS, en elke XRechnung omdat die de Peppol-regels overneemt. Syntax: UBL en CII.
Bron: Peppol BIS Billing 3.0.20 (November 2025). Catalogus gegenereerd uit de officiële regelsets op 2026-10-15.