KSeF Downtime and Profil Zaufany Outages: Where to Check Status
KSeF downtime and a Profil Zaufany outage are two separate events with very different legal consequences. Poland's Ministry of Finance publishes KSeF notices on ksef.podatki.gov.pl and in its Public Information Bulletin (BIP); Profil Zaufany announcements live on gov.pl/web/profilzaufany. Live API availability is on biurko.io/ksef/status. Your deadline to upload a held invoice depends on which mode formally applies: one business day or seven.

You hit send, and the invoice does not reach KSeF (Krajowy System e-Faktur, Poland's national e-invoicing system). The first question is not what broke. It is whose side broke. That answer sets your deadline: one business day or seven.
Reading this mid-outage? Our live KSeF status monitor probes the production, demo and test environments every 5 minutes, no login required. Profil Zaufany reports its own status elsewhere — we point to it below.
This stopped being theoretical some time ago. KSeF became mandatory for the largest VAT payers on 1 February 2026 and for the remaining taxpayers (VAT-registered and VAT-exempt) on 1 April 2026, with the smallest following on 1 January 2027: until 31 December 2026, taxpayers whose monthly gross value of B2B invoices covered by the obligation does not exceed PLN 10,000 may issue invoices outside KSeF (ksef.podatki.gov.pl). Under the current act, penalties under Article 106ni of the VAT Act apply from 1 January 2027. On 16 September 2026 the Ministry of Finance announced it will move them to 1 January 2028; that is a bill not yet passed, and it moves only the penalties, not the obligation to use KSeF. Either way, a missed upload window will carry a price tag.
Here is where to actually check both systems, how the four fallback modes differ, and what to set up in advance so downtime does not stop your sales.
Four modes, four different deadlines
Polish VAT law does not have a single "emergency mode". It has four situations, and which one applies is decided by a Ministry of Finance notice, not by your impression that KSeF is down.
| Mode | When it applies | Who declares it | Upload deadline | Legal basis |
|---|---|---|---|---|
| Online | KSeF responds | not applicable | immediately, at issue | Art. 106na |
| Offline24 | problem on your side (no internet, ERP failure) | you, voluntarily | no later than the next business day after the issue date | Art. 106nda |
| Offline (unavailability) | announced maintenance window | Ministry of Finance, in BIP and via the API | no later than the next business day after unavailability ends | Art. 106nh |
| Emergency | KSeF outage declared by the Ministry | Ministry of Finance, in BIP and via the API | 7 business days from the end of the outage | Art. 106nf |
| Total outage | extraordinary situation, BIP unreachable | Ministry of Finance, via mass media | invoice is not uploaded to KSeF at all | Art. 106ng |
The official side-by-side comparison is in the Ministry's invoicing modes table (Polish).
One naming trap worth internalising: "offline24" does not mean 24 clock hours. The statute says the next business day after the issue date. An invoice issued Friday at 7 p.m. is due by end of Monday, not Saturday evening. An invoice issued Wednesday at 8 a.m. is due by end of Thursday, which is about 40 hours, not 24.
Where to check KSeF status
Three layers of information, and it pays to know what each one does.
1. Ministry technical notices. ksef.podatki.gov.pl/komunikaty-techniczne is where the Ministry posts planned maintenance, API rate-limit changes and notices for integrators. Planned windows usually appear several days ahead.
2. The Ministry's BIP. Formal notices declaring the start and end of an outage, and periods of unavailability, are published in the Public Information Bulletin under Article 106ne of the VAT Act. Those notices, not blog posts, define the period from which your extended deadline runs. The same notices are exposed through the interface software, so a well integrated invoicing app should read them automatically.
3. Independent availability monitoring. An official notice can lag the actual incident. Monitoring answers a different question: is the API responding right now?
That is why we run our own KSeF status page. Biurko's backend probes the government KSeF 2.0 API every 5 minutes and publishes the probe results (the response-time chart is averaged over 30-minute intervals). You get:
all three environments separately: production (api.ksef.mf.gov.pl), demo and test,
current response time for each,
uptime over 24 hours, 7 days and 90 days,
a response-time chart for the last day,
optional email alerts, so you are not refreshing a tab.
We are not affiliated with the Ministry of Finance, and our monitoring does not replace a BIP notice. It answers the question that comes first in practice: is KSeF down, or is it me?
Profil Zaufany is a separate system with separate outages
This is where most people get caught. Profil Zaufany (Poland's Trusted Profile, the government's electronic identity service) is not part of KSeF. It is operated separately and runs through the National Node (Węzeł Krajowy). It can fail on its own, and usually does.
The consequence is unpleasant. If KSeF is working and you simply cannot log in through Profil Zaufany, there is formally no KSeF unavailability and no KSeF outage. The Ministry will not publish a notice, and no extended deadline is triggered. What you are left with is offline24, due the next business day.
Profil Zaufany maintenance is announced at gov.pl/web/profilzaufany/aktualnosci. Windows are posted in advance and usually fall on Saturday nights. Announcements there have included overnight service windows during which e-services, Profil Zaufany, the National Node and signature services may be briefly unavailable. Schedules do get revised, so check before a weekend with heavy invoicing.
How to actually protect yourself
The most effective defence against a Profil Zaufany outage is not needing Profil Zaufany day to day.
KSeF 2.0 supports certificate-based authentication. Profil Zaufany is then needed once, when you connect the company and sign the certificate request. After that, invoice submission runs on the certificate, and an overnight National Node maintenance window does not touch it. That is how Biurko works when you connect with a certificate (your own or one ordered in Biurko after the first connection with Profil Zaufany): the certificate sits with the company account, and Profil Zaufany appears only in the connection wizard. If you connect with Profil Zaufany alone, the session does not renew itself, and once it ends you sign the request again.
The second layer is how your software behaves during an outage. When the KSeF gateway returns errors three times within 60 seconds, Biurko sends new invoices in offline24 mode: the invoice is still issued and marked with a QR code (code I; code II only with an Offline-type KSeF certificate), and the document waits in the queue. Biurko reads the modes announced by the Ministry from the "Latarnia" feed. Once KSeF is back, we resubmit automatically, every 5 minutes. If the deadline passes, Biurko sets the status to "Needs review" and sends a notification; it does not warn in advance and does not resend an overdue invoice by itself. The status page at biurko.io/ksef/status is a separate information page of our website and does not control sending in the app.
Downtime checklist
Confirm whose side the problem is on: check ksef.podatki.gov.pl/komunikaty-techniczne and biurko.io/ksef/status. If both show green, the cause is local: certificate, permissions or invoice data.
Check the Ministry's BIP for whether unavailability or an outage was declared. That decides your deadline: one business day or seven.
Do not stop selling. Issue the invoice in the applicable offline mode with the required markings.
Write down the upload deadline in business days, skipping Saturdays, Sundays and public holidays.
Move to certificate authentication so Profil Zaufany downtime cannot block submission.
Before a long weekend, check the maintenance notices at gov.pl/web/profilzaufany/aktualnosci.
Set up an email alert instead of refreshing a status page.
Conclusion
KSeF downtime is manageable as long as you know which mode covers you and where the confirmation comes from. A Ministry notice sets the deadline, monitoring tells you whether the system is alive right now, and Profil Zaufany has to be tracked separately because its outages buy you nothing legally.
Live KSeF status is always at biurko.io/ksef/status, no login and no account required. And if you would rather not check at all, create a free Biurko account: when the KSeF gateway fails, we send in offline24 mode and resubmit automatically once KSeF is back.
FAQ
Where can I check whether KSeF is down? The Ministry of Finance publishes planned maintenance at ksef.podatki.gov.pl/komunikaty-techniczne and formal outage or unavailability notices in its Public Information Bulletin. Live availability for all three KSeF environments, probed every 5 minutes, is on biurko.io/ksef/status.
Does a Profil Zaufany outage extend my KSeF upload deadline? No. Profil Zaufany is a separate system, and extended deadlines are tied strictly to KSeF unavailability or a KSeF outage declared by the Ministry of Finance. If KSeF itself is working, offline24 applies, with the invoice due by the next business day after its issue date.
How long do I have to upload invoices after a KSeF outage? After an outage declared in the Ministry's BIP, you have 7 business days from the end date given in the closing notice (Art. 106nf of the VAT Act). For ordinary unavailability, such as planned maintenance, the window is shorter: the next business day after it ends (Art. 106nh).
Is offline24 exactly 24 hours? No, the name is misleading. Article 106nda requires the invoice to be sent without delay, at the latest on the next business day after the issue date. Saturdays, Sundays and public holidays are not business days, so a Friday-evening invoice is due by end of Monday.
KSeF is up but my invoice will not send. What should I check? If neither the Ministry notices nor availability monitoring show an incident, the problem is local. The usual causes are an expired KSeF certificate, missing permissions in the system, a semantic error in the invoice data, or a duplicate invoice number.
Tags
Previous article
KSeF 2.0 vs 1.0: What Changed in the API and the FA(3) Schema
Next article
Invoice Status Notifications: Stay Current Without Logging In