Reference
Markdown exportBR-DE-30 Direct debit requires the bank assigned creditor identifier
Under the German XRechnung profile, rule BR-DE-30 requires the bank-assigned SEPA creditor identifier in BT-90 (Gläubiger-Identifikationsnummer) as soon as the invoice contains the direct debit group BG-19, for payment means code 49 as well as for code 59. BG-19 is present when the invoice carries direct debit data: in UBL a cac:PaymentMandate (mandate reference BT-89 or debited account BT-91), in CII any of BT-89, BT-90 or BT-91. The payment means code alone does not trigger or waive the rule. The SEPA creditor identifier (e.g. "DE98ZZZ09999999999" in Germany) is issued by national central banks (such as Deutsche Bundesbank) and authorizes the seller to collect SEPA core and B2B direct debits.
Problem Description
ERROR
German XRechnung rule (KoSIT, BR-DE) · XRechnung 3.0
Context and Significance
BR-DE-30 checks whether BG-19 is present, not which payment means code is used: an invoice with code 49 and a mandate reference BT-89 fails the same way as one with code 59. Without BT-90 the debtor cannot match the collection to the creditor and the signed SEPA mandate.
Solution
In your ERP banking or direct debit settings, configure your official SEPA creditor identifier (e.g. DE98ZZZ09999999999). In UBL 2.1 syntax, populate <cac:AccountingSupplierParty><cac:Party><cac:PartyIdentification><cbc:ID schemeID="SEPA">DE98ZZZ09999999999</cbc:ID></cac:PartyIdentification></cac:Party></cac:AccountingSupplierParty>. In UN/CEFACT CII syntax, populate <ram:CreditorReferenceID> under <ram:ApplicableHeaderTradeSettlement>. If the invoice is not paid by direct debit, remove all direct debit data that forms BG-19 (BT-89, BT-90 and BT-91) and use a credit transfer code such as 58 or 30. Changing only BT-81 does not resolve the error while BG-19 remains.
Quick actions
Valid Examples
- Direct debit group BG-19 with mandate reference BT-89 and seller SEPA creditor identifier BT-90 = "DE98ZZZ09999999999" in PartyIdentification (BT-81 = 59 or 49)
- Credit transfer code BT-81 = 58 without any direct debit data (no BG-19), so BT-90 is not required
Invalid Examples
- Payment means code 49 with mandate reference BT-89 (BG-19 present) but no PartyIdentification with SEPA scheme for BT-90
- Payment means code 59 with a PaymentMandate where the creditor identifier is printed only in a note instead of BT-90
Code Examples
<cac:AccountingSupplierParty>
<cac:Party>
<cac:PartyIdentification>
<cbc:ID schemeID="SEPA">DE98ZZZ09999999999</cbc:ID>
</cac:PartyIdentification>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:PaymentMeans>
<cbc:PaymentMeansCode>49</cbc:PaymentMeansCode>
<cac:PaymentMandate>
<cbc:ID>MANDATE-2026-001</cbc:ID>
<cac:PayerFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID>
</cac:PayerFinancialAccount>
</cac:PaymentMandate>
</cac:PaymentMeans><cac:AccountingSupplierParty>
<cac:Party>
<cac:PartyName><cbc:Name>Lieferant GmbH</cbc:Name></cac:PartyName>
</cac:Party>
</cac:AccountingSupplierParty>
<cac:PaymentMeans>
<cbc:PaymentMeansCode>49</cbc:PaymentMeansCode>
<cac:PaymentMandate>
<cbc:ID>MANDATE-2026-001</cbc:ID>
<cac:PayerFinancialAccount>
<cbc:ID>DE89370400440532013000</cbc:ID>
</cac:PayerFinancialAccount>
</cac:PaymentMandate>
</cac:PaymentMeans>