E-invoice error explained
XRechnung has a fixed notation for cash discount (Skonto) in the payment terms (BT-20), so the buyer's software can calculate the deduction.
XRechnung has a fixed notation for cash discount (Skonto) in the payment terms (BT-20), so the buyer's software can calculate the deduction. The rule only checks lines in BT-20 that start with #. Plain text payment terms without # are not affected.
Skonto lines in rsm:CrossIndustryInvoice must match this regular expression: (^|\r?\n)#(SKONTO)#TAGE=([0-9]+#PROZENT=[0-9]+\.[0-9]{2})(#BASISBETRAG=-?[0-9]+\.[0-9]{2})?#$. Information on granting a cash discount (Skonto) must be transmitted in the element "Payment terms" (BT-20) as follows: the first segment is "SKONTO", the second "TAGE=n", the third "PROZENT=n". Percentages are given without a sign and with two decimal places separated by a point. If the amount to be discounted is not BT-115 "Amount due for payment" but only part of the amount due, the base amount for the discount is given as a fourth segment "BASISBETRAG=n" according to the semantic data type Amount. Each entry starts with a #, the segments are separated by a #, and a line ends with a #. A complete Skonto entry must be followed by an XML-conformant line break. All Skonto information must be in capital letters. Additional whitespace (spaces, tabs or line breaks) is not allowed. Characters or text other than those stated above are not allowed.
Source: KoSIT configuration XRechnung 3.0.2 (31 Jan 2026).
Put each discount tier on its own line: #SKONTO#TAGE=14#PROZENT=2.00# followed by a line break. If the discount only applies to part of the amount, add BASISBETRAG: #SKONTO#TAGE=14#PROZENT=2.00#BASISBETRAG=1000.00#. Readable text such as "Payable within 30 days net" may stand on separate lines without #. In CII the field is ram:SpecifiedTradePaymentTerms/ram:Description.
Wrong (CII)
<ram:SpecifiedTradePaymentTerms>
<ram:Description>#Skonto#Tage=14#Prozent=2,0#</ram:Description>
</ram:SpecifiedTradePaymentTerms>Right (CII)
<ram:SpecifiedTradePaymentTerms>
<ram:Description>#SKONTO#TAGE=14#PROZENT=2.00#
</ram:Description>
</ram:SpecifiedTradePaymentTerms>Sales / Project Operations: Sales and Project Operations have no e-invoice output out of the box. In the WBS Invoice Accelerator for Dynamics 365 the payment term is plain text in BT-20, for example "Zahlbar innerhalb 14 Tagen ohne Abzug." The Accelerator writes no Skonto lines, so BR-DE-18 does not come from its output.
Business Central: Cash discount is set up in Payment Terms with Discount % and Discount Date Calculation. If your export turns these into Skonto lines, check their format in the file.
Check your invoice for free. The validator shows every finding with an explanation and its location in the XML.