BT-81Payment means type codeBT-91Debited account identifier
Oficjalna treść reguły
[DE-R-020] The element "Debited account identifier" (BT-91) should contain a valid IBAN if code 59 SEPA is provided in "Payment means type code" (BT-81).
Tekst normatywny jest w języku angielskim i cytowany bez zmian.
Dlaczego pojawia się ten błąd
Wartość istnieje, ale nie pasuje do wymaganego wzorca: zły format daty, IBAN z błędną cyfrą kontrolną, adres e-mail o niepoprawnej budowie, URL bez schematu lub tekst z niedozwolonymi znakami.
Jak to naprawić
Popraw wartość zgodnie z formatem wskazanym w regule: daty jako RRRR-MM-DD w UBL i RRRRMMDD z format="102" w CII, IBAN bez spacji i z poprawną sumą kontrolną, e-mail z dokładnie jednym @, URL zaczynający się od http:// lub https://.
Co sprawdza walidator
Sprawdzany element (kontekst):
UBL
(/ubl-invoice:Invoice/cac:PaymentMeans[cbc:PaymentMeansCode = 59] | /ubl-creditnote:CreditNote/cac:PaymentMeans[cbc:PaymentMeansCode = 59])[$supplierCountryIsDE and $customerCountryIsDE]Test (XPath):
not(cbc:PaymentMeansCode = '59') or matches(normalize-space(replace(cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')), '^[A-Z]{2}[0-9]{2}[a-zA-Z0-9]{0,30}$') and xs:decimal(string-join(for $cp in string-to-codepoints(concat(substring(normalize-space(replace(cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),5),upper-case(substring(normalize-space(replace(cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),1,2)),substring(normalize-space(replace(cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID, '([ \n\r\t\s])', '')),3,2))) return (if($cp > 64) then string($cp - 55) else string($cp - 48)),'')) mod 97 = 1
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
DE-R-019"Identyfikator rachunku płatniczego" powinien być poprawnym IBAN przy kodzie 58 SEPA…DE-R-031Jeśli podano grupę "POLECENIE ZAPŁATY", element "Identyfikator rachunku obciążanego"…DE-R-023-1Jeśli "Kod formy płatności" oznacza przelew (30, 58), "PRZELEW…DE-R-023-2Jeśli "Kod formy płatności" oznacza przelew (30, 58), BG-18 i…DE-R-024-1Jeśli "Kod formy płatności" oznacza kartę płatniczą (48, 54, 55), "KARTA…DE-R-024-2Jeśli "Kod formy płatności" oznacza kartę płatniczą (48, 54, 55), BG-17 i…DE-R-025-1Jeśli "Kod formy płatności" oznacza polecenie zapłaty (59), "POLECENIE ZAPŁATY"…DE-R-025-2Jeśli "Kod formy płatności" oznacza polecenie zapłaty (59), BG-17 i BG-18…
Najczęstsze pytania
Co oznacza DE-R-020?
DE-R-020 to krajowa reguła peppol: The element "Debited account identifier" (BT-91) should contain a valid IBAN if code 59 SEPA is provided in "Payment means type code" (BT-81).
Czy moja faktura zostanie odrzucona z powodu DE-R-020?
Nie. DE-R-020 to ostrzeżenie: faktura jest przyjmowana, ale odbiorca widzi uwagę. Mimo to popraw ją, ostrzeżenia często stają się błędami w kolejnych wersjach reguł.
Jakich formatów dotyczy DE-R-020?
Tylko gdy sprzedawca (w niektórych regułach nabywca) ma siedzibę we wskazanym kraju; wyzwalaczem jest kod kraju strony. Składnia: UBL.
Źródło: Peppol BIS Billing 3.0.20 national rules (November 2025). Katalog wygenerowany z oficjalnych zestawów reguł dnia 2026-10-15.