Receiving invoices in KSeF: a guide for foreign companies with a Polish entity
Adam Nelip · 9 min read ·
Since 1 February 2026 every company registered for VAT in Poland receives its purchase invoices through KSeF, the government e-invoicing platform. For a group with headquarters in Germany, Korea or the Netherlands this usually lands on the Polish team first and on the shared service centre a few weeks later, when invoices stop arriving the way the global process expects. This guide covers who has to use KSeF, how invoices are received, when they legally count as received and what work is left after that.
Short answer
Your Polish entity receives invoices in KSeF either manually in the Ministry of Finance app, automatically through an ERP connected to the KSeF API, or through an accounting firm you grant access to. An invoice counts as received on the day KSeF assigns it a number, even if nobody has downloaded it yet. The hard part comes after receipt: matching the invoice to a purchase order or cost centre, often in a language your finance team does not read.
What KSeF is
KSeF (Krajowy System e-Faktur, the National e-Invoicing System) is a platform run by the Polish Ministry of Finance. Sellers issue invoices as structured XML files directly in KSeF, and the system assigns each one a unique KSeF number. Buyers do not receive a PDF by email by default. They fetch the invoice from KSeF, either by hand or through software connected to its API.
For a finance team used to PDFs arriving in an accounts payable mailbox, the change is bigger than it looks. The invoice is no longer pushed to you. It waits in the system until someone, or something, pulls it.
Who has to use KSeF
The obligation came in stages:
- Receiving: all VAT taxpayers in Poland since 1 February 2026. The buyer's consent is no longer required.
- Issuing: the largest companies (sales above PLN 200 million) since 1 February 2026, almost everyone else since 1 April 2026. Sellers with B2B invoices of up to PLN 10,000 a month may issue outside KSeF until the end of 2026.
- Penalties: originally planned from 1 January 2027. On 16 September 2026 the Ministry of Finance announced it would postpone them to the end of 2027. This still needs a change in the law, and the obligation to use KSeF stays in place.
For foreign companies the key question is whether they have a fixed establishment in Poland. A foreign company whose Polish fixed establishment takes part in the sale has to issue invoices in KSeF. A company that is only registered for VAT in Poland, without a fixed establishment, generally does not. Tax authorities and advisors still disagree on where exactly the line runs, so this is worth confirming with a tax advisor (overview on VATupdate). A Polish subsidiary is a Polish company and is covered in full.
How to receive invoices in KSeF
Manually, in the Ministry of Finance tools
The Ministry offers a free web app (Aplikacja Podatnika KSeF), a mobile app and the e-mikrofirma service. You log in with a Polish trusted profile or a qualified electronic signature, search for new invoices and download them, including as a PDF with a QR code and the KSeF number. The interface is in Polish. This works for a handful of invoices a month and stops working at a few dozen.
Automatically, through your ERP
Most ERP and accounting systems used in Poland, including the Polish localisations of the big international ones, can connect to the KSeF API and fetch new purchase invoices on their own. The connection needs either a KSeF token or a KSeF certificate. Tokens only work until the end of 2026, so an integration that runs on a token today has to be switched to a certificate before January.
Check whether the integration fetches on a schedule or only when someone presses a button. We have seen both. In one system we analysed, KSeF downloads had to be triggered by hand, so formally there was an integration and in practice a person was still pulling invoices every day.
Through an accounting firm
If a Polish accounting firm keeps the books, you can grant it permission in KSeF to receive invoices on your behalf. Companies that are not sole traders and have no qualified electronic seal first file a ZAW-FA form with the tax office, naming the person who will manage KSeF permissions.
When an invoice counts as received
An invoice issued in KSeF is received on the day KSeF assigns it a number (art. 106na(3) of the Polish VAT Act). That date determines when the right to deduct input VAT arises. It does not matter when your team downloads, opens or books the invoice. The exception is a buyer that does not use a Polish tax ID, for example a foreign company without Polish VAT registration: for them the invoice is received when it is actually delivered.
The invoice is received before anyone in the company has seen it.
The practical consequence is easy to miss. An invoice nobody pulled from KSeF does not reach any inbox. Its payment term keeps running anyway.
The work after receipt
In May and June 2026 the Polish software vendor Symfonia and the Accountants Association in Poland surveyed 452 finance and accounting practitioners. Receiving invoices worked well: 54% rated it very good. Working out who the cost belongs to went badly: 36% rated it very poor and only 9% very good (results, in Polish).
International groups have three extra layers on top of that:
- Language. Line items are written in Polish by Polish suppliers. A shared service centre in another country has to translate them before anyone can assign a cost centre or approve the invoice.
- Matching. KSeF knows the seller's tax ID, amounts and items. It does not know the purchase order, the project or the plant the invoice belongs to, unless the supplier happened to put that number in the right field.
- Two streams. Invoices from foreign suppliers do not go through KSeF, and some Polish suppliers still send a PDF by email just in case. The same invoice can arrive twice, and someone has to make sure it is booked once.
What can be automated after receipt
KSeF removed the technically hardest part, reading the document. When invoices arrived as PDFs or scans, software first had to extract the data. At Holbox, a Polish manufacturer of cardboard displays, we read about 2,400 emailed documents this way without a single manual correction (Holbox case study). A KSeF invoice arrives with the data already in fields. What remains is the decision about what to do with it, and most of that can be written down as rules:
- fetch new invoices from KSeF every hour, with an overlap so nothing is missed,
- compare them with what arrived by email and drop duplicates by invoice number and seller tax ID,
- translate and summarise the Polish line items for the team that approves them,
- match the invoice to a purchase order, contract or cost centre when the number is there,
- propose the booking based on how the same supplier was booked before,
- route everything uncertain to a person: new suppliers, unusual items, missing order numbers.
The software proposes, the accountant approves. Nothing is booked without a person signing off.
Common pitfalls
- Tokens expiring. KSeF tokens stop working at the end of 2026. An integration still running on one will quietly stop fetching invoices in January.
- Permissions tied to one person. If the integration runs on an employee's permissions, their departure or leave can stop invoice downloads. Set up access that does not depend on any single account, and write down who manages it.
- Outages and late invoices. KSeF has had outages, and invoices issued in emergency mode get their number later. A process that only fetches invoices "since last time" can miss them. We always fetch with a margin, for example the last 7 days, and drop what is already there by KSeF number.
- Global ERP mapping. The KSeF XML has to be mapped into the fields your global ERP and approval workflow expect. It is the step that is easiest to underestimate and the hardest to fix after go-live.
How we can help
We are a Polish team that integrates KSeF and repairs integrations that went live but do not work as intended. A typical project takes 2 to 5 weeks. We work in English, document everything for your shared service centre and keep the Polish side of the process in Polish. The software runs on our server in Germany or on infrastructure you provide, under a data processing agreement.
Frequently asked questions
Does a foreign company have to use KSeF?
Since when do companies have to receive invoices in KSeF?
When is a KSeF invoice legally received?
Can our ERP fetch KSeF invoices automatically?
Are there penalties for KSeF errors?
This guide reflects Polish law as of 4 October 2026 and is not tax advice. For VAT questions about your specific setup, consult a Polish tax advisor.
Tell us about your KSeF setup.
Within 24 hours we come back with an assessment of what to fix or automate. The call is free and in English.
Book a free consultation