KSeF for transport companies is no longer something to prepare for. KSeF, short for Krajowy System e-Faktur, is Poland’s National e-Invoicing System. The obligation to receive structured invoices through it covered every taxpayer on 1 February 2026, and the obligation to issue them reached most carriers two months later. By the end of May 2026 more than 289 million invoices had passed through the system, and the number grows every month.
Six months of practice have shown something no pre-launch guide covered. Issuing invoices turned out to be the easy part. The trouble starts next to the invoice: with the consignment note, which KSeF does not cover, with freight payment terms counted from delivery of documents, with cost invoices nobody in the company came to collect, and with three dates that are still ahead.
This article describes the situation as of September 2026 and what comes next. It is written for anyone running or working with a transport company that invoices in Poland.
What applies today, and since when
The sentence “KSeF has been mandatory since April 2026” appears in many write-ups and is incomplete. It merges two different obligations that started on different dates.
| Date | Obligation | Who it covered |
|---|---|---|
| 1 February 2026 | receiving | every taxpayer, regardless of size and form of taxation |
| 1 February 2026 | issuing | taxpayers with 2024 sales above PLN 200 million (about USD 50 million) |
| 1 April 2026 | issuing | all other taxpayers, including sole traders |
| 1 January 2027 | issuing | taxpayers with monthly sales up to PLN 10,000 (about USD 2,500) and invoices up to PLN 450 (about USD 110) |
A transport company with a fleet of a few dozen vehicles and turnover in the tens of millions of zlotys started issuing invoices in KSeF on 1 April 2026. It had to start receiving them two months earlier, and that earlier date is the one that tends to be missed, because it came with no change in the invoicing software. What it did change is who checks for incoming cost documents, and how often.
The scale of the rollout gives a sense of the pace. More than 39.9 million invoices passed through the system in February, more than 53.2 million in March, and in April, once all remaining businesses were covered, more than 106.1 million. By 26 May 2026 the total stood at 289,571,267 invoices issued by 2,061,144 entities. The figures come from the Polish Ministry of Finance.
What stayed outside KSeF, even though it looks as if it is inside
This is the most common source of mistakes for carriers running international routes. There is one rule, and it has nothing to do with where the truck is going.
Whether an invoice goes into KSeF depends on who issues it and on their Polish tax identification number (NIP), not on the customer’s country or the place where the service is taxed.
For a carrier this means four situations:
- An invoice for intra-EU transport or for exported services issued by your company goes into KSeF, including under the reverse charge. The foreign customer has no access to the system, so you send them a copy outside it, as a PDF or on paper.
- An invoice from a foreign subcontractor, for example a carrier from Lithuania or Romania, does not go into KSeF. It is issued by an entity without a Polish NIP.
- German self-billing, known in freight forwarding as Gutschrift, stays outside the system when the document is issued by a foreign buyer without a Polish number. When a Polish taxpayer issues the invoice on someone else’s behalf, it goes into KSeF.
- Invoices from foreign fuel card operators arrive through the usual channel.
The last situation has an organisational consequence: the company runs two cost document channels in parallel, and neither replaces the other.
The consignment note is not part of the invoice
The Polish Ministry of Finance has stated plainly that the CMR consignment note is not an element of the structured invoice and is not sent through KSeF. The same applies to proofs of delivery and warehouse documents.
For a transport company this splits the document flow into two tracks. The freight invoice goes through KSeF and reaches the customer the moment it is assigned a number. The transport paperwork, without which nobody can settle that invoice, arrives separately: by email, in a transport management system or in the driver’s folder after the trip. The customer’s accounts team therefore receives a document it cannot match to an order until the rest arrives.
Since 1 February 2026 KSeF has accepted invoices with attachments, but this option does not solve the carrier’s problem, for three reasons:
- using it is voluntary and requires prior notification through the e-Tax Office portal,
- the attachment is a structured data node with units of measure, quantities and prices, not a place for a scan of a consignment note or proof of delivery,
- it can only be sent through the programming interface, in a batch session, with a size limit of 3 MB for an invoice with an attachment and 1 MB without.
Companies deal with this in two ways. The first is linking the invoice’s identification number to the right order in the transport management system, so that a document pulled from KSeF immediately knows which file it belongs to. The second, simpler one is putting a link to wherever the full set of transport documents is stored into the invoice’s description field.
Freight payment terms have become a field of dispute
This is the most interesting change and the only place in this article where it has to be said that there is no settled answer.
Three pieces come together here:
- An invoice counts as received on the day it is assigned its KSeF number (Article 106na(3) of the VAT Act), whether or not the buyer has downloaded it. The customer can no longer say the invoice never reached them.
- Parties to a commercial transaction may not set the invoice delivery date by contract (Article 8a of the Act on Counteracting Excessive Delays in Commercial Transactions). A clause such as “the invoice is deemed delivered when the full set of documents arrives” is therefore questionable.
- The civil-law due date still follows from the contract and from Article 455 of the Polish Civil Code. KSeF sets the tax date of receipt, but it does not set the day on which the money has to be in the account.
The result is a new field of dispute that did not exist before. A customer who wants to play for time stops questioning delivery of the invoice and starts questioning whether the transport documentation is complete, because KSeF does not cover it. The argument goes: we have the invoice, but we do not have proof of delivery, so the service has not been properly performed.
There is no ruling from the Director of National Tax Information (KIS) on this situation. Until there is one, the wording of the transport order decides. If your order templates contain a clause such as “payment due 60 days from delivery of a correctly issued invoice”, that sentence is worth reading again, this time with KSeF in mind.
A driver without signal: offline24 mode
Invoices issued away from the office were one of the most frequent questions before the launch. The answer turned out to be more convenient than announced, because working without a connection to the system is voluntary and does not require any outage.
| Mode | Time to send to KSeF | When it may be used |
|---|---|---|
| Online | immediately | the system works and there is a connection |
| Offline24 (Art. 106nda) | by the next business day after the day of issue at the latest | always, including by the issuer’s choice, for example with no signal on the road |
| KSeF unavailable (Art. 106nh) | the next business day after the unavailability ends | maintenance or unavailability announced by the ministry |
| Outage (Art. 106nf) | 7 business days from the end of the outage | an outage announced in the ministry’s Public Information Bulletin |
Two things follow from this table.
The invoice date is always the date in field P_1 of the document, not the date it was sent to the system. A driver who issued an invoice on the road on Tuesday and sent it on Wednesday has a Tuesday invoice.
Business days do not include Saturdays, Sundays or public holidays. An invoice issued on a Friday afternoon can wait until Monday to be sent, with no consequences.
Only announcements from the ministry, published in the Public Information Bulletin and on the KSeF website, are binding. Only they trigger the extended sending deadline. Availability trackers run by private individuals are sometimes faster, but they carry no legal weight.
As an aside, the biggest hiccup of the first days had nothing to do with KSeF itself. Between 1 and 3 February 2026 logging in through Profil Zaufany, the state’s Trusted Profile login service, failed: the ministry had estimated around 40,000 to 50,000 logins an hour, and the actual figure was eight times higher. The invoicing system itself worked, but some taxpayers could not get into it.
Cost invoices nobody came to collect
The obligation to issue has a date, a procedure and software that handles it. The obligation to receive has none of these, and it started earlier.
The starting point is this: a cost invoice issued by a Polish supplier counts as delivered the moment it is assigned its KSeF number, even if nobody in your company has looked for it. The payment period starts running. The right to deduct VAT has its own calendar too. The document exists, even though nobody has seen it.
For a transport company this is a significant change, because it has more cost documents than almost anyone: fuel, road tolls, servicing, tyres, leasing, truck washes, parts. Collecting invoices has stopped being an office chore and has become a process someone has to own.
We know this from our own practice, not from other people’s guides. Our company’s cost invoices are collected automatically every month, including those that come from KSeF, which we reach through our invoicing software. Our access is therefore indirect, through that software’s interface, and not through the KSeF API itself. Four observations from this work will be useful to anyone building a similar process:
- The same invoice can arrive by two routes at once, by email and through KSeF, in two different forms and under two different file names. Removing duplicates by document number is a separate step, not a detail.
- Some suppliers do not always send through KSeF. With one rail carrier, the invoice sometimes arrives in the system by itself and sometimes has to be generated manually on its portal. We have not been able to establish what this depends on.
- The first part of the number in the name of a file downloaded from KSeF is the seller’s NIP, not the customer number. An automation built on the opposite assumption files documents into the wrong folders, and nobody notices for months.
- Some documents will never reach the system. Foreign suppliers and portals that do not send invoices stay outside it and need a separate route.
Multi-branch companies face one more problem. KSeF assigns invoices to a NIP, so after download everything lands in one place, usually head office, regardless of which depot or branch ordered the service. The system knows no rules for splitting documents by branch, and those have to be built on your side.
What went wrong when issuing
This part is best documented by software vendors, and the observations below come from them. The Ministry of Finance does not publish rejection statistics, so the order of frequency reflects what software producers see, not official data.
| Code | What it means | Typical cause at a carrier |
|---|---|---|
| 450 | invoice semantics error | an EU VAT number entered in the NIP field for a foreign customer, special characters and broken encoding pasted from another system, a service name that is too long |
| 440 | duplicate document | an invoice number repeated within the system |
| 430 | file verification error | non-compliance with the FA(3) structure, in force since 1 February 2026 |
| 410, 415, 403 | missing or wrong permissions | permissions granted to the wrong person or an unsigned authorisation file |
One property of the system tends to surprise people: KSeF checks the structure and semantics of a document, but not its arithmetic. It does not recalculate VAT, does not validate totals and will not reject an invoice for a calculation error. Acceptance by the system is therefore not confirmation that the invoice adds up.
Three dates still ahead
The title of this article promises an answer to what is still left. Three things are, and all of them fall at the turn of the year.
31 December 2026: the end of the period without administrative penalties
The whole of 2026 is a protection period. Penalties under Article 106ni of the VAT Act apply only from 1 January 2027, and their size is considerable: up to 100% of the VAT shown on an invoice issued outside KSeF, or, for an invoice without VAT, up to 18.7% of the total amount due. The penalty is imposed by the head of the tax office by decision, and it also covers late sending of a document issued in an emergency mode.
The protection period does not cover liability under fiscal criminal law for unreliable invoices. That applies independently and applied before.
31 December 2026: the end of the exclusion for simplified invoices
Simplified invoices and receipts showing a NIP, up to PLN 450, are excluded from KSeF under Article 145n of the VAT Act, but only until the end of 2026. From 1 January 2027 they enter the system, and cash registers stop issuing simplified invoices.
For a transport company this is a noticeable change, because it concerns the most numerous documents, the ones created today at the fuel station during refuelling.
1 January 2027: the KSeF number in bank transfer descriptions
From that day, when paying another taxpayer for a structured invoice, the 35-character KSeF number has to be given in the transfer description instead of the invoice number. The obligation also covers the split payment message, and for a bulk payment a bulk identifier is given. The legal basis is Article 108g of the VAT Act.
In practice this changes how the accounts team prepares batches of transfers, and what data the company’s finance system has to pass to the bank.
Further out there is the EU package on VAT in the Digital Age, with mandatory e-invoicing for cross-border transactions from 1 July 2030 and a requirement to align national systems by 1 January 2035. That is a horizon nobody is planning investments for today, so I leave it at the fact that the deadline exists.
This is not the same topic as the electronic consignment note
Inside a company these topics merge into one impression that the authorities want something again. Separating them makes sense, because they have different legal bases, different systems and different deadlines.
The EU regulation on electronic freight transport information (2020/1056) will apply in full from 9 July 2027. From that day, inspection authorities across the Union have to accept data from certified platforms. The paper consignment note will not be banned then, and companies are not obliged to switch to the electronic version.
We were not able to establish whether Poland has ratified the additional protocol to the CMR Convention concerning the electronic consignment note. If you are planning a decision based on that date, confirm it at the source.
This obligation has no connection with KSeF. All they share is that they concern the same documents in the same company.
Four decisions to make now
Instead of a checklist, which suits a company still implementing the system, here are four questions. Each one has a financial consequence.
- Who in your company is responsible for downloading cost invoices from KSeF, and how often do they do it? If the answer is “the accountant, when she has time”, the payment period is running without your knowledge. With several hundred documents a month this tends to be a job for a system, not a person.
- What do your transport order templates say about invoice delivery? A clause linking the payment term to delivery of the full set of documents needs a fresh read, because the invoice now arrives separately and earlier than the rest.
- Do your drivers and freight forwarders know about offline24 mode? It is voluntary, has no time limit and requires no outage, yet it is often treated as an emergency exit.
- How many transport documents circulate in your company today outside any system? This is the hardest question to ask, because the answer is usually “I don’t know”, and the amount of manual work added since February depends on it. The mechanism is the same as with vehicle inspection deadlines kept in spreadsheets.
Questions that keep coming back
Does a one-person haulage business have to use KSeF too? Yes, if it is an active VAT payer and issues invoices to businesses. The obligation to issue covered this group on 1 April 2026, and the obligation to receive on 1 February. The smallest taxpayers, whose monthly sales do not exceed PLN 10,000 and whose individual invoices do not exceed PLN 450, join on 1 January 2027.
Do I issue an invoice in KSeF for an EU customer without a Polish NIP? Yes, if your company issues it. The document goes into the system, and the customer receives a copy outside it, because they have no access to KSeF. Only invoices issued by foreign entities and sales to private individuals are excluded.
Can a driver issue an invoice on the company’s behalf? Yes, provided they have been granted permissions in KSeF and have a tool that allows it. Lack of signal is not an obstacle: offline24 mode lets them issue a document without a connection and send it by the next business day at the latest, keeping the original issue date.
Are fuel invoices handled through KSeF? Invoices from Polish suppliers are, and they have to be downloaded from the system. Invoices from foreign fuel card operators are not, and arrive through the usual channel. Receipts showing a NIP up to PLN 450 stay outside the system until the end of 2026 and enter it from January 2027 along with everything else.
Find out where your documents fall out of the system
A free digital audit takes one to two days and ends with a diagnosis, not a quote. It shows which documents circulate outside any system today and what collecting them by hand costs.
Book a free audit →