Skip to main content

BR-DE-1 Payment instructions must be provided

Under the German national standard XRechnung (and E-Rechnungsverordnung - E-Rech-V), every electronic invoice submitted to federal, state, or municipal public sector buyers must contain at least one payment instructions group (BG-16). While the European baseline standard EN 16931 allows omitting payment instructions when payment is handled out-of-band or pre-settled, German public procurement mandates explicit payment instructions so that automated public cash management systems (Bundeskasse, Landesoberkassen) can disburse funds directly to the designated bank account without manual clerk intervention.

Problem Description

ERROR

German XRechnung rule (KoSIT, BR-DE) · XRechnung 3.0

Context and Significance

Payment instructions form the bridge between document approval and accounting execution. If BG-16 is absent, KoSIT-based XRechnung validation reports an error, and recipient platforms such as OZG-RE (direct federal administration, more than 170 indirect federal bodies and several Länder) and other state or municipal portals reject the invoice before it reaches the procurement department.

Solution

To resolve this error in your ERP or billing system (such as SAP, DATEV, Microsoft Dynamics 365, or Odoo), configure a valid payment method on the invoice header. In UBL 2.1 syntax, add a <cac:PaymentMeans> container element with a valid UNCL 4461 code in <cbc:PaymentMeansCode> (e.g. 58 for SEPA credit transfer, 30 for credit transfer, or 59 for SEPA direct debit). For credit transfers (codes 30, 58), also provide the payee bank account IBAN in <cac:PayeeFinancialAccount><cbc:ID>. In UN/CEFACT CII syntax, add <ram:SpecifiedTradeSettlementPaymentMeans> under <ram:ApplicableHeaderTradeSettlement> with <ram:TypeCode> and <ram:PayeePartyCreditorFinancialAccount>.

Quick actions

Valid Examples

  • BG-16 present with payment means code 58 (SEPA credit transfer) and payee IBAN DE89370400440532013000
  • BG-16 present with payment means code 59 (SEPA direct debit) and mandate reference

Invalid Examples

  • Invoice header contains total amounts but omits the cac:PaymentMeans / SpecifiedTradeSettlementPaymentMeans block entirely
  • Invoice relies solely on payment terms free text (BT-20) without structured payment instructions in BG-16

Code Examples

Valid XML
<cac:PaymentMeans>
  <cbc:PaymentMeansCode>58</cbc:PaymentMeansCode>
  <cac:PayeeFinancialAccount>
    <cbc:ID>DE89370400440532013000</cbc:ID>
  </cac:PayeeFinancialAccount>
</cac:PaymentMeans>
Invalid XML
<cac:LegalMonetaryTotal>
  <cbc:LineExtensionAmount currencyID="EUR">100.00</cbc:LineExtensionAmount>
  <cbc:TaxExclusiveAmount currencyID="EUR">100.00</cbc:TaxExclusiveAmount>
  <cbc:TaxInclusiveAmount currencyID="EUR">119.00</cbc:TaxInclusiveAmount>
  <cbc:PayableAmount currencyID="EUR">119.00</cbc:PayableAmount>
</cac:LegalMonetaryTotal>

Affected Fields

Validation Tools