Account
Nederlands

DE-R-019: "Betaalrekening-ID" dient een geldige IBAN te bevatten bij code 58 SEPA…

Nationale Peppol-regel · Waarschuwing · UBL

StandaardLandspecifieke regels Peppol BIS Billing 3.0 (NL, DE, IT, SE, DK, NO, GR, IS)LandDuitslandErnstWaarschuwing: de factuur wordt geaccepteerd maar moet worden gecorrigeerdSyntaxUBLBedrijfstermen
  • BT-81 Payment means type code
  • BT-84 Payment account identifier
Geldt voorAlleen wanneer de verkoper (bij sommige regels de koper) in het genoemde land gevestigd is; de landcode van de partij activeert de regel. De NL-regels zijn de NLCIUS-eisen.

Officiële regeltekst

[DE-R-019] The element "Payment account identifier" (BT-84) should contain a valid IBAN if code 58 SEPA is provided in "Payment means type code" (BT-81).

De normatieve tekst is Engels en wordt ongewijzigd geciteerd.

Waarom deze fout optreedt

De waarde is aanwezig maar voldoet niet aan het vereiste patroon: verkeerd datumformaat, een IBAN met een fout controlegetal, een e-mailadres zonder geldige structuur, een URL zonder schema, of tekst met verboden tekens.

Zo lost u het op

Corrigeer de waarde volgens het formaat in de regel: datums als JJJJ-MM-DD in UBL en JJJJMMDD met format="102" in CII, IBAN zonder spaties en met geldige controle, e-mailadres met precies één @, URL beginnend met http:// of https://.

Wat de validator controleert

Gecontroleerd element (context):

UBL

(/ubl-invoice:Invoice/cac:PaymentMeans[cbc:PaymentMeansCode = (30,58)] | /ubl-creditnote:CreditNote/cac:PaymentMeans[cbc:PaymentMeansCode = (30,58)])[$supplierCountryIsDE and $customerCountryIsDE]

Test (XPath):

not(cbc:PaymentMeansCode = '58') or                     matches(normalize-space(replace(cac:PayeeFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')), '^[A-Z]{2}[0-9]{2}[a-zA-Z0-9]{0,30}$') and                     xs:integer(string-join(for $cp in string-to-codepoints(concat(substring(normalize-space(replace(cac:PayeeFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),5),upper-case(substring(normalize-space(replace(cac:PayeeFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),1,2)),substring(normalize-space(replace(cac:PayeeFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),3,2))) return  (if($cp > 64) then string($cp - 55) else  string($cp - 48)),'')) mod 97 = 1

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 DE-R-019?

DE-R-019 is een nationale peppol-regel: The element "Payment account identifier" (BT-84) should contain a valid IBAN if code 58 SEPA is provided in "Payment means type code" (BT-81).

Wordt mijn factuur geweigerd vanwege DE-R-019?

Nee. DE-R-019 is een waarschuwing: de factuur wordt geaccepteerd maar de ontvanger ziet de melding. Los het toch op, waarschuwingen worden in latere regelversies vaak fouten.

Voor welke formaten geldt DE-R-019?

Alleen wanneer de verkoper (bij sommige regels de koper) in het genoemde land gevestigd is; de landcode van de partij activeert de regel. De NL-regels zijn de NLCIUS-eisen. Syntax: UBL.

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