Skip to content

BR-DEX – XRechnung extension

BR-DEX-11: third party payment without an amount (BT-DEX-002)

ErrorXRechnung business rule (KoSIT)

The rule's own wording

[BR-DEX-11] Das Element "Third party payment amount" BT-DEX-002 muss übermittelt werden, wenn die Gruppe "THIRD PARTY PAYMENT" (BG-DEX-09) übermittelt wird.

Source: KoSIT XRechnung, version 3.0.2 (Schematron 2.6.0)

Meaning of the rule

Your invoice contains a third party payment but does not say how much that third party pays. Without an amount the group is worthless: the recipient can neither calculate their own share nor check the invoice, because in the extension the amount due depends on the sum of the third party payments. The extension therefore requires the amount in every group. The error usually arises when the kind of payment is known but the amount is fixed only later.

What usually goes wrong

  • The amount of the subsidy was not yet fixed when the invoice was issued.
  • The amount was written into the invoice text instead of the field.
  • The group was created as a placeholder and never filled.

The fix in the XML

Enter in every cac:PrepaidPayment group cbc:PaidAmount with the amount in the invoice currency, rounded to two decimals, and recalculate the amount due. If the amount is not fixed, leave the group out.

Before – invalid
<cac:PrepaidPayment>
  <cbc:ID>Subsidy</cbc:ID>
</cac:PrepaidPayment>
After – corrected
<cac:PrepaidPayment>
  <cbc:ID>Subsidy</cbc:ID>
  <cbc:PaidAmount currencyID="EUR">300.00</cbc:PaidAmount>
</cac:PrepaidPayment>

Questions and answers

May the amount be zero?

Technically yes, the field is then filled. A third party payment of zero makes no sense, though; leave the group out until an amount is fixed.

Must the amount be in the invoice currency?

Yes. Like every amount it carries the attribute currencyID with the invoice currency BT-5; other currencies are not permitted.

EN 16931 fields

  • BT-115
  • BT-113

See also

Check your invoice

The XRechnung validator reports this rule with the line number and location – right in your browser, without upload.

Open the XRechnung validator

The rule in detail
UBL · Context (XPath)
/ubl:Invoice/cac:PrepaidPayment[$isExtension]
UBL · Schematron test
cbc:PaidAmount[boolean(normalize-space(xs:string(.)))]

Explanation written on 14 September 2026