Mandatory KSeF 2026 in a company app: who must comply and how to wire invoices
From 1 February 2026 KSeF is mandatory for large taxpayers (2024 sales over PLN 200 million gross); from 1 April 2026 for other firms. An off-the-shelf accounts tool may be enough. A custom B2B panel, CRM or wholesale system must issue a structured invoice, not a PDF in email.
If invoices come out of an order panel, a CRM or a wholesale B2B app, KSeF is not a background bookkeeping topic. From 2026 a structured invoice has to go through Poland’s National e-Invoice System. The dates below come from the Ministry of Finance site ksef.podatki.gov.pl (2026) — not from forum lore. If your old panel was going to “wait for KSeF in 2024” and nothing happened — 2026 will not wait.
The duty does not mean every firm must write its own API. A hairdresser with 20 invoices a month stays on inFakt, wFirma or another certified tool. The duty hurts where the invoice is born in your sales process: a B2B order, a delivery note, a credit from a price list, a prepayment on a contract. Then a PDF in email stops being an invoice under the Act — even if accounts “type it in somehow” in the evening.
Mandatory KSeF timetable (official)
KSeF ran optionally from 1 January 2022 (amendment of 29 October 2021, Journal of Laws 2021 item 2076). Mandatory e-invoicing in Poland rests on Council of the EU derogation decision 2022/1003. The original duty was 1 July 2024 (1 January 2025 for VAT-exempt taxpayers). After a system audit the Ministry postponed it and split the go-live. Key dates from the tax portal:
- 1 February 2026 — duty for businesses whose sales (including VAT) in 2024 exceeded PLN 200 million.
- 1 April 2026 — duty for other businesses (including sole traders), under the Act of 5 August 2025 (Journal of Laws 2025 item 1203).
- Production KSeF 2.0 was made available on 1 February 2026.
- The new 1 February 2026 date was already in the Act of 9 May 2024 (Journal of Laws 2024 item 852); the large / everyone-else split was refined by the August 2025 amendment.
The PLN 200 million threshold is sales including VAT for 2024, not a gut-feel net figure. If you sit near it — use the return, not memory. For everyone else, including sole traders, the date is hard: 1 April 2026. There is no third stage “small firms from 2027”. The simplifications below are time-limited exceptions, not a new timetable.
What is relaxed (so you do not panic)
The same amendment (Journal of Laws 2025 item 1203) added simplifications that change the scope of work in an app. Source: the legal-basis page on ksef.podatki.gov.pl and the offline24 note.
- Consumer invoices (B2C) — optional in KSeF. A private individual does not have to receive a KSeF invoice; the issuer decides.
- offline24 — if the network fails: issue offline and send when the connection returns. The VAT Act (art. 106nda) does not limit who may use it. The invoice is FA(3), electronic, and must go to KSeF without delay — by the next business day. Issue date is field P_1. If a KSeF outage is announced in the Ministry BIP — 7 business days from the end of the outage; in a total outage announced in the media, you do not send those invoices on.
- “Digitally excluded” — until the end of 2026 you may still issue e-invoices or paper if total sales documented that way in a month is PLN 10,000 gross or less.
- Tills and receipts — until the end of 2026, cash-register paths remain, including buyer-NIP receipts up to PLN 450 (EUR 100) as simplified invoices.
- KSeF number on payments — the duty to quote a KSeF number on payments between active VAT payers (art. 108g) and in the split-payment mechanism is deferred until the end of 2026.
- VAT RR invoices — optional in KSeF from 1 April 2026.
- Attachments — from 1 February 2026 you may issue invoices with an attachment after notifying intent in the e-Tax Office (notices from 1 January 2026).
offline24 has effects a panel cannot fake. For a domestic VAT taxpayer the invoice is received via KSeF (date = number assigned). For a consumer, a foreign buyer, a buyer without a NIP — you share it as agreed; receipt date is actual receipt. If you hand over such an invoice before sending it to KSeF, you need two QR codes: OFFLINE (access / check) and CERTIFICATE (issuer identity, KSeF type-2 certificate). After the number is assigned, one QR with the KSeF number remains. A correction in offline24 also goes by the next business day — and you cannot issue a correction until the original has a KSeF number.
Where a custom app breaks without KSeF
The failure we see most: the panel “issues an invoice”, meaning it stitches a PDF and hits SMTP. Until March 2026 that passed. From April (and for large taxpayers from February) a buyer who is a taxpayer expects a document in KSeF. Re-typing into an accounts tool scales to a few dozen documents. At hundreds of delivery notes, prepayments and credits from eight price lists, it does not.
- The B2B panel generates a PDF and emails it — from April 2026 the buyer expects a structured invoice.
- A law-firm or service CRM tracks hours and “somehow” raises invoices in another tool, by hand, with the wrong date and no link to the job.
- A wholesaler has eight price lists and accounts cannot handle corrections and prepayments in the FA(3) schema.
- No KSeF number on a correction or duplicate — a mess at inspection and at payment.
- An “just in case” offline path with no catch-up queue and no QR — a document the buyer will not receive in KSeF on time.
- Attachments (a spec, a protocol) sent as a separate mail, while from 1 Feb 2026 they can go in KSeF after an e-Tax Office notice.
How we wire KSeF into a panel (practice, not a slogan)
This is not a weekend plugin. There are permissions, certificates, the Ministry test environment and edge cases. The Ministry published KSeF 2.0 API docs and the FA(3) schema (30 June 2025 communiqué), then test environments, a demo and 2.0 production. We quote the integration as a separate line, because every accounts API and every credit-note flow hurts differently. Budget context: how much an app costs.
- The source of truth for the transaction stays in your app (order, job, contract).
- The app builds the invoice in the FA(3) schema and sends it via the KSeF 2.0 API (demo, then production).
- We store the KSeF number, status and acknowledgement on the document in the panel.
- The buyer in a B2B portal sees the invoice and status, not an attachment lost in spam.
- Corrections, prepayments and duplicates take the same path — not a side Excel.
- offline24: a catch-up queue (next business day), two QRs when you must hand over a document before the number, a block on corrections without the original’s number.
- Roles: sales issues, accounts approves / credits, nobody keeps the certificate in a Downloads folder.
Sometimes a bridge is enough: the panel builds the document, sending goes through the accounts tool that already speaks KSeF. Sometimes it is not — when accounts cannot handle your eight price lists, delivery notes and prepayments, or when the buyer should see status in the panel instead of waiting for a mail from the office. That is a process-map decision, not a slide that says “we integrate with KSeF”.
KSeF, GDPR and access
An invoice is counterparty data and often personal data. Panel roles stay (sales cannot issue a credit note; accounts cannot see margin). KSeF does not waive GDPR in the app — it adds a duty for the document to live in the state system, not only on your disk. Certificates and API tokens are secrets: a vault, rotation, an audit of who issued — not a password in .env on a server the whole company can reach.
The PLN 10,000-a-month exception until the end of 2026 is not a product strategy. If your B2B panel lives on invoices above that — and it does — you build the FA(3) path now and leave paper for outages and a genuinely small tail. B2C you may leave outside KSeF; B2B you cannot hide behind “we still have a NIP receipt”.
If your panel already raises invoices or “was going to after KSeF” — describe where invoices come from today (panel / bookkeeping tool / Excel) and monthly volume. We will say whether a bridge to accounts is enough or the app must send to KSeF itself.
FA(3), API 2.0 and attachments — what the panel must do
From 1 February 2026, production KSeF 2.0 uses the FA(3) logical schema (API docs: Ministry communiqué of 30 June 2025). An integration written to an older variant without a map to FA(3) needs a rewrite. The source of truth stays on the order / job; the app builds the XML, sends via API, and stores the KSeF number, status and acknowledgement on the document. The buyer in a B2B portal sees status, not a PDF from spam.
Attachments (a spec, a protocol) may go in KSeF from 1 February 2026 after notifying intent in the e-Tax Office (notices from 1 January 2026). VAT RR invoices are optional from 1 April 2026. The duty to quote a KSeF number on payments between active VAT payers (art. 108g) and in the split-payment mechanism is deferred until the end of 2026. That does not defer issuing FA(3) from February / April — it only defers quoting the number on the transfer for the rest of the year.
offline24: next business day, two QRs, corrections after the number
offline24 (VAT Act art. 106nda, described on ksef.podatki.gov.pl) is open to every taxpayer: an electronic FA(3) invoice, sent to KSeF without delay, by the next business day. Issue date is field P_1. On an outage announced in the Ministry BIP — 7 business days from the end of the outage; on a total outage announced in the media, those invoices are not sent on. For a domestic VAT taxpayer the receipt date is the KSeF number. For a consumer, a foreign buyer, a buyer without a NIP — actual receipt outside KSeF.
If you hand over such an invoice before the number, you need two QR codes: OFFLINE and CERTIFICATE (KSeF type-2 certificate). After the number, one QR remains. Corrections in offline24 also go by the next business day — and you cannot issue a correction until the original has a KSeF number. A panel that “saves a PDF offline” with no catch-up queue and no QR is not implementing the statutory mode.
Dates a software house cannot slide
1 February 2026 — duty for firms whose 2024 sales including VAT exceeded PLN 200 million. 1 April 2026 — everyone else, including sole traders (Journal of Laws 2025 item 1203). Production KSeF 2.0 from 1 February 2026. B2C stays optional. The “digitally excluded” exception: until the end of 2026, e-invoice or paper if sales documented that way in a month are PLN 10,000 gross or less. Tills and buyer-NIP receipts up to PLN 450 (EUR 100) as simplified invoices — also until the end of 2026. A B2B wholesaler above 10 thousand a month cannot hide behind a receipt. The timetable is on ksef.podatki.gov.pl, not on a forum.
- Large taxpayer: FA(3) path from February, not “we will wait for the rest of the market”.
- Sole traders and other firms: 1 April 2026 — there is no 2027 stage.
- B2C you may leave outside KSeF; a counterparty with a NIP is not a consumer.
- A bridge to an accounts tool when that tool can handle your price lists; send from the panel when it cannot, or when status must live in B2B.
Frequently asked questions
- When is KSeF mandatory for sole traders?
- For other businesses, including sole traders, the duty starts 1 April 2026 (large taxpayers 1 February 2026, threshold: 2024 sales including VAT above PLN 200 million). Source: ksef.podatki.gov.pl and Journal of Laws 2025 item 1203.
- Is a till receipt with a NIP already KSeF?
- Until the end of 2026, simplifications remain for tills and buyer-NIP receipts up to PLN 450. That does not permanently exempt a B2B panel that issues ordinary invoices.
- Must a consumer invoice go through KSeF?
- No — B2C is optional. The issuer decides. That is not a loophole for B2B: a counterparty with a NIP is not a consumer.
- Will GESOFT replace the bookkeeping programme?
- That is not the goal. We wire issuing to your sales process. Accounts can stay in a specialist tool. Sometimes we build a bridge, not a second accounting SAP.
- What is offline24?
- You issue FA(3) electronically without a live KSeF connection and send it by the next business day (art. 106nda). On a KSeF outage — 7 business days from the end. For some buyers, two QR codes (OFFLINE and CERTIFICATE) are required before the KSeF number. Details: ksef.podatki.gov.pl/informacje-ogolne-ksef-20/tryb-offline24/.
- Can I stay on paper until the end of 2026?
- Only if total sales documented with those invoices (e or paper) in a given month is PLN 10,000 gross or less — and only until the end of 2026. That is the “digitally excluded” exception, not a plan for a wholesaler.
- Which logical schema do we send in 2026?
- From 1 February 2026, FA(3) applies. An integration written to an older variant without a map to FA(3) needs a rewrite, not a “plugin on”.
Describe your project