Skip to content

Error

FX-SCH-A-000479: Each whole-invoice charge needs one VAT details block

In short

Error: fails the selected checks.

FX-SCH-A-000479 means a charge on the whole invoice (BG-21) has no ram:CategoryTradeTax block or has more than one. Keep one block for the charge, with its VAT category (BT-102) and VAT rate (BT-103) where applicable, then export and recheck.

On this page

What it means

Each ram:SpecifiedTradeAllowanceCharge under ram:ApplicableHeaderTradeSettlement whose ram:ChargeIndicator/udt:Indicator is true must contain one ram:CategoryTradeTax. This rule counts the blocks; it does not check the category or rate within them.

Why it matters

The block groups the VAT details associated with the charge, including its category and any applicable rate.

How to fix it

Check the affected charge's VAT details in your invoicing software. In XML, add the missing ram:CategoryTradeTax or consolidate duplicate blocks into one with the correct details. Keep it inside the charge's ram:SpecifiedTradeAllowanceCharge, then export and recheck.

Once the file is corrected, check it again for free: Validate a ZUGFeRD invoice

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

The rule as published

Element 'ram:CategoryTradeTax' must occur exactly 1 times.

Where this rule applies

Rule set Version
Factur-X 1.09 BASIC WL 1.0.9-2
Factur-X 1.09 BASIC 1.0.9-2
Factur-X 1.09 EN 16931 1.0.9-2
Factur-X 1.09 EXTENDED 1.0.9-2
ZUGFeRD 2.5 BASIC WL 2.5.2
ZUGFeRD 2.5 BASIC 2.5.2
ZUGFeRD 2.5 EN 16931 2.5.2
ZUGFeRD 2.5 EXTENDED 2.5.2
Rule text from phive-rules 4.6.4.

Check your file

Drop your e-invoice to see whether FX-SCH-A-000479 still fails, and which other rules do.

Updated 6 November 2026