VulCode

KSeF integration through API 2.0

We connect your store, panel or ERP to Poland's National e-Invoicing System: sending and receiving invoices, UPO receipts, offline modes and QR codes, built and checked on the Ministry of Finance test environments.

Our KSeF guide
An admin panel: the queue of invoices sent to KSeF and the steps of one invoice from the challenge to its KSeF number, with a pause after a 429 response

Who KSeF applies to, and from when

KSeF already applies to every business: to receiving invoices since 1 February 2026 and to issuing them since 1 April 2026. The timeline shows what is in force and what is still to change.

  1. Voluntary: invoices to consumers, and foreign companies with no seat or fixed establishment in Poland
  2. up to 10,000 PLN incl. VAT a month outside KSeF
  3. Receiving, and the first issuers

    Every business receives invoices in KSeF. Businesses with sales above 200 million PLN incl. VAT in 2024 issue in it.

  4. Issuing for everyone else

    Until the end of 2026, invoices totalling up to 10,000 PLN incl. VAT a month may stay outside KSeF.

  5. Penalties and the KSeF number in transfers

    The 10,000 PLN relief ends and, under the current act, so does the deferral of penalties. A split-payment transfer has to carry the invoice's KSeF number.

  6. Penalties under the draft bill

    A draft bill of 23 September 2026 moves the penalties by a year. Until it is passed, the date in the act stands.

When KSeF answers with a limit or is down

A sale never waits on KSeF. The invoice goes into a queue, sending runs in the background and retries with a growing pause.

KSeF module: sending attempts
  1. at once
  2. after a minute
  3. after a few minutes
  4. after 15 minutes
  5. hourly
  6. Stop and alert with the reason

KSeFA refusal over the limit, no answer, or an announced unavailability.

The invoice in your system
queued, sales carry on
  • In KSeF, with its KSeF number
  • an alert with the reason

Offline mode deadlines

An invoice sent later than the day it was issued is an offline invoice. The module works out the deadline for each one.

An offline invoice issued on a FridayInvoice date
16 October 2026
  • 16 October 2026 + 3 days = 19 October 2026
  • 16 October 2026 + 11 days = 27 October 2026

One invoice in three modes

What changes is the order: when the customer gets the invoice and when the invoice gets its KSeF number. The module takes it down each of these roads.

Online

KSeF is up, and the invoice goes to it on the day it is issued.

  1. An invoice dated on sendingThe issue date is the day it is sent to KSeF.
  2. Sent in the backgroundThe invoice waits in the queue while sales carry on.
  3. KSeF numberThe file becomes an invoice only with its number.
  4. KSeF number
    A PDF with one codeUnder the QR code the customer sees the KSeF number.

Offline24 and unavailability

The issuer picks offline24 alone, with no proof of a lost connection. The Ministry announces an unavailability.

  1. Issued without KSeFThe issue date is the date written on the invoice.
  2. OFFLINECERTYFIKAT
    With the customer at onceWith two QR codes, before it has a number.
  3. Sent laterBy the next working day after issue, or after the unavailability ends.
  4. KSeF numberFrom now on one code is enough, as for an online invoice.

KSeF failure

A failure announced in the Ministry's BIP and in the interface software.

  1. Failure announcedThe module flags the invoices as offline.
  2. OFFLINECERTYFIKAT
    Invoices with two codesCustomers get them without waiting on KSeF.
  3. Sent laterWithin 7 working days of its end; a further announcement restarts the count.
  4. KSeF numberThe number is stored with the invoice and the order.

A total failure, announced on radio, TV, in the press or online: invoices need not be sent later and carry no QR codes.

Common questions about KSeF

Answers about deadlines, offline modes, purchase invoices and corrections.

Where are your invoices created today?

Tell us which system issues your invoices and how many a month. We will reply within an hour with questions and a quote.