How the tools calculate and read

Every tool on this site runs in your browser. The XML invoice you open, the number you check and the amounts you type stay on your device: no upload, no account, nothing stored. The basis is the law as published in the Journal of Laws, the Ministry of Finance’s KSeF pages and the KSeF 2.0 technical documentation. Last reading: 25 October 2026.

Obligation and deadline rules

The obligation, deadline, limit and penalty calculators read their values from a single file in which every figure carries its source and reading date. That is where these come from: receiving invoices through KSeF from 1 February 2026; issuing from 1 February 2026 for businesses with 2024 sales above PLN 200,000,000 (Article 145l) and from 1 April 2026 for everyone else; the PLN 10,000 gross monthly limit until 31 December 2026 (Article 145m); and tills and receipts with a tax ID up to PLN 450 outside KSeF until the same day (Article 145n), all under the Act of 5 August 2025 (Journal of Laws 2025 item 1203). Exclusions come from regulation 2025 item 1740 and the Ministry page on the scope of mandatory KSeF.

We count the limit the way the Ministry explains it: only invoices that must be issued in KSeF, in the month of their issue date; the right to invoice outside KSeF ends with the invoice that crosses the limit and does not come back in later months (questions 9 to 14).

Penalties

The penalty simulator applies Article 106ni(1) of the VAT Act: up to 100% of the VAT on the invoice, or up to 18.7% of the total amount due when the invoice shows no VAT. The provision takes effect on 1 January 2027 under Article 23 point 4 of the Act of 16 June 2023 as amended by the Act of 5 August 2025. The bill moving this to 1 January 2028 (print no. 3245) is shown alongside, labelled as a bill, until it is passed and published.

Offline modes and working days

Offline sending deadlines follow Articles 106nda(2), 106nf(4) and 106nh(2). A working day here is Monday to Friday excluding the holidays in the Public Holidays Act: New Year, Epiphany, Easter Sunday and Monday, 1 and 3 May, Pentecost Sunday, Corpus Christi, 15 August, 1 and 11 November, Christmas Eve (since 2025), and 25 and 26 December. Easter is computed with the Gregorian algorithm. The worked example in the KSeF API documentation counts the same way, with Saturday as a non-working day.

The FA(3) reader

The reader looks for the Faktura element in the FA(3) schema namespace and shows the parties, the lines, totals per rate (fields P_13 and P_14), the total amount due (P_15), annotations, payment terms and footer. It checks tax ID checksums, whether line totals match the P_13 fields and whether the total due equals net plus VAT. It does not validate the file against the XSD schema and cannot confirm that an invoice exists in KSeF: only the Ministry’s system can do that.

QR code and KSeF number

The CODE I verification link is built as documented: the qr.ksef.mf.gov.pl address, the seller’s tax ID, the issue date as DD-MM-YYYY and the file’s SHA-256 hash in Base64URL. Your browser computes the hash (WebCrypto) from the file’s bytes. The KSeF number is checked with a CRC-8 checksum (polynomial 0x07) over its first 32 characters, as set out in the KSeF 2.0 API documentation. We do not generate CODE II (offline certificate), which needs a private key.

Tests

  • The reader passes on the sample FA(3) invoice in the Ministry of Finance’s ksef-pdf-generator repository (MIT licence): every total and tax ID checks out.
  • The checksum of the sample number in the API documentation comes out exactly as documented.
  • The holiday calendar for 2025 to 2030 and the offline deadlines around Easter, Corpus Christi and Christmas are covered by automated tests on every change.
  • The limit counter passes the Ministry’s worked answers (invoice counted in the month of issue, no return of the right after crossing).

Limits

The tools give an assessment under the law, not tax advice. They do not know your contracts or your books. Results for foreign businesses with a fixed establishment in Poland are simplified: what matters is whether that establishment takes part in the sale. This site is not KSeF, does not log in to it and does not issue invoices.

Updates

We regularly read the Journal of Laws, the Ministry of Finance KSeF pages and the environment notices. A change goes live only once every test passes again. Report errors through the contact page; how we correct is set out in the editorial policy.

Prepared by

Publisher of free KSeF tools: obligation and deadline check, FA(3) invoice reader, PLN 10,000 limit counter and offline modes, all in your browser

Updated on · Editorial policy · Contact

As of 2026, laws and ministry notices checked on