KSeF is usually discussed in terms of issuing invoices, but the first obligation that hit everyone sits on the other side: from 1 February 2026 every company receives invoices in KSeF, Poland's National e-Invoicing System. An invoice is deemed received on the day it is assigned a KSeF number — whether or not anyone logged into the system that day. This article is about KSeF invoice import: how to pull those invoices into your own system automatically and what it costs.
When you have to start receiving invoices from KSeF
The timetable for issuing invoices is phased, but receiving them applies to everyone from the same date:
| Date | Who it applies to |
|---|---|
| 1 February 2026 | All companies receive invoices in KSeF — regardless of sales volume |
| 1 February 2026 | Mandatory issuing for companies with sales above 200 million złoty in 2024 |
| 1 April 2026 | Mandatory issuing for all other VAT taxpayers |
| 1 January 2027 | The smallest companies, and the end of the penalty-free period |
There are no penalties until the end of 2026. From 1 January 2027, issuing an invoice outside KSeF carries a penalty of up to 100% of the VAT amount on the invoice, and up to 18.7% of the gross amount for invoices without VAT — we covered the details in our article on KSeF penalties from 2027. On the purchase side there are no sanctions, but there is something more painful day to day: an invoice nobody knows about.
Why the KSeF number date changes accounting work
The rule is short: a structured invoice is deemed received on the day it is assigned a KSeF number. Not on the day someone downloaded it, printed it or forwarded it by email.
In practice this means three things. First, the clock on deadlines starts without your company being involved. Second, if one person downloads invoices once a week, some documents enter your workflow with a delay that shows up in no report. Third — and this is the most common problem in small companies — if that one person is away, the whole purchase stream stops.
Automatic import is therefore not a convenience, but a way of making sure the date in your system matches the date in KSeF.
Three routes: manually, a module in your software, your own import
- Manually in the Taxpayer Application (Aplikacja Podatnika, the tax authority's free KSeF app) — no implementation cost, but someone has to log in, filter and download. It makes sense with a few purchase invoices a month.
- A ready-made module in your accounting software — if your software has KSeF import and covers your cases, this is the cheapest route. It is worth checking before you start talking about a custom solution.
- Your own import via the API — needed when invoices have to land in a system nobody will integrate for you: your own ERP, a project management system, the app you use to settle jobs. We set out when off-the-shelf software is enough and when you need an integration in our article on integrating KSeF with your own system, shop or ERP.
This article is about the third route — and about what is not obvious in it at first glance.
How automatic downloading works
From the company's point of view it is four steps that the software performs on its own:
- Authentication — with a KSeF certificate or a token. Tokens were meant to work only until the end of 2026, but Poland's Ministry of Finance decided to keep them indefinitely, so both methods remain available.
- Downloading the invoice list for a given period — this is the list on which an invoice nobody in the company has seen yet appears.
- Downloading the documents and saving the KSeF number — the number identifies the invoice in the system, and it is what we use to spot duplicates and link credit notes to the original invoice.
- Saving into the company's system together with the date the number was assigned, the amounts, the counterparty and the source file.
The technical part is predictable. All the difficulty — and most of the hours — lies in what happens to the invoice after it has been downloaded.
What the import must handle so it isn't a second round of manual work
An import that only pulls files into a folder moves the work around instead of reducing it. Here is the list of things we ask about when preparing an estimate:
- Matching to the counterparty and the order — by tax ID (NIP) and order number. Without this, someone still searches manually for what the invoice relates to.
- Duplicates — the same invoice must not come in twice when the import is run again. We recognise it by its KSeF number.
- Credit notes — a correcting invoice issued in KSeF contains the KSeF number of the invoice being corrected, so the software can link them itself instead of leaving it to a person.
- Attachments — you do not have to register anything to receive them; the notification in the e-Tax Office (e-Urząd Skarbowy) is filed by the issuer. On your side you only need to save them and show them together with the invoice.
- Invoices from outside KSeF — foreign suppliers do not issue in KSeF. You need a second channel, usually an email inbox, from which documents land in the same place.
- Approval workflow — who approves a purchase and in what order; without this the invoice waits in the system just as it used to wait in the inbox.
- Error notifications — when downloading stops working, the company should find out, not the supplier a month later.
- Offline mode and outages — an invoice passed on outside the system reaches KSeF later; the import then has to recognise it and not save it a second time.
How much purchase invoice import costs
We count in hours: the developer rate is €46/h net (excl. VAT). The blocks look like this:
Euro amounts converted at the NBP mid-market rate of 14 September 2026 (€1 = 4.3391 zł) and rounded. We invoice in PLN.
| Block | Hours | Cost, net |
|---|---|---|
| Connection to KSeF: authentication, downloading, saving the KSeF number, retries and logs | 24 – 60 h | €1,100–2,750 |
| Matching to the counterparty and the order | 8 – 24 h | €370–1,100 |
| Handling credit notes and linking them to the original invoice | 6 – 16 h | €280–740 |
| Invoice attachments | 4 – 10 h | €180–460 |
| A second channel for invoices from outside KSeF | 8 – 20 h | €370–920 |
| Purchase approval workflow | 14 – 34 h | €640–1,560 |
| Notifications about new invoices and about errors | 6 – 18 h | €280–830 |
| Invoice archive and search | 8 – 20 h | €370–920 |
The three most common packages:
- Import into the system only (connection, matching, credit notes) — 38 – 100 hours, i.e. €1,750–4,600 net (excl. VAT).
- Import with an approval workflow and notifications — 58 – 152 hours, i.e. €2,650–7,000 net (excl. VAT).
- The full package including attachments, a second channel and an archive — 78 – 202 hours, i.e. €3,600–9,300 net (excl. VAT).
If you also need to issue invoices in KSeF, treat it as one project — authentication and error handling are shared. We collected the price ranges for the whole scope and for other integrations in our article on how much automation and integration cost.
How long it takes
- import into the system only — 3 – 6 weeks;
- import with an approval workflow — 4 – 8 weeks;
- the full package — 5 – 10 weeks.
The first week is usually not code but a map: where purchase invoices come from today, who approves them, where they end up and what happens to the ones from outside KSeF. Only after that can you see whether the project is a small one or a big one.
What not to do
- Don't leave it until the end of 2026. Receiving invoices works from February 2026, so you can test the import on real invoices without pressure, before penalties on the sales side come into force on 1 January 2027.
- Don't build a second place for the same data. If invoices land in a separate panel nobody opens, we are back where we started.
- Don't rely on one person and a calendar. "Kasia downloads them every Monday" works until the first holiday.
- Don't skip error notifications. An import without alerts fails quietly — you will find out from a payment reminder.
How to prepare for an estimate
Before we talk, it is worth gathering:
- how many purchase invoices come in each month and how many regular suppliers you have;
- which system they should land in (accounting software, ERP, your own application) and whether it has an API;
- who approves purchases and whether the order depends on the amount or the department;
- how many suppliers are based outside Poland — they are what determines the second channel;
- whether you also need to issue invoices in KSeF, or only to receive them for now;
- who on your side has administrator access to the target system.
To get an indicative figure, choose "System integration" in our cost calculator and tick KSeF — you will see the price range and the timeline straight away, without giving your email. We also describe the scope of work on connections and automation on our system integration and process automation pages, and you can describe the details of your case in the project brief.
Frequently asked questions
When do you have to start receiving invoices from KSeF?
From 1 February 2026 the obligation to receive invoices in KSeF applies to all taxpayers in Poland, regardless of sales volume. Issuing is phased in: from 1 February 2026 for companies with sales above 200 million złoty in 2024, from 1 April 2026 for all other VAT taxpayers, and from 1 January 2027 for the smallest companies.
When is an invoice deemed received?
A structured invoice is deemed received on the day it is assigned its KSeF number. The date does not depend on when somebody in the company looks into the system — which is why, with manual downloading, it is easy to wake up to an invoice that is two weeks old and less time left to pay it.
Can purchase invoices be downloaded automatically?
Yes. KSeF provides an API through which your company's system downloads invoices itself. Authentication uses a KSeF certificate or a token — tokens were meant to work only until the end of 2026, but Poland's Ministry of Finance decided to keep them indefinitely.
What about invoices that are not in KSeF?
Invoices from foreign suppliers are not covered by KSeF, so they will still arrive by email or from a supplier portal. The import has to be designed so that these documents land in the same place, otherwise the company keeps two separate purchase records.
Do you have to register anything to receive invoices with attachments?
No. Receiving invoices with attachments requires no registration — the notification in the e-Tax Office (e-Urząd Skarbowy) is filed by the issuer who wants to send such invoices.
How much does importing purchase invoices from KSeF cost?
The KSeF connection alone, including downloading and saving the KSeF number, takes 24 – 60 hours, i.e. €1,100–2,750 net (excl. VAT). With matching invoices to counterparties and orders plus handling credit notes it comes to 38 – 100 hours, i.e. €1,750–4,600 net (excl. VAT), and with an approval workflow and notifications — 58 – 152 hours, i.e. €2,650–7,000 net (excl. VAT).