Skip to content

Warning

CII-DT-052: Keep exemption reason codes in ApplicableTradeTax

In short

Warning: worth checking.

CII-DT-052 warns that ExemptionReasonCode is a child of a CII tax element other than ApplicableTradeTax. Remove it from that location. If it describes a VAT breakdown entry, record it in that entry's ApplicableTradeTax.

On this page

What it means

For ram elements whose names end in TradeTax, the rule warns if a direct ram:ExemptionReasonCode child is present unless the tax element itself is ram:ApplicableTradeTax. It does not require header settlement ancestry, so a line's ApplicableTradeTax is also allowed by this test.

Why it matters

The VAT exemption reason code for a VAT breakdown entry is BT-121. This rule restricts the parent element's name; it does not decide which VAT category or exemption reason applies.

How to fix it

Remove ram:ExemptionReasonCode from affected tax elements other than ram:ApplicableTradeTax. If you need to retain the code as BT-121, put it in ApplicableTradeTax for the relevant invoice-level VAT breakdown entry. Use a reason appropriate to your category: E means exempt from VAT, while AE means reverse charge. Generate the file again and recheck it.

Once the file is corrected, check it again for free: Validate an invoice against EN 16931

Or fix the invoice in a form and download the corrected file, for 1 credit: Fix a rejected e-invoice

The rule as published

ExemptionReasonCode should not be present

Where this rule applies

Rule set Version
EN 16931 (CII) 1.3.17
XRechnung 3.0 (CII) 3.0.2
NLCIUS (CII) 1.0.3.13
France CTC (CII) 1.4.0-04
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether CII-DT-052 still fails, and which other rules do.

Updated 6 November 2026