Error codes

BR-DE-31: Debited account (BT-91) missing on a direct debit

Severity: fatal · Syntax: CII, UBL

Official message

Wenn "DIRECT DEBIT" BG-19 vorhanden ist, dann muss "Debited account identifier" BT-91 übermittelt werden.

What this means

If DIRECT DEBIT (BG-19) is present, debited account identifier (BT-91) must be transmitted. UBL checks PayerFinancialAccount/cbc:ID when a PaymentMandate exists.

Typical cause

The mandate has a mandate reference but no payer account.

How to fix it

Add the account identifier. For code 59 it should be an IBAN (BR-DE-20).

UBL

<cac:PayerFinancialAccount>
  <cbc:ID>DE89370400440532013000</cbc:ID>
</cac:PayerFinancialAccount>

CII

<ram:IBANID>DE89370400440532013000</ram:IBANID>

Business term

BG-19, BT-91

Related rules

Context and assertion

UBL /ubl:Invoice | /cn:CreditNote

CII /rsm:CrossIndustryInvoice

UBL

not(cac:PaymentMeans/cac:PaymentMandate) or (cac:PaymentMeans/cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID)

CII

(($BT-89-path or $BT-90-path) and $BT-91-path) or $BG-19-not-existing

Check a file now, free of charge

curl -F "file=@rechnung.xml" https://checkxrechnung.com/v1/validate

Questions

What does BR-DE-31 actually check?

If DIRECT DEBIT (BG-19) is present, debited account identifier (BT-91) must be transmitted. UBL checks PayerFinancialAccount/cbc:ID when a PaymentMandate exists.

How do I fix BR-DE-31?

Add the account identifier. For code 59 it should be an IBAN (BR-DE-20).

If BR-DE-31 passes, is the invoice legally compliant?

No. This page helps you read this one Schematron assertion. A pass is not a statement about tax law, portal acceptance, or bank overlays.