PEPPOL-EN16931-R053: Invoice total VAT amount in invoice currency present more than once
Official message
[PEPPOL-EN16931-R053] No more than one tax total amount must be provided where currency id equals document currency code.
[PEPPOL-EN16931-R053] Only one tax total with tax subtotals MUST be provided.
- Severity
- Error The invoice is invalid and may be rejected by the recipient.
- Applies to
- XRechnung (CII), XRechnung (UBL)
What does this mean?
The invoice total VAT amount in invoice currency (BT-110) may only occur once. The invoice contains it more than once or, in UBL, not exactly once.
The rule originates from Peppol BIS Billing 3.0 and is applied in the XRechnung validation. CII: no more than one ram:TaxTotalAmount with currencyID equal to the invoice currency (BT-5). UBL: only one cac:TaxTotal with cac:TaxSubtotal must be provided.
Typical causes
CII: the VAT amount in accounting currency (BT-111) was output with the same currency as BT-5, e.g. because the VAT accounting currency (BT-6) equals the invoice currency.
UBL: a separate cac:TaxTotal was created for each VAT rate instead of several cac:TaxSubtotal in one cac:TaxTotal.
UBL: the VAT breakdown (cac:TaxSubtotal) is missing completely.
How to fix the error
State BT-110 exactly once in invoice currency.
Only state BT-6 and BT-111 if the VAT has to be stated additionally in a different currency (see PEPPOL-EN16931-R005).
UBL: combine all VAT breakdowns (BG-23) as cac:TaxSubtotal in one common cac:TaxTotal.
Generate and validate the invoice again.
In E-Rechnungsfreund
In the invoice form, "Experte" view, section "Rechnungsdetails" (invoice details), choose "– nicht angegeben –" (not specified) in the field "Steuerwährung (BT-6)" if the VAT is only stated in the invoice currency, and do not choose a VAT accounting currency equal to "Währung (BT-5)".
Example
Wrong
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
...
<ram:TaxTotalAmount currencyID="EUR">63.75</ram:TaxTotalAmount>
<ram:TaxTotalAmount currencyID="EUR">63.75</ram:TaxTotalAmount>
...
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
Correct
<ram:SpecifiedTradeSettlementHeaderMonetarySummation>
...
<ram:TaxTotalAmount currencyID="EUR">63.75</ram:TaxTotalAmount>
...
</ram:SpecifiedTradeSettlementHeaderMonetarySummation>
For developers: test expression per syntax
XRechnung (CII) (CII)
Context: ram:ApplicableHeaderTradeSettlement
count(ram:SpecifiedTradeSettlementHeaderMonetarySummation/ram:TaxTotalAmount[@currencyID = $documentCurrencyCode]) <=1
XRechnung (UBL) (UBL)
Context: ubl-creditnote:CreditNote | ubl-invoice:Invoice
count(cac:TaxTotal[cac:TaxSubtotal]) = 1
Related validation rules
- PEPPOL-EN16931-R001: Business process type (BT-23) is missing
- PEPPOL-EN16931-R005: VAT accounting currency (BT-6) equals the invoice currency (BT-5)
- PEPPOL-EN16931-R008: The invoice contains empty elements
- PEPPOL-EN16931-R010: Buyer electronic address (BT-49) is missing
- PEPPOL-EN16931-R020: Seller electronic address (BT-34) is missing
- PEPPOL-EN16931-R040: Allowance or charge amount does not match base amount and percentage
Last updated:
Explanation of the validation rule, not legal or tax advice.