ErrorPeppol BIS 3.0Input required

PEPPOL-EN16931-R055

Invoice total VAT amount and Invoice total VAT amount in accounting currency MUST have the same operational sign

What does this rule mean?

The total VAT amount (BT-110) and the VAT in accounting currency (BT-111) have different signs.

Both describe the same tax in two currencies — they may differ in magnitude, never in sign.

Official rule message (standard)

Invoice total VAT amount and Invoice total VAT amount in accounting currency MUST have the same operational sign

Where the rule applies

Syntax: CII · UBL

The same rule, expressed twice: UBL and CII name the same fields with different paths. Running a CII file against the UBL rules is why you get errors that mean nothing.

UBL

  • ubl-creditnote:CreditNote | ubl-invoice:Invoice

CII

  • ram:ApplicableHeaderTradeSettlement

Technical test

The rule passes when this Schematron expression holds true:

not(/rsm:CrossIndustryInvoice/rsm:SupplyChainTradeTransaction/ram:ApplicableHeaderTradeSettlement/ram:TaxCurrencyCode) or (ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID = $taxCurrencyCode] < 0 and ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID = $documentCurrencyCode] < 0) or (ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID = $taxCurrencyCode] >= 0 and ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID = $documentCurrencyCode] >= 0)

How to fix it

A missing or incorrect business entry only you can supply. Add or correct it, then re-check.

Correct the sign of the diverging amount.

Correct the affected entry in your XML, then re-check the invoice. Validation runs locally in your browser — your file never leaves your machine.

Check an e-invoice here

Drop an XML or ZUGFeRD PDF file here. Validation runs locally in your browser against EN 16931 — your file never leaves your machine.

100% local — no upload, no account.

Related rules

← Back to the error library