Official rule text
[XML_DISCOURAGED_CHARACTER_MORE] Summary: further discouraged characters beyond the individually reported ones
Why this error occurs
KSeF checks the FA(3) XML in two stages: XSD schema (structure, element order, data types, patterns such as NIP or dates) and semantic rules from the Ministry of Finance information sheet (consistency of amounts, annotations P_16 to P_23, roles of Podmiot2/Podmiot3, bank account formats, currency rates).
How to fix it
Fix the element named in the message. For XSD errors compare the element order and value pattern with the FA(3) schema; for semantic errors apply the cause and fix hints listed on this page. Re-validate before submitting to KSeF: a rejected invoice has no KSeF number and is not issued.
What the validator checks
Check your invoice
Drop your XML or PDF on the validator and every failed rule is linked to its page here. Free, no account, the file is not stored.
Same check via API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validateRelated rules
XML_BOM_PRESENTFile starts with a UTF-8 BOMXML_DISCOURAGED_CHARACTERCharacter discouraged by the W3C XML spec ([#x7F-#x84], [#x86-#x9F], [#xFDD0-#xFDEF],…XML_ENCODING_NOT_UTF8XML declaration names an encoding other than UTF-8XML_PROCESSING_INSTRUCTIONXML processing instruction (e.gXML_PROCESSING_INSTRUCTION_MORESummary
Frequently asked questions
What does XML_DISCOURAGED_CHARACTER_MORE mean?
XML_DISCOURAGED_CHARACTER_MORE is a ksef fa(3) rule: Summary: further discouraged characters beyond the individually reported ones
Will my invoice be rejected because of XML_DISCOURAGED_CHARACTER_MORE?
Yes. XML_DISCOURAGED_CHARACTER_MORE is flagged "fatal"; validators (KoSIT, Peppol access points, the German ZRE/OZG-RE portals, KSeF) reject the invoice until it is fixed.
Which formats does XML_DISCOURAGED_CHARACTER_MORE apply to?
Structured invoices (FA(3) schema) submitted to the Polish KSeF. XSD codes come from the schema, semantic codes from the Ministry of Finance information sheet; KSeF rejects invoices that fail an error-level rule. Syntax: FA3.
Source: KSeF FA(3) schema 1-0E + semantic rules (@ksefuj/validator 0.4). Catalogue generated from the official rule sets on 2026-10-15.