Back to Compliance Hub
Critical

BR-DE-1

Payment Instructions Missing (BG-16)

What This Error Means

BR-DE-1 is a rule of the German CIUS XRechnung: every invoice must contain the group PAYMENT INSTRUCTIONS (BG-16). In UBL this is cac:PaymentMeans, in CII ram:SpecifiedTradeSettlementPaymentMeans. EN 16931 treats BG-16 as optional, so a file that passes a plain EN 16931 check can still fail here. The rule is fatal. The KoSIT validator reports it as 'Eine Rechnung (INVOICE) muss Angaben zu "PAYMENT INSTRUCTIONS" (BG-16) enthalten.' and recommends rejecting the invoice.

Why this happens

The KoSIT Schematron checks one thing only: whether cac:PaymentMeans exists under the Invoice or CreditNote root (in CII: ram:SpecifiedTradeSettlementPaymentMeans in the header settlement). If it is missing, BR-DE-1 fires, whatever the amount due. XRechnung makes BG-16 mandatory because public buyers pay in automated workflows and need the payment method in structured form. Common causes: the invoicing software prints the bank details only in the PDF letterhead or in a free-text note (BT-22); the export leaves out cac:PaymentMeans when the invoice is already paid; a generic Peppol or B2B template is used in which payment details are optional; or, in CII, the IBAN was written into the payment terms (BT-20, ram:SpecifiedTradePaymentTerms) instead of the payment means group.

How to Fix It

Add a cac:PaymentMeans block. In UBL it sits after the parties (and after cac:Delivery, if present) and before cac:PaymentTerms and cac:TaxTotal. It needs at least the payment means type code BT-81 (cbc:PaymentMeansCode). For a bank transfer, use 58 (SEPA credit transfer) or 30 (credit transfer) and put your IBAN in cac:PayeeFinancialAccount/cbc:ID (BT-84).

Step-by-step

1) Decide how the buyer is supposed to pay and pick the code for BT-81: 58 for a SEPA credit transfer, 30 for another credit transfer, 59 for a SEPA direct debit, 48 for a bank card, 10 for cash. 2) Add cac:PaymentMeans with cbc:PaymentMeansCode. Optional but useful: cbc:PaymentID (BT-83, remittance information), for example the invoice number. 3) For codes 30 and 58, add cac:PayeeFinancialAccount with the IBAN in cbc:ID (BT-84). XRechnung checks this with BR-DE-23-a, EN 16931 with BR-61, and BR-DE-19 warns if the IBAN for code 58 is malformed. 4) For code 59, add cac:PaymentMandate with the mandate reference (BT-89) and the debited IBAN (BT-91), plus your SEPA creditor identifier (BT-90, see BR-DE-30). 5) For codes 48, 54 and 55, add cac:CardAccount with the last digits of the card number (BR-DE-24-a). 6) Validate again.

XML Example
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
  <cbc:PaymentID>RE-2026-4711</cbc:PaymentID>
  <cac:PayeeFinancialAccount>
    <cbc:ID>DE02120300000000202051</cbc:ID>
    <cbc:Name>Muster Handels GmbH</cbc:Name>
  </cac:PayeeFinancialAccount>
</cac:PaymentMeans>

Fix Automatically

Upload your invoice to our Smart Repair engine. It checks the file against the full KoSIT rule set, including BR-DE-1, and corrects supported fields with a GoBD audit trail.

Open Smart Repair

Frequently asked questions

The invoice is already paid. Do I still need BG-16?

Yes. BR-DE-1 applies to every XRechnung, including one with an amount due of 0.00. State how it was paid, for example code 10 for cash or 48 for a card payment (with cac:CardAccount), and put the paid amount in BT-113 (cbc:PrepaidAmount) so that BT-115 is 0.00.

Is it enough to print my bank details on the PDF?

No. With XRechnung the XML file is the invoice. A PDF attachment or letterhead is not evaluated by the validator, and the buyer's system reads payment details only from BG-16.

Which code do I use for a normal bank transfer?

58 (SEPA credit transfer) for euro transfers within the SEPA area; 30 is the generic credit transfer. Both require the CREDIT TRANSFER group BG-17 with an account identifier (BR-DE-23-a).

Related Errors

Other commonly encountered validation errors