Skip to content

BR-DE-19: IBAN for SEPA credit transfer (BT-84) is invalid

Official message

[BR-DE-19] "Payment account identifier" (BT-84) soll eine korrekte IBAN enthalten, wenn in "Payment means type code" (BT-81) mit dem Code 58 SEPA als Zahlungsmittel gefordert wird.

XRechnung (CII) · Warning · Message language: German · Version: xrechnung-3.0.2-validator-configuration-2026-08-31

[BR-DE-19] "Payment account identifier" (BT-84) soll eine korrekte IBAN enthalten, wenn in "Payment means type code" (BT-81) mit dem Code 58 SEPA als Zahlungsmittel gefordert wird.

XRechnung (UBL) · Warning · Message language: German · Version: xrechnung-3.0.2-validator-configuration-2026-08-31
Severity
Warning Note: this does not make the invoice invalid, but it should be checked.
Applies to
XRechnung (CII), XRechnung (UBL)
Affected fields
BT-84, BT-81

What does this mean?

If SEPA credit transfer (code 58 in BT-81) is the payment means, the payment account identifier (BT-84) should be a valid IBAN. The given identifier does not have the IBAN format or its check digits are wrong. The message is a warning.

Typical causes

A typo or transposed digits in the IBAN make the check digits wrong.
A national account number or the BIC was entered instead of the IBAN.
The IBAN does not start with two capital letters (country code) and two digits.

How to fix the error

Check the payee's IBAN and enter it correctly; spaces are allowed and are removed before the check.
CII: ram:SpecifiedTradeSettlementPaymentMeans/ram:PayeePartyCreditorFinancialAccount/ram:IBANID, UBL: cac:PaymentMeans/cac:PayeeFinancialAccount/cbc:ID.
If there is no IBAN, use another payment means type code instead of 58 (e.g. 30 for credit transfer in general).
Generate and validate the invoice again.

In E-Rechnungsfreund

In the invoice form ("Experte" view), section "Zahlungsmittel (BG-16)" (payment means), correct the field "IBAN (BT-84)" of the payment means with "Zahlungscode (BT-81)" 58. An invalid format is already flagged there while typing.

Example

Wrong

<ram:SpecifiedTradeSettlementPaymentMeans>
  <ram:TypeCode>58</ram:TypeCode>
  <ram:PayeePartyCreditorFinancialAccount>
    <ram:IBANID>DE02120300000000202052</ram:IBANID>
  </ram:PayeePartyCreditorFinancialAccount>
</ram:SpecifiedTradeSettlementPaymentMeans>

Correct

<ram:SpecifiedTradeSettlementPaymentMeans>
  <ram:TypeCode>58</ram:TypeCode>
  <ram:PayeePartyCreditorFinancialAccount>
    <ram:IBANID>DE02120300000000202051</ram:IBANID>
  </ram:PayeePartyCreditorFinancialAccount>
</ram:SpecifiedTradeSettlementPaymentMeans>
For developers: test expression per syntax

XRechnung (CII) (CII)

Context: /rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:SpecifiedTradeSettlementPaymentMeans[normalize-space(ram:TypeCode) = ('30','58')]

not(normalize-space(ram:TypeCode) = '58') or xr:checkIBAN(string(ram:PayeePartyCreditorFinancialAccount/ram:IBANID))

XRechnung (UBL) (UBL)

Context: /ubl:Invoice/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')] | /cn:CreditNote/cac:PaymentMeans[normalize-space(cbc:PaymentMeansCode) = ('30','58')]

not(normalize-space(cbc:PaymentMeansCode) = '58') or xr:checkIBAN(string(cac:PayeeFinancialAccount/cbc:ID))

Related validation rules

  • BR-DE-1: Payment instructions (BG-16) are missing
  • BR-DE-10: Deliver to city (BT-77) is missing
  • BR-DE-11: Deliver to post code (BT-78) is missing
  • BR-DE-14: VAT category rate (BT-119) is missing in the VAT breakdown
  • BR-DE-15: Buyer reference (BT-10) is missing
  • BR-DE-16: Seller VAT ID, tax number or tax representative is missing

Last updated:
Explanation of the validation rule, not legal or tax advice.