Fixture ID: directDebitIncomplete · XPath: /ubl:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID
The invoice carries a DIRECT DEBIT group (BG-19), so the bank assigned creditor identifier (BT-90) must be present. This is your SEPA Gläubiger-Identifikationsnummer — in Germany a 18-character identifier issued by the Bundesbank, of the form DE98ZZZ09999999999 — and it is what the payer's bank uses to check the collection you are about to raise against the mandate they hold. A mandate reference with no creditor identifier names a permission without naming who holds it. Note where it goes in the XML: EN 16931's UBL binding puts BT-90 on the seller party as a cac:PartyIdentification with schemeID="SEPA", not inside the payment group, which is why a document can look complete and still fail this rule.
BR-DE-30Set payment.directDebit.creditorIdentifier to your SEPA creditor identifier. Your bank issues it once, on application; it is not derived from your IBAN or your VAT number.
"directDebit": { "creditorIdentifier": "DE98ZZZ09999999999" }