AttestwireRule referenceBR-DE-31

BR-DE-31 An XRechnung direct debit requires the debited account

noun · XRechnung · fatal · BG-19 / BT-91

For a sample invoice, the library reports: The invoice carries a DIRECT DEBIT group (BG-19), so the debited account identifier (BT-91) must be present. It is the account the money will be taken from — the payer's IBAN, not yours.

Diese Regel auf Deutsch: BR-DE-31 — auf Deutsch erklärt.

Business term
BG-19 / BT-91
Severity
fatal

The fix

Set payment.directDebit.debitedAccount to the payer's IBAN, exactly as it appears on the signed mandate. If you do not hold it, you do not have a usable mandate, and the invoice should ask for a credit transfer instead (payment.meansCode "58" with payment.iban).

A passing value

the shape this field expects
"directDebit": { "debitedAccount": "DE98700500001234567890" }

What the library returns

The full error returned by @attestwire/en16931. It includes the rule ID, affected field and suggested correction. Developers can use this object in their application:

TeachingError
{
  "rule": "BR-DE-31",
  "field": [
    "BG-19",
    "BT-91"
  ],
  "severity": "fatal",
  "message": "The invoice carries a DIRECT DEBIT group (BG-19), so the debited account identifier (BT-91) must be present. It is the account the money will be taken from — the payer's IBAN, not yours. Under a direct debit the buyer does not act at all: they are told, on this document, which of their accounts you intend to draw on and under which mandate, and that disclosure is the only notice they get before the money moves.",
  "fix": "Set payment.directDebit.debitedAccount to the payer's IBAN, exactly as it appears on the signed mandate. If you do not hold it, you do not have a usable mandate, and the invoice should ask for a credit transfer instead (payment.meansCode \"58\" with payment.iban).",
  "example": "\"directDebit\": { \"debitedAccount\": \"DE98700500001234567890\" }",
  "xpath": "/ubl:Invoice/cac:PaymentMeans/cac:PaymentMandate/cac:PayerFinancialAccount/cbc:ID",
  "docsUrl": "https://attestwire.com/rules/BR-DE-31"
}

xpath is always a UBL path. On a CII invoice, look for the matching CII field instead.