Plik XML otworzysz w każdej przeglądarce internetowej albo w Notatniku, ale zobaczysz w nim tylko surowe dane między znacznikami, dlatego narzędzie warto dobrać do tego, skąd plik pochodzi. Fakturę z KSeF pokaże jak zwykłą fakturę Aplikacja Podatnika KSeF, także bez logowania. Pismo podpisane w formacie XAdES rozpakujesz w bezpłatnej usłudze podpis.gov.pl. Sprawozdanie finansowe zamienisz na czytelny PDF w aplikacji Ministerstwa Finansów. Instrukcje niżej opierają się na stronach ministerstwa, gov.pl, ZUS i Microsoftu w stanie na 21 października 2026 roku.
Plik XML: co to jest i dlaczego dostajesz go zamiast PDF
XML to uniwersalny język znaczników do zapisywania danych w uporządkowany sposób. Tak definiuje go podręcznik Aplikacji Podatnika KSeF Ministerstwa Finansów. Każda dana ma w pliku nazwę, na przykład <P_2>FV/10/2026</P_2> to numer faktury. Dozwolone nazwy i kolejność określa schemat XSD, czyli osobny plik z definicją struktury.
Urzędy i systemy wysyłają XML, bo program odczyta go bez przepisywania. Wśród celów KSeF ministerstwo wymienia brak konieczności ręcznego wprowadzania danych do systemów. PDF służy głównie do pokazania wyglądu dokumentu i nie ma jednolitej struktury pól, jaką ma XML. Dlatego od 2026 roku fakturą w KSeF jest plik XML, a PDF jest tylko jego wizualizacją.
Ten sam mechanizm stoi za e-sprawozdaniami finansowymi, deklaracjami podatkowymi i dokumentami ZUS. Do tego dochodzą pliki z podpisem elektronicznym. W usłudze podpis.gov.pl dokument Worda albo PDF podpisany w formacie XAdES zostaje zapisany jako XML, w którym jest dokument źródłowy i dane podpisu.

Jak otworzyć plik XML na komputerze: przeglądarka, Notatnik, Excel
Najszybciej otworzysz plik XML w przeglądarce. Przeciągnij plik do okna Chrome, Edge albo Firefoksa albo kliknij go prawym przyciskiem myszy i wybierz otwieranie w przeglądarce. Zobaczysz drzewo znaczników ze strzałkami do zwijania gałęzi. Przeglądarka niczego w pliku nie zmienia, więc to bezpieczny sposób na szybki podgląd.

Notatnik w Windowsie i TextEdit na Macu pokażą ten sam plik jako zwykły tekst. Przydają się, gdy chcesz wyszukać jedną wartość skrótem Ctrl+F. Edytor kodu, na przykład VS Code, dodatkowo pokoloruje znaczniki i sformatuje długą linię.
Excel otworzy XML jako tabelę. Według pomocy Microsoftu dla Excela w Microsoft 365, 2024, 2021 i 2019 robi się to tak:
- Wybierz Plik, potem Otwórz i wskaż plik XML.
- W oknie Otwieranie pliku XML wybierz Jako skoroszyt tylko do odczytu.
- Przy plikach do dalszej pracy możesz wybrać Jako tabelę XML albo Użyj okienka zadań Źródło XML.
Microsoft wyjaśnia, że w trybie tylko do odczytu Excel nie zapisze przypadkiem oryginału jako skoroszytu z makrami. Faktura z jedną pozycją wygląda w Excelu dość chaotycznie, bo każdy znacznik dostaje własną kolumnę. Excel sprawdza się przy plikach z wieloma podobnymi rekordami.
Agenci AI · Kodożercy
Twoje przepływy w n8n mogą podejmować decyzje
Kurs Agenci AI od Kodożerców pokazuje, jak dołożyć do n8n warstwę, która czyta dokumenty, dobiera kolejny krok i pyta o zgodę, zanim zrobi coś nieodwracalnego. Budujesz to na własnych integracjach, moduł po module.
Sprawdź, jak to zbudować →
Faktura z KSeF w XML: jak zobaczyć ją jak zwykłą fakturę
Fakturę z KSeF najwygodniej obejrzysz w bezpłatnej Aplikacji Podatnika KSeF, która pokaże ją jako dokument i pozwoli pobrać plik PDF. Na stronie aplikacji ministerstwo wymienia wśród funkcji “wyszukiwanie i pobieranie wystawionych dokumentów w formatach XML lub PDF” oraz “obsługę anonimowego dostępu do faktury”.
Po zalogowaniu: lista faktur
Po zalogowaniu wybierz Lista faktur. Numer KSeF każdej faktury jest linkiem do szczegółów, gdzie widać sprzedawcę, nabywcę i pozycje. Żeby pobrać plik, zaznacz fakturę i rozwiń przycisk Pobierz, a potem wybierz format XML albo PDF. Jednorazowo pobierzesz od 1 do 10 faktur, przy kilku system spakuje je do archiwum ZIP. Nazwa pobranego pliku to numer KSeF faktury. Jak się zalogować i wystawić fakturę, opisaliśmy w poradniku jak wystawić fakturę w KSeF.
Bez logowania: Wyszukaj fakturę
Nabywca bez dostępu do KSeF, na przykład konsument, też może pobrać fakturę. Na stronie logowania Aplikacji Podatnika jest sekcja Anonimowo wyszukaj fakturę. Według podręcznika użytkownika w wersji 2.3 robisz to tak:
- Wybierz przycisk Wyszukaj fakturę.
- Wpisz numer KSeF i przejdź dalej.
- Uzupełnij numer faktury nadany przez sprzedawcę, identyfikator podatkowy nabywcy (NIP, numer VAT UE, inny identyfikator albo brak), imię i nazwisko lub nazwę nabywcy oraz kwotę należności ogółem.
- Wybierz Wyszukaj fakturę, a po znalezieniu kliknij Pobierz i wskaż XML albo PDF.

Wizualizacja faktury nie ma jednego urzędowego wzoru. W podręczniku KSeF 2.0, część II ministerstwo pisze, że jest ona “pochodną przesłanego do KSeF pliku XML”. Faktura pokazana poza systemem ma kod QR z numerem KSeF. Kod prowadzi do faktury w KSeF i pozwala sprawdzić, czy dane na wydruku zgadzają się z systemem.
Opcja Wczytaj fakturę w Aplikacji Podatnika nie służy do czytania faktur od kontrahentów. Według podręcznika wczytuje plik XML po to, żeby wystawić z niego fakturę.
Co znaczą znaczniki w fakturze FA(3)
Faktura z KSeF ma strukturę FA(3), a jej znaczniki mają stałe nazwy. Znaczenie każdego pola opisuje schemat FA(3) opublikowany przez ministerstwo. Najważniejsze pola w praktyce:
| Znacznik | Co oznacza |
|---|---|
Podmiot1 | dane sprzedawcy, w tym NIP i nazwa |
Podmiot2 | dane nabywcy |
P_1 | data wystawienia faktury |
P_2 | numer faktury nadany przez sprzedawcę |
P_7 | nazwa towaru lub usługi w pozycji faktury |
P_13_1 | wartość sprzedaży netto ze stawką podstawową (23% albo 22%) |
P_14_1 | kwota VAT od tej wartości |
P_15 | kwota należności ogółem, czyli suma do zapłaty |
Tak wygląda skrócony fragment faktury, który przygotowaliśmy na fikcyjnych danych:
<Faktura xmlns="http://crd.gov.pl/wzor/2025/06/25/13775/">
<Podmiot1>
<DaneIdentyfikacyjne>
<NIP>1111111111</NIP>
<Nazwa>Pracownia Przykładowa sp. z o.o.</Nazwa>
</DaneIdentyfikacyjne>
</Podmiot1>
<Fa>
<KodWaluty>PLN</KodWaluty>
<P_1>2026-10-21</P_1>
<P_2>FV/10/2026</P_2>
<P_13_1>1000.00</P_13_1>
<P_14_1>230.00</P_14_1>
<P_15>1230.00</P_15>
</Fa>
</Faktura>
Pełna wersja tego pliku przechodzi walidację względem schematu FA(3). Wysyłać jej nigdzie nie należy, bo służy wyłącznie do nauki.
Plik XAdES i XML podpisany profilem zaufanym: jak odczytać dokument
XAdES to format podpisu elektronicznego zapisanego w XML. W bezpłatnej usłudze podpis.gov.pl podpisany plik zawiera dokument źródłowy i dane podpisu. Inne programy do podpisu kwalifikowanego mogą zapisać podpis XAdES także jako osobny plik obok dokumentu. Strona usługi podpis.gov.pl wyjaśnia, że pliki inne niż PDF oraz pliki PDF z formatem podpisu XAdES “po podpisaniu zostaną zmienione na format XML”, a treść dokumentu zostaje w nim “ukryta”. Taki plik dostaniesz od urzędu, z ePUAP albo od kontrahenta. Ma końcówkę .xml albo .xades.
Dokument z pliku XAdES wyjmiesz bezpłatnie w usłudze Podpisz dokument elektronicznie na gov.pl. Do samego odczytu nie potrzebujesz profilu zaufanego. Kroki według gov.pl:
- Na stronie usługi wybierz Podpisz lub sprawdź dokument. Przejdziesz do podpis.gov.pl.
- Wybierz Dodaj plik albo przeciągnij plik na pole. Jednorazowo dodasz do 5 plików o łącznej wielkości do 25 MB.
- Jeśli chcesz sprawdzić podpisy, wybierz Sprawdź, kto podpisał. Prawidłowy podpis ma status Ważny.
- Żeby odczytać dokument, wybierz ikonę pobierania przy pliku, a potem Pobierz plik źródłowy.

Pobrany plik źródłowy otworzysz zwykłym programem, na przykład Wordem albo czytnikiem PDF. Usługa zaznacza, że plik źródłowy nie zawiera podpisu. Do akt i do dalszej korespondencji zachowaj więc oryginalny XML, bo tylko on pozwala sprawdzić, kto podpisał dokument i czy nikt go potem nie zmienił. Jak samemu podpisać plik, opisaliśmy w poradnikach o podpisie profilem zaufanym i o podpisie kwalifikowanym.
Sprawozdanie finansowe w XML: wizualizacja w aplikacji MF
E-sprawozdanie finansowe zobaczysz jako czytelny dokument w bezpłatnej aplikacji e-Sprawozdania Finansowe Ministerstwa Finansów. W pytaniach i odpowiedziach na podatki.gov.pl ministerstwo pisze, że aplikacja “posiada również moduł umożliwiający wizualizację pliku XML do formatu PDF”. Taki PDF wydrukujesz albo prześlesz wspólnikom.
PDF z wizualizacji nie zastępuje sprawozdania. Ministerstwo zaznacza, że w pliku znajdzie się informacja “Dokument nie jest sprawozdaniem finansowym”, bo to tylko pomocniczy podgląd danych. Jeśli sprawozdanie jest podpisane w formacie XAdES, najpierw wyjmij z niego plik źródłowy w podpis.gov.pl, jak w sekcji wyżej.
XML z ZUS i e-Deklaracji: czym go otworzyć i czego nie zmieniać
Pliki z ZUS i e-Deklaracji do podglądu otworzysz w przeglądarce albo edytorze tekstu, ale poprawiaj je w aplikacji obsługującej dany formularz, nie w Notatniku. Pomoc ZUS opisuje, jak zaimportować dokument z pliku XML na koncie płatnika, poprawić go i wysłać do ZUS. Nazwy menu w nowym serwisie eZUS mogą się różnić od opisu w pomocy.
Z e-Deklaracji zostaje ci XML deklaracji i Urzędowe Poświadczenie Odbioru, czyli UPO. Ministerstwo w pytaniach i odpowiedziach o e-Deklaracjach pisze, że dowodem złożenia jest “postać elektroniczna (xml), numer referencyjny zwrócony przez system i wystawione UPO”. Wydruk nie jest potrzebny, ale plików nie kasuj.
Ręczna zmiana takiego pliku w Notatniku to zły pomysł z dwóch powodów. Plik niezgodny ze schematem system urzędu odrzuci. Plik podpisany po zmianie traci ważny podpis, a usługa weryfikacji nie pokaże już statusu Ważny. Błąd w deklaracji poprawia się korektą, a w fakturze z KSeF fakturą korygującą.
XML na PDF: kiedy konwersja ma sens
Konwersja XML na PDF ma sens wtedy, gdy potrzebujesz wydruku albo pliku dla osoby bez dostępu do systemu. Najpierw użyj wizualizacji z oficjalnego narzędzia. Fakturę pobierzesz jako PDF w Aplikacji Podatnika KSeF, a sprawozdanie zwizualizujesz w aplikacji e-Sprawozdania. Ministerstwo wymienia też Aplikację Mobilną KSeF i e-mikrofirmę jako bezpłatne narzędzia do wizualizacji faktur.
Do konwerterów online podchodzimy ostrożnie. Faktura zawiera NIP-y, kwoty i dane kontrahenta, a wgranie jej na nieznany serwis to przekazanie tych danych komuś trzeciemu. Gdyby takie dane wyciekły, firma może mieć obowiązki wobec UODO, co opisaliśmy przy wycieku danych kontrahentów z faktur. PDF z dowolnego konwertera pozostaje kopią do czytania, a dokumentem jest XML.
Jak odczytać plik XML programem: Python i n8n
Gdy plików jest dużo, odczyt warto zlecić programowi. Python ma wbudowany moduł xml.etree.ElementTree, który wyciąga dane z faktury FA(3) w kilku linijkach. Trzeba tylko podać przestrzeń nazw schematu:
import xml.etree.ElementTree as ET
NS = {"fa": "http://crd.gov.pl/wzor/2025/06/25/13775/"}
root = ET.parse("faktura-przyklad-fa3.xml").getroot()
fa = root.find("fa:Fa", NS)
print("Numer faktury:", fa.findtext("fa:P_2", namespaces=NS))
print("Data wystawienia:", fa.findtext("fa:P_1", namespaces=NS))
print("Sprzedawca:", root.findtext("fa:Podmiot1/fa:DaneIdentyfikacyjne/fa:Nazwa", namespaces=NS))
print("Do zapłaty:", fa.findtext("fa:P_15", namespaces=NS), fa.findtext("fa:KodWaluty", namespaces=NS))
Na naszym przykładowym pliku skrypt wypisuje:
Numer faktury: FV/10/2026
Data wystawienia: 2026-10-21
Sprzedawca: Pracownia Przykładowa sp. z o.o.
Do zapłaty: 1230.00 PLN
Bez programowania to samo zrobisz w n8n. Dokumentacja n8n opisuje węzeł XML, który zamienia XML na JSON i odwrotnie. Jeśli XML przychodzi jako załącznik albo plik, najpierw zamienia się go na tekst węzłem Extract from File. Czym jest n8n i co potrafi, wyjaśniamy w tekście co to jest n8n. Pobieranie faktur bezpośrednio z KSeF wymaga już integracji z API systemu, a podstawy API opisaliśmy w poradniku REST API: co to jest i jak działa.
FAQ
Dlaczego plik XML otwiera się jako ciąg znaków?
Przeglądarka albo Notatnik pokazują same dane bez wyglądu dokumentu, bo XML nie zawiera informacji o układzie strony. Czytelny widok daje dopiero program, który zna strukturę pliku. W przypadku faktur jest to Aplikacja Podatnika KSeF, a przy e-sprawozdaniach aplikacja e-Sprawozdania Finansowe. Jeśli plik jest podpisany w formacie XAdES, dokument w środku wyjmiesz w podpis.gov.pl.
Czy można edytować plik XML?
Technicznie tak, każdym edytorem tekstu. W praktyce plików urzędowych nie należy zmieniać ręcznie, bo plik niezgodny ze schematem zostanie odrzucony, a zmiana pliku podpisanego unieważnia podpis. Fakturę w KSeF poprawia się fakturą korygującą, a deklarację korektą.
Jak otworzyć plik XML na telefonie?
Plik XML otworzysz w przeglądarce telefonu, ale zobaczysz surowe dane. Fakturę z KSeF obejrzysz w Aplikacji Mobilnej KSeF, którą ministerstwo wymienia jako bezpłatne narzędzie do wizualizacji faktur. Możesz też otworzyć Aplikację Podatnika KSeF w przeglądarce telefonu i skorzystać z wyszukiwania faktury bez logowania.
Czym różni się XAdES od PAdES?
PAdES to podpis osadzony w pliku PDF, więc odbiorca otwiera dokument jak zwykły PDF. XAdES to podpis w formacie XML, którym można podpisać dowolny plik. W podpis.gov.pl XAdES opakowuje dokument w plik XML, a inne programy mogą zapisać podpis jako osobny plik. Dlatego dokument podpisany w XAdES otwiera się przez podpis.gov.pl albo program do obsługi podpisu.
Sklep, księgowość i CRM nie rozmawiają ze sobą?
Łączymy systemy, których używasz na co dzień, z KSeF, Allegro i BaseLinkerem, żeby dane przestały krążyć w arkuszach i mailach. Zaczynamy od połączenia, które dziś zabiera najwięcej czasu.
Podsumowanie
Plik XML to dane ze znacznikami, które przeglądarka i Notatnik pokażą od razu, ale tylko w surowej postaci. Czytelny dokument daje narzędzie dobrane do źródła. Fakturę z KSeF pobierzesz jako PDF w Aplikacji Podatnika KSeF, po zalogowaniu albo przez Wyszukaj fakturę bez logowania, a fakturą pozostaje plik XML. Plik podpisany w formacie XAdES rozpakujesz w podpis.gov.pl przyciskiem Pobierz plik źródłowy, a podpis sprawdzisz przyciskiem Sprawdź, kto podpisał. E-sprawozdanie zwizualizujesz w aplikacji e-Sprawozdania Finansowe. Plików z ZUS i e-Deklaracji nie poprawiaj ręcznie, a XML z UPO zachowaj jako dowód złożenia. Gdy plików jest dużo, odczyt przejmie skrypt w Pythonie albo węzeł XML w n8n.
Newsletter · DevstockAcademy & Kodożercy
Bądź na bieżąco ze światem IT, AI i automatyzacji
Co wtorek: newsy z branży, praktyczne tipy i narzędzia które warto znać. Zero spamu.



