Skip to content

Error

FX-SCH-A-000548: Use a permitted line charge reason code

In short

Error: fails the selected checks.

FX-SCH-A-000548 means your line charge has a non-empty reason code, without a listID attribute, that the Basic profile does not permit. Use a permitted UNTDID 7161 code that describes the charge, such as FC for freight service, or remove the code and provide a written reason.

On this page

What it means

This rule checks ram:ReasonCode, the line charge reason code (BT-145), within a line charge (BG-28) marked by ram:ChargeIndicator/udt:Indicator equal to true. It applies only when ram:ReasonCode has no listID attribute and compares non-empty values with the Basic profile's permitted charge reason codes. Empty values pass this test. Elements with a listID attribute, even an empty one, are outside its context.

Why it matters

A shared code list gives charge reasons a consistent meaning across different invoicing systems. This rule covers only the variant without listID.

How to fix it

Check why you are applying the line charge. For the variant without listID, put an appropriate permitted UNTDID 7161 code in ram:ReasonCode. Alternatively, remove ram:ReasonCode and put a written explanation in ram:Reason. Do not add listID merely to avoid this check. Export and check the corrected file.

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

Value of 'ram:ReasonCode[not (@listID)]' is not allowed.

Where this rule applies

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

Check your file

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

Updated 6 November 2026