·
The most common KSeF mistakes and how to avoid them
KSeF is precise — small mistakes end in a rejected invoice, a missed invoice or trouble with a payment. Here are the mistakes that come up most often, and how to avoid them.
- 1
Non-compliant XML structure (FA(3))
KSeF requires a strict FA(3) structure — even a small deviation from the schema gets the invoice rejected, with no KSeF number.
Generate XML that conforms to the official FA(3) schema and validate it automatically against the XSD before sending. Test new integrations on the KSeF test environment first. - 2
An invalid token or revoked permissions
Tokens and permissions in KSeF can be invalidated — for example after staff changes or a change of accounting office. Your software then stops sending and downloading invoices.
Check regularly that tokens and permissions are valid. Authentication errors should reach someone who will notice them — not just the logs. - 3
The buyer's NIP is wrong
An invoice with the wrong NIP lands in another company's KSeF or is rejected. Your customer never sees it.
Check the NIP before issuing — its checksum and its entry on the White List of VAT payers (Biała Lista). - 4
No control over incoming invoices
Since 1 February 2026 everyone receives invoices through KSeF, and KSeF sends no notifications about new ones. It's easy to miss an invoice — including one you never ordered.
Review received invoices regularly, at the latest before each batch of payments — by hand in the KSeF 2.0 Taxpayer Application, or automatically in your software or your own system. - 5
A correction issued outside KSeF
A correction to an invoice issued in KSeF is also issued in KSeF — as a corrective invoice.
Make sure your software supports corrective invoices in KSeF (invoice type KOR in the FA(3) structure). - 6
Paying without checking
An invoice from an unknown supplier, for an unexpected amount or with a changed account number may be a mistake or an attempt at fraud.
Approve invoices before paying them. Confirm a known supplier's change of account number by phone, and check the account on the White List before larger transfers. - 7
Transfers not ready for 2027
From 1 January 2027 a transfer paying a KSeF invoice must carry its KSeF number or a collective identifier (Art. 108g of the Polish VAT Act).
Store the KSeF number with every purchase invoice and prepare the way your system creates transfers — the export to your bank or the bank's API.
This English version is a translation of the Polish original, provided for convenience. It describes Polish law, and the Polish version prevails. It is for information only and is not tax advice.