Back to the error catalogue
PEPPOL-EN16931-R005BT-6
input

The VAT accounting currency equals the invoice currency

`VAT accounting currency code` (BT-6), when present, must differ from `Invoice currency code` (BT-5).

Only the issuer holds this value: Factlint reports it and never fabricates it. Test your invoice to find out whether it is affected.

The message your validator prints

Copied verbatim from the sealed artefact: this is the exact sentence the check prints when this rule fails.

VAT accounting currency code MUST be different from invoice currency code when provided.

Quoted from schematron-xrechnung 3.0.2, licensed under Apache-2.0.

Common searches around this code

These phrases mirror what an integrator searches for: code, syntax, rule, business field and correction.

PEPPOL-EN16931-R005 The VAT accounting currency equals the invoice currencyPEPPOL-EN16931-R005 XRechnung Schematron package (KoSIT)PEPPOL-EN16931-R005 BT-6VAT accounting currency code MUST be different from invoice currency code when provided.PEPPOL-EN16931-R005 correction

Test your file with this error in mind

Upload the invoice involved: the report will say whether this code appears, where it appears in the document, and whether Factlint can only report it or also fix it.

To automate this check in an ERP flow, call the validation API and link every returned code to its public page.

Why this error happens

BT-6 exists only for the case where VAT is declared in a currency other than the invoice's. Repeating it identically adds nothing and suggests to the recipient a conversion that does not happen — hence the refusal rather than a tolerance.

How to fix it

Drop BT-6 if VAT is declared in the invoice currency. Factlint does not remove a VAT field: it is financial data (rule 1).

XML correction example

BEFORE (invalid)
<ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode> … <ram:TaxCurrencyCode>EUR</ram:TaxCurrencyCode>
AFTER (compliant)
<ram:InvoiceCurrencyCode>EUR</ram:InvoiceCurrencyCode>  <!-- ram:TaxCurrencyCode retiré -->