TanodTools
EN

KSeF invoice viewer

Open a structured invoice from Poland's KSeF and read it as an ordinary invoice: seller, buyer, lines, VAT groups and payment. The XML is read in your browser and never uploaded.

Your files never leave your device

Drop an e-invoice here

XML, a PDF with an invoice inside (ZUGFeRD, Factur-X) or a signed .p7m. Or drag it anywhere on this page.

Opened on this device. Nothing is uploaded.

One file at a time, up to 25 MB; the first 5,000 line items are shown. Reads the KSeF schemas FA(3) and FA(2), including correction invoices. Not read: the structured attachment of FA(3) (Załącznik), FA_RR invoices and the older FA(1). Viewer only: it does not validate the invoice and does not connect to KSeF.

How to open a KSeF invoice

  1. Choose the invoice XML you saved from KSeF or from your accounting program, or drag it onto the page.
  2. Read the invoice: seller (Podmiot1) and buyer (Podmiot2), line items, VAT by rate, totals, payment and notes.
  3. Press Print or save as PDF, Download JSON, or Show raw XML.

KSeF and its invoices

KSeF, the Krajowy System e-Faktur, is Poland's national e-invoicing system, run by the Ministry of Finance. Invoices are issued as structured XML in a schema called FA, and in 2026 the system became mandatory for businesses, in stages. The XML that is stored and exchanged is the invoice; the readable version is a visualisation of it. This page makes that visualisation in your browser from the XML you have.

What the viewer shows

You see the seller (Podmiot1) and buyer (Podmiot2) with their NIP or EU VAT numbers and addresses, the invoice number (P_2), dates (P_1, P_6), the currency, every line item with quantity, unit, price and VAT rate, the VAT by rate group (P_13 and P_14), the total (P_15), payment details with the bank account, additional descriptions, the footer and registry numbers, and the markings that matter: split payment, reverse charge, cash accounting, self-billing and exemption. Amounts are shown exactly as in the file.

It does not validate the invoice, does not check it against KSeF and does not read the structured attachment of FA(3). If the invoice was issued in a foreign currency, the VAT in PLN is shown under the totals.

Tips

  • Download JSON gives you the invoice as plain data, with Polish field names translated into the EN 16931 business terms.
  • Other formats open here too: XRechnung, ZUGFeRD / Factur-X, FatturaPA and Peppol. The page suggests the matching viewer when you open one.
  • Show raw XML helps when you need an element that the readable invoice does not show.

Questions

Is the invoice sent to KSeF or uploaded?

No. This page does not connect to KSeF or to any server. The XML is read in your browser and shown on this page, and closing the tab clears everything.

Where do I get the XML of an invoice?

In KSeF you can download an invoice as an XML file, and accounting programs that work with KSeF can export it. This page reads the file you saved.

What is the difference between FA(3) and FA(2)?

They are successive versions of the same invoice schema (the root element is Faktura). FA(3) is the version used since the mandatory KSeF started in 2026; FA(2) is the earlier one, and invoices written in it are still around. Both are read here.

Does it draw the KSeF QR codes or the official visualisation?

No. This page shows the content of the XML as a readable invoice. It does not create the QR codes of the official visualisation, and it is independent of the Ministry of Finance.

Why is there no VAT rate on some lines?

For exempt (zw), reverse-charge (oo) and not-subject (np) lines the file gives a code instead of a rate. The code is shown as it is, together with the matching VAT category.

What about correction invoices?

A correction (KOR) lists the lines as they were and as they are now, and the totals are the difference. The old lines are marked Before correction. The corrected invoice's number and KSeF number are shown if the file gives them.