What it means
When a line includes ram:GrossPriceProductTradePrice, that block must contain exactly one ram:ChargeAmount. It records the item gross price (BT-148), meaning the unit price before price discounts, not a price including VAT. ChargeAmount here is the price amount, not a surcharge. The rule applies to the Basic, EN 16931 and Extended profiles of Factur-X and ZUGFeRD.
Why it matters
This amount records the price before any price discount. A block with no amount or multiple amount elements does not match the required structure.
How to fix it
Check the affected line's price before discount. If you create the XML yourself, add the missing ram:ChargeAmount or retain only the correct one inside ram:GrossPriceProductTradePrice. Remove the whole optional block only if it is not needed, keeping the unit price excluding VAT and any discount calculation consistent. Export again 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:ChargeAmount' must occur exactly 1 times. Where this rule applies
| Rule set | Version |
|---|---|
| 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 | 2.5.2 |
| ZUGFeRD 2.5 EN 16931 | 2.5.2 |
| ZUGFeRD 2.5 EXTENDED | 2.5.2 |
Check your file
Drop your e-invoice to see whether FX-SCH-A-000273 still fails, and which other rules do.
Related rules
- FX-SCH-A-000274 A line can have only one price discount (Basic and EN 16931)
- FX-SCH-A-000275 Use an allowed unit code for the price base quantity
- FX-SCH-A-000276 Each line must have exactly one invoiced quantity
- FX-SCH-A-000277 A late payment penalty period needs a unit code
- FX-SCH-A-000278 Each line must have exactly one set of VAT details
- FX-SCH-A-000279 Each line must have exactly one line total block