W System / Blog / Poland KSeF from 1 January 2027 for invoicing software
Poland KSeF from 1 January 2027: what invoicing software must change (fines now planned for 2028)
In short: From 1 January 2027 every Polish business must issue its B2B invoices in KSeF, the national e-invoicing system: the PLN 10,000-a-month relief for the smallest businesses ends, cash registers can no longer issue invoices, and transfers between active VAT payers must quote the invoice's KSeF number. On 20 October 2026 the government adopted a bill that moves KSeF fines to 1 January 2028; it still needs parliament. The obligation itself does not move. This page lists what invoicing, POS and payment software has to handle by January, from official KSeF sources.
What changed on 20 October 2026
The Council of Ministers adopted the draft amendment to the VAT Act known as UD477 (agenda of 20 October 2026, Rzeczpospolita, 20 October 2026). It follows the finance ministry's announcement of 16 September 2026 (gov.pl). According to the project page and the ministry:
- Fines for not using KSeF or using it wrongly apply from 1 January 2028 instead of 1 January 2027.
- KSeF stays mandatory. In 2027 the tax administration (KAS) will first remind a business individually; if it doesn't react, KAS checks whether its VAT is settled correctly. Invoices issued outside KSeF still get a reaction.
- The bill is meant to enter into force on 31 December 2026, so it still has to pass the Sejm and the Senate and be signed in about ten weeks. Until it is published, plan as if the current dates apply.
Timeline
| Date | What applies |
|---|---|
| 1 Feb 2026 | KSeF mandatory for issuing for businesses whose 2024 sales including VAT exceeded PLN 200 million. Every business must receive structured invoices in KSeF from this date (foreign buyers and consumers excepted). |
| 1 Apr 2026 | KSeF mandatory for issuing for all other businesses, including VAT-exempt ones. |
| Until 31 Dec 2026 | Businesses whose invoiced sales including VAT stay at or below PLN 10,000 a month may still issue invoices outside KSeF. Invoices from cash registers, and receipts with the buyer's NIP up to PLN 450, also stay outside KSeF and don't count towards the PLN 10,000. |
| 1 Jan 2027 | KSeF mandatory for everyone: the PLN 10,000 relief ends, cash registers can no longer issue invoices and receipts with a NIP no longer count as invoices. Payments between active VAT payers must quote the KSeF number or a collective identifier (art. 108g, also in split payment). |
| 1 Jan 2028 | Fines for not using KSeF start, if the bill the government adopted on 20 October 2026 (UD477) passes. Under the law as it stands today they start on 1 January 2027. |
Sources: KSeF roadmap, KSeF: below PLN 10,000, biznes.gov.pl, KSeF rules and legal basis, KSeF number and collective identifier.
What a KSeF invoice is
- The FA(3) structure, a Polish XML schema in force since 1 February 2026. It is not UBL, CII or Peppol BIS, so an EN 16931 file for another country can't simply be sent to KSeF.
- Issued when it reaches KSeF: a structured invoice counts as issued on the day it is sent to KSeF (art. 106na(1)). KSeF assigns a KSeF number and returns it in the official receipt (UPO). That number is not part of the XML and is different from your invoice number in field P_2.
- Delivered through KSeF to Polish business buyers. Foreign buyers without a Polish establishment and consumers get it in an agreed way, for example a PDF, marked with a QR code and the KSeF number (verification codes).
Checklist for invoicing, POS and payment software before 1 January 2027
- Drop the PLN 10,000 logic. If your product let small customers keep issuing PDF or paper invoices while their monthly invoiced sales stayed at or below PLN 10,000, every B2B invoice now has to go through KSeF.
- POS and shop systems: invoices printed from a cash register and receipts with the buyer's NIP (up to PLN 450) stop counting as invoices. When a register sale needs an invoice for a business buyer, issue it in KSeF.
- Store the KSeF number per invoice from the UPO, show it, and pass it to the accounting and payment side. You also need it for corrections and to match incoming payments.
- Payment files and bank transfers: from 1 January 2027 put the KSeF number in the transfer title (or a KSeF collective identifier when one payment covers several invoices), including in the split-payment (MPP) message. The rule applies when both sides are active VAT payers; the payee's status is taken from the official VAT white list on the payment day (art. 108g). Card payments and other instruments with no transfer title are outside it.
- Offline modes: offline24 lets anyone issue a valid FA(3) invoice outside KSeF and send it by the next business day; during announced KSeF unavailability, by the next business day after it ends; during an announced failure, within 7 business days (offline24). An offline invoice handed over outside KSeF needs two QR codes, OFFLINE and CERTYFIKAT, and the second one needs a KSeF certificate (type 2) obtained in advance.
- Foreign buyers: still issue in KSeF, then send a PDF or print with the KSeF QR code and number. The PDF may carry extra information as long as it matches the XML and stays readable.
- Receiving: every Polish business has had to receive structured invoices in KSeF since 1 February 2026, including the smallest ones. Purchase-side software should fetch from KSeF rather than wait for e-mailed PDFs.
Fines once they apply
Art. 106ni of the VAT Act: up to 100% of the VAT shown on an invoice issued outside KSeF against the rules, or up to 18.7% of the total amount when the invoice shows no VAT. The same applies to an offline invoice that doesn't follow the published structure or isn't sent to KSeF on time. Under current law this starts on 1 January 2027; under the adopted bill on 1 January 2028. Not tax advice; check your case with an adviser.
Example: tell your app a Polish buyer needs KSeF, not Peppol
Disclosure: W System, which publishes this page, makes the API used below. W System does not submit invoices to KSeF and does not create or validate FA(3) files. What it does help with in a multi-country invoicing app: GET /einvoice/route checks the buyer's VAT number in VIES, looks it up in the Peppol Directory and returns the country's mandate, so your app knows a Polish buyer needs a KSeF FA(3) invoice while a Belgian one needs Peppol BIS 3 (which POST /einvoice/create and /einvoice/validate do handle). GET /company?country=PL&q=… searches the official KRS register.
curl "https://api.wsystem.dev/einvoice/route?id=PL7740001454"
Real response from the live API on 20 October 2026 (Peppol and source details left out):
{
"query": "PL7740001454",
"vat": {
"vat": "PL7740001454",
"status": "valid",
"valid": true,
"name": "ORLEN SPÓŁKA AKCYJNA"
},
"country": "PL",
"mandate": {
"b2b_mandatory": true,
"format": "KSeF FA(3) XML (not UBL/Peppol)",
"channel": "KSeF (clearance)",
"next": "Micro taxpayers 2027-01-01.",
"source": "https://ksef.podatki.gov.pl/"
},
"recommendation": {
"format": "KSeF FA(3) XML (not UBL/Peppol)",
"channel": "KSeF (clearance)",
"create_with": null,
"why": "This country uses its own clearance format; our create endpoint does not produce it yet."
}
}
The API is free for 20 calls a day per IP; details on the e-invoicing API page.
Questions and answers
Who must issue invoices in KSeF from 1 January 2027?
Every business that issues invoices under Polish VAT rules for sales to other businesses. The last transitional rules end on 31 December 2026: the PLN 10,000-a-month relief for the smallest businesses, invoices from cash registers, and receipts with the buyer's NIP up to PLN 450 treated as simplified invoices. Invoices to consumers don't have to go through KSeF, though they may.
Are KSeF fines postponed to 2028?
Not yet in law. The Council of Ministers adopted the bill (UD477) on 20 October 2026. It moves the start of fines from 1 January 2027 to 1 January 2028 and is meant to enter into force on 31 December 2026, but it still has to pass the Sejm and the Senate and be signed. The obligation to use KSeF does not move: in 2027 the tax administration says it will first remind businesses individually and then check the VAT returns of those who don't react.
What are the fines once they apply?
Under art. 106ni of the VAT Act: up to 100% of the VAT shown on an invoice issued outside KSeF against the rules, or up to 18.7% of the total amount when the invoice shows no VAT. The same applies to an offline invoice that doesn't follow the published structure or isn't sent to KSeF in time.
What does the KSeF number in a bank transfer mean for my software?
From 1 January 2027 an active VAT payer who pays a structured invoice to another active VAT payer by transfer must quote the invoice's KSeF number, or a collective identifier generated in KSeF when paying several invoices at once. The KSeF number is returned in the official receipt (UPO), is not part of the XML and differs from your own invoice number (field P_2), so your software has to store it and put it into payment files. Whether the payee is an active VAT payer is decided by the official VAT white list on the payment date.
Do invoices to EU or non-EU customers go through KSeF?
Yes, a Polish business issues them in KSeF too, but when the buyer has no seat or fixed establishment in Poland (and for consumers) it hands the invoice over in an agreed way, for example as a PDF, marked with the KSeF QR code and number. A foreign buyer is not required to receive invoices in KSeF.
Sources
- ksef.podatki.gov.pl: KSeF 2.0 roadmap
- ksef.podatki.gov.pl: below PLN 10,000
- biznes.gov.pl: Krajowy System e-Faktur (cash registers, offline modes)
- ksef.podatki.gov.pl: offline24 mode (art. 106nda)
- ksef.podatki.gov.pl: QR verification codes
- ksef.podatki.gov.pl: KSeF number and collective identifier in payments
- ksef.podatki.gov.pl: KSeF rules and legal basis (fines)
- Ministry of Finance, 16 September 2026: fines deferred to the end of 2027
- Chancellery of the Prime Minister: draft UD477 and Council of Ministers agenda, 20 October 2026
- Rzeczpospolita, 20 October 2026: government adopts the bill
Related
- E-invoicing API for EU mandates
- European company registry API (KRS lookups)
- Slovakia eFaktúra 2027
- France e-invoicing 2027 for invoicing software
- Germany: BMF letter of 15 October 2026
Checked against ksef.podatki.gov.pl, biznes.gov.pl, gov.pl and the Council of Ministers agenda on 20 October 2026. The fines bill is not law yet; re-check its status before you release.
Facts checked 2026-10-20. W System is the maker of this product. Not affiliated with the European Commission. Not legal or tax advice.