BG-17Credit transferBT-81Payment means type code
Oficjalna treść reguły
[BR-DE-23-a] If BT-81 "Payment means type code" contains a code for credit transfers (30, 58), BG-17 "CREDIT TRANSFER" must be transmitted.
Tekst normatywny jest w języku angielskim i cytowany bez zmian.
Dlaczego pojawia się ten błąd
Jeśli kod sposobu płatności (BT-81) to 30 (przelew) lub 58 (przelew SEPA), XRechnung wymaga grupy przelewu BG-17 z rachunkiem odbiorcy płatności. Reguła szuka cac:PayeeFinancialAccount wewnątrz cac:PaymentMeans z tym kodem (UBL) lub ram:PayeePartyCreditorFinancialAccount wewnątrz ram:SpecifiedTradeSettlementPaymentMeans (CII). Bez rachunku urząd nie może dokonać płatności. Błąd występuje zwykle, gdy w danych podstawowych brakuje danych bankowych lub eksporter zapisuje tylko kod.
Jak to naprawić
W UBL dodaj cac:PayeeFinancialAccount do cac:PaymentMeans z cbc:ID (IBAN, BT-84), opcjonalnie cbc:Name (posiadacz rachunku, BT-85) i cac:FinancialInstitutionBranch/cbc:ID (BIC, BT-86). W CII dodaj ram:PayeePartyCreditorFinancialAccount z ram:IBANID i ram:AccountName, a w razie potrzeby także ram:PayeeSpecifiedCreditorFinancialInstitution/ram:BICID. Dla kodu 58 IBAN musi być poprawny (BR-DE-19). Nie dodawaj do przelewu grup karty płatniczej ani polecenia zapłaty (BR-DE-23-b).
Przykład (poprawny)
<cac:PaymentMeans>
<cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
<cac:PayeeFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID>
<cbc:Name>Muster GmbH</cbc:Name>
<cac:FinancialInstitutionBranch><cbc:ID>COBADEFFXXX</cbc:ID></cac:FinancialInstitutionBranch>
</cac:PayeeFinancialAccount>
</cac:PaymentMeans>
Co sprawdza walidator
Sprawdzany element (kontekst):
UBL
/ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')] | /cn:CreditNote/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]Test (XPath):
cac:PayeeFinancialAccountCII
/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementPaymentMeans[normalize-space(ram:TypeCode) = ('30','58')]Test (XPath):
ram:PayeePartyCreditorFinancialAccount
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
BR-DE-24-bJeśli BT-81 „Kod środka płatności” zawiera kod płatności kartą (48, 54, 55),…BR-DE-25-bJeśli BT-81 „Kod środka płatności” zawiera kod polecenia zapłaty (59), BG-17 i…BR-DE-19Identyfikator rachunku płatniczego (BT-84) nie jest poprawnym IBANBR-DE-20„Rachunek obciążany” musi zawierać poprawny IBAN, jeśli „Kod środka płatności”…BR-DE-23-bJeśli BT-81 „Kod środka płatności” zawiera kod przelewu (30, 58),…BR-DE-24-aJeśli BT-81 „Kod środka płatności” zawiera kod płatności kartą (48, 54, 55),…BR-DE-25-aJeśli BT-81 „Kod środka płatności” zawiera kod polecenia zapłaty (59), dokładnie…BR-DE-1Brak instrukcji płatności (BG-16)
Najczęstsze pytania
Co oznacza BR-DE-23-a?
BR-DE-23-a to reguła xrechnung: If BT-81 "Payment means type code" contains a code for credit transfers (30, 58), BG-17 "CREDIT TRANSFER" must be transmitted.
Czy moja faktura zostanie odrzucona z powodu BR-DE-23-a?
Tak. BR-DE-23-a ma status „krytyczny”; walidatory (KSeF, punkty dostępowe Peppol, KoSIT) odrzucają fakturę do czasu poprawienia błędu.
Jakich formatów dotyczy BR-DE-23-a?
XRechnung w składni UBL lub CII, w tym PDF ZUGFeRD / Factur-X z profilem XRECHNUNG. Faktury dla niemieckich instytucji publicznych muszą ją spełniać. Składnia: UBL i CII.
Źródło: XRechnung 3.0.2, schematron 2.6.0 (KoSIT, September 2026). Katalog wygenerowany z oficjalnych zestawów reguł dnia 2026-10-15.