Skip to content

BR-DEX – XRechnung extension

BR-DEX-14: third party payment currency differs from the invoice

ErrorXRechnung business rule (KoSIT)

Official message

[BR-DEX-14] Die Währungsangabe von "Third party payment amount" BT-DEX-002 muss BT-5 ("Invoice currency code") entsprechen.

Source: KoSIT XRechnung, version 3.0.2 (Schematron 2.6.0)

What the message means

The amount of a third party payment in your invoice is given in another currency than the invoice itself, for example in CHF on an invoice in EUR. All amounts of an invoice must carry the same currency, because the amount due is calculated from them and nobody can add amounts of different currencies. The extension checks the currencyID attribute of the third party payment against the invoice currency code and rejects a difference.

Common causes

  • The subsidy was granted in a foreign currency and copied without conversion.
  • The currencyID attribute was copied from a template with a fixed currency.
  • The invoice currency was changed, the third party payment was not.

How to fix it

Convert the amount into the invoice currency, enter it rounded in cbc:PaidAmount and set currencyID to the value of cbc:DocumentCurrencyCode. The exchange rate can be named in the description.

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

Frequently asked

May the invoice itself be in a foreign currency?

Yes, BT-5 can be any ISO 4217 currency. What matters is that the third party payment carries the same currency as the invoice.

What about the VAT in euros on a foreign-currency invoice?

For that the norm provides the separate VAT amount in accounting currency BT-111 with BT-6; the third party payment, however, always follows the invoice currency.

Fields concerned

  • BT-5
  • BT-115
  • BT-113

Related rules

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

Technical details
UBL · Context (XPath)
/ubl:Invoice/cac:PrepaidPayment[$isExtension]
UBL · Schematron test
cbc:PaidAmount/@currencyID = parent::node()/cbc:DocumentCurrencyCode

Explanation written on 14 September 2026