Account
Nederlands

PEPPOL-EN16931-R051: currencyID wijkt af van de factuurvaluta

Peppol BIS Billing 3.0-regel · Fout · UBL

StandaardPeppol BIS Billing 3.0 (OpenPeppol)ErnstFout: de factuur wordt geweigerdSyntaxUBLBedrijfstermen
  • BT-5 Invoice currency code
  • BT-111 Invoice total VAT amount in accounting currency
Geldt voorFacturen en creditnota's via het Peppol-netwerk (UBL), inclusief NLCIUS, en elke XRechnung omdat die de Peppol-regels overneemt.

Officiële regeltekst

[PEPPOL-EN16931-R051] All currencyID attributes must have the same value as the invoice currency code (BT-5), except for the invoice total VAT amount in accounting currency (BT-111).

De normatieve tekst is Engels en wordt ongewijzigd geciteerd.

Waarom deze fout optreedt

In een Peppol UBL-factuur moet elk bedrag in de factuurvaluta (BT-5) staan; de enige uitzondering is het btw-totaal in de boekhoudvaluta (BT-111). De regel controleert of het attribuut currencyID van elke cbc:Amount, cbc:BaseAmount, cbc:PriceAmount, cbc:TaxAmount, cbc:TaxableAmount, cbc:LineExtensionAmount en alle bedragen in cac:LegalMonetaryTotal gelijk is aan cbc:DocumentCurrencyCode. De fout treedt op wanneer een sjabloon currencyID="EUR" vast codeert terwijl de documentvaluta anders is, of wanneer prijzen op een factuur in vreemde valuta in de valuta van de leverancier worden geëxporteerd.

Zo lost u het op

Genereer elke currencyID uit de waarde van cbc:DocumentCurrencyCode in plaats van deze vast te coderen. Reken bij een factuur in vreemde valuta alle prijzen en bedragen vóór de export om naar die valuta. Behoud precies één cac:TaxTotal zonder subtotalen in de boekhoudvaluta als BT-6 wordt gebruikt; alle andere bedragen, inclusief regelprijzen, blijven in de documentvaluta. Deze regel geldt alleen voor UBL.

Voorbeeld (geldig)

<cbc:DocumentCurrencyCode>SEK</cbc:DocumentCurrencyCode>
...
<cbc:LineExtensionAmount currencyID="SEK">1000.00</cbc:LineExtensionAmount>
<cbc:PriceAmount currencyID="SEK">500.00</cbc:PriceAmount>

Wat de validator controleert

Gecontroleerd element (context):

UBL

cbc:Amount | cbc:BaseAmount | cbc:PriceAmount | cac:TaxTotal[cac:TaxSubtotal]/cbc:TaxAmount | cac:TaxSubtotal/cbc:TaxAmount | cbc:TaxableAmount | cbc:LineExtensionAmount | cbc:TaxExclusiveAmount | cbc:TaxInclusiveAmount | cbc:AllowanceTotalAmount | cbc:ChargeTotalAmount | cbc:PrepaidAmount | cbc:PayableRoundingAmount | cbc:PayableAmount

Test (XPath):

@currencyID = $documentCurrencyCode

Controleer uw factuur

Sleep uw XML of PDF naar de validator; elke overtreden regel linkt naar zijn pagina hier. Gratis, zonder account, het bestand wordt niet opgeslagen.

Controleer uw factuur →

Dezelfde controle via API:

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

Gerelateerde regels

Veelgestelde vragen

Wat betekent PEPPOL-EN16931-R051?

PEPPOL-EN16931-R051 is een peppol bis billing 3.0-regel: All currencyID attributes must have the same value as the invoice currency code (BT-5), except for the invoice total VAT amount in accounting currency (BT-111).

Wordt mijn factuur geweigerd vanwege PEPPOL-EN16931-R051?

Ja. PEPPOL-EN16931-R051 is "fataal"; validators (Peppol-accesspoints, KoSIT, KSeF) weigeren de factuur totdat de fout is opgelost.

Voor welke formaten geldt PEPPOL-EN16931-R051?

Facturen en creditnota's via het Peppol-netwerk (UBL), inclusief NLCIUS, en elke XRechnung omdat die de Peppol-regels overneemt. Syntax: UBL.

Bron: Peppol BIS Billing 3.0.20 (November 2025). Catalogus gegenereerd uit de officiële regelsets op 2026-10-15.