KSeF i Excel
Jak otworzyć fakturę XML z KSeF w Excelu (i dlaczego 50 faktur to już problem)
Krótka odpowiedź: otwórz Excel, wybierz Dane > Pobierz dane > Z pliku > Z pliku XML i wskaż fakturę pobraną z KSeF (Microsoft Support). Tyle że zamiast jednej czytelnej tabeli zobaczysz kilka. Faktura FA(3) ma bowiem osobne sekcje na dane sprzedawcy, nabywcy, nagłówek i pozycje. Z jedną fakturą można sobie w ten sposób poradzić. Jeśli jednak co miesiąc pobierasz ich kilkadziesiąt, warto zrobić to inaczej. Pokażemy, jak przygotować zapytanie dla całego folderu i kiedy lepiej skorzystać z gotowego narzędzia.
Wolisz zlecić to komuś? Faktury XML z KSeF do Excela: robimy to za Ciebie, stała cena 890 zł.
Czym jest plik z KSeF
Faktura pobrana z KSeF to plik XML zgodny ze strukturą logiczną FA(3), z nadanym numerem KSeF. Od 1 lutego 2026 r. system przyjmuje faktury wyłącznie w tej strukturze (MF, Podręcznik KSeF 2.0 cz. II).
Plik możesz pobrać ze swojego programu do faktur albo z bezpłatnej Aplikacji Podatnika KSeF. Ta druga pozwala wyszukiwać faktury i pobierać je zarówno jako XML, jak i PDF (MF, Aplikacja Podatnika KSeF 2.0).
Jeśli potrzebujesz tylko sprawdzić, co jest na fakturze, pobierz PDF. Nie ma sensu uruchamiać Excela, żeby przeczytać jedną fakturę.
XML przydaje się wtedy, gdy chcesz coś z tymi danymi zrobić. Na przykład zsumować koszty z całego miesiąca, policzyć VAT albo sprawdzić dokumenty przed przekazaniem ich do biura rachunkowego.
Najważniejsze pola faktury FA(3)
Po otwarciu XML zobaczysz oznaczenia takie jak P_1, P_13_1 czy P_15. Na pierwszy rzut oka niewiele mówią, ale każde odpowiada konkretnej informacji z faktury.
Poniżej zebraliśmy pola, które najczęściej przydają się przy robieniu zestawień. Opisy pochodzą z broszury MF o strukturze FA(3).
| Pole w XML | Co zawiera |
|---|---|
| P_1 | data wystawienia faktury |
| P_2 | numer faktury nadany przez wystawcę |
| Podmiot1 / NIP | NIP sprzedawcy |
| Podmiot2 | dane nabywcy |
| P_13_1 i P_14_1 | netto i VAT dla stawki podstawowej (dziś 23% albo 22%) |
| P_13_2 i P_14_2 | netto i VAT dla pierwszej stawki obniżonej (dziś 8% albo 7%) |
| P_15 | kwota należności ogółem |
| RodzajFaktury | VAT, KOR (korekta), ZAL (zaliczkowa) i inne |
Zwróć szczególną uwagę na pole RodzajFaktury. Polecamy zawsze uwzględniać je w zestawieniu.
Dlaczego? Bo w przypadku korekty wartości P_13 i P_14 oznaczają różnicę, a nie nową wartość całej faktury. Jeśli wrzucisz zwykłe faktury i korekty do jednej tabeli, a potem bez sprawdzenia zsumujesz kwoty, możesz dostać błędny wynik.
Kroki: jedna faktura w Excelu
Do otwarcia pojedynczej faktury wystarczy Excel z Power Query. Nie trzeba instalować żadnych dodatkowych programów.
- Pobierz fakturę jako XML z Aplikacji Podatnika KSeF albo ze swojego programu.
- Otwórz Excel, przejdź do zakładki Dane i wybierz Pobierz dane > Z pliku > Z pliku XML.
- Wskaż pobrany plik i kliknij Otwórz. Excel wyświetli okno Nawigator z dostępnymi tabelami (Microsoft Support).
- Wybierz tabelę Fa, a następnie kliknij Przekształć dane. Otworzy się edytor Power Query.
- Rozwiń potrzebne kolumny, klikając ikonę dwóch strzałek w ich nagłówkach. Zostaw tylko pola, które chcesz mieć w zestawieniu. Możesz skorzystać z tabeli powyżej.
- Zanim załadujesz dane, ustaw kolumnę z NIP jako tekst. To ważne, bo Excel potrafi potraktować identyfikator jak zwykłą liczbę, usunąć początkowe zera albo zmienić jego zapis.
- Na koniec kliknij Zamknij i załaduj.
Gotowe. Masz dane z faktury w arkuszu i możesz je dalej obrabiać.
Przy jednej fakturze jest z tym trochę klikania, ale da się to zrobić bez większych problemów.
Kroki: wiele faktur naraz
A co, jeśli zamiast jednej faktury masz ich 20, 50 albo 100?
Nie musisz otwierać każdej osobno. Power Query potrafi pobrać pliki z całego folderu i zastosować do nich te same przekształcenia. Takie podejście opisuje również Microsoft w dokumentacji łącznika XML (Microsoft Learn, łącznik XML).
- Zapisz wszystkie faktury XML z danego miesiąca w jednym folderze.
- W Excelu wybierz Dane > Pobierz dane > Z pliku > Z folderu.
- Kliknij Połącz i przekształć. Jako plik przykładowy wskaż jedną z faktur.
- W Power Query przygotuj kolumny tak samo jak przy pojedynczej fakturze. Excel zastosuje te operacje do pozostałych plików.
- W następnym miesiącu wystarczy podmienić zawartość folderu i kliknąć Odśwież.
To wygodniejsze niż ręczne otwieranie kilkudziesięciu plików. Trzeba jednak pamiętać, że zapytanie przygotowane na podstawie jednej faktury niekoniecznie poprawnie obsłuży wszystkie pozostałe.
I tu zaczynają się schody.
Dlaczego 50 faktur to już problem
Samo wczytanie 50 plików nie jest dla Excela żadnym wyzwaniem. Problem pojawia się później, kiedy próbujesz zrobić z nich jedno poprawne zestawienie.
Na co trzeba uważać?
- Różne stawki VAT. Jedna faktura zawiera wyłącznie 23% VAT, a kolejna ma pozycje ze stawkami 23% i 8%. Nie wszystkie pola P_13_x muszą występować w każdym pliku. Jeśli nie uwzględnisz tego w zapytaniu, część danych może się nie wczytać prawidłowo.
- Korekty. Trzeba je rozpoznać i odpowiednio uwzględnić w obliczeniach. W przeciwnym razie łatwo doliczyć kwotę, którą należało odjąć.
- Duplikaty. Pobierzesz fakturę drugi raz, a system zapisze ją pod nazwą z dopiskiem „(1)”. Dla Excela to kolejny plik. Jeśli nie sprawdzisz numerów faktur, ten sam dokument trafi do zestawienia dwa razy.
- Pozycje. Dane poszczególnych towarów i usług znajdują się w osobnej części XML. Jeśli potrzebujesz nie tylko kwot z całej faktury, ale też jej pozycji, musisz odpowiednio rozwinąć zagnieżdżone dane.
- Sprawdzenie sum. Samo zaimportowanie pliku nie oznacza, że ktoś sprawdził zgodność kwot netto i VAT z wartością P_15. Taką kontrolę trzeba przygotować osobno.
Z naszego doświadczenia przy pracy z takimi zestawieniami wynika, że najwięcej czasu często nie zajmuje samo przygotowanie importu. Gorzej, kiedy suma w Excelu nie zgadza się z dokumentami i trzeba ustalić, która z kilkudziesięciu faktur powoduje różnicę.
Przy 5 plikach można to jeszcze sprawdzić ręcznie. Przy 50 robi się z tego niepotrzebna robota.
Jeśli nie chcesz budować tego sam
Przygotowaliśmy demo „Faktury z KSeF do arkusza”, które działa bezpośrednio w przeglądarce.
Możesz wrzucić do niego pojedyncze pliki XML albo całą paczkę ZIP. Narzędzie obsługuje do 100 plików naraz, maksymalnie 5 MB na plik.
Sprawdza poprawność NIP-ów za pomocą sumy kontrolnej, kontroluje zgodność sum, rozpoznaje korekty i oznacza duplikaty. Nie musisz też wysyłać swoich faktur na żaden serwer. Pliki pozostają na Twoim komputerze.
Jeśli potrzebujesz rozwiązania dopasowanego do własnych faktur albo układu danych wymaganego przez Twój program, możemy je przygotować. Opisaliśmy to szerzej na stronie Faktury z KSeF do Excela.
FAQ
Dlaczego po dwukliku plik XML otwiera się w przeglądarce, a nie w Excelu?
Bo system ma ustawioną przeglądarkę jako domyślny program do otwierania plików .xml. Żeby wczytać fakturę do Excela, skorzystaj z opcji Dane > Pobierz dane zamiast otwierać plik dwuklikiem.
Czy mogę po prostu zmienić rozszerzenie na .xlsx?
Nie. Zmiana nazwy pliku nie zmienia jego formatu. XML i XLSX to dwa różne formaty. Excel nie otworzy takiego pliku poprawnie albo wyświetli błąd.
Mam starsze faktury w FA(2). Czy ta metoda zadziała?
Tak, sposób importowania jest podobny. Trzeba jednak uwzględnić różnice między FA(2) i FA(3). Jeśli chcesz obsługiwać oba formaty jednym zapytaniem, musisz odpowiednio je dostosować. Od 1 lutego 2026 r. obowiązuje struktura FA(3) (MF, Podręcznik KSeF 2.0 cz. II).
Czy plik z Excela mogę wysłać z powrotem do KSeF?
Nie bezpośrednio. KSeF przyjmuje faktury w formacie XML zgodnym ze strukturą FA(3). Zwykły arkusz Excela nie spełnia tych wymagań. System odrzuci plik niezgodny ze wzorem (to samo źródło).
Czy mogę pobierać faktury z KSeF automatycznie?
Tak. KSeF udostępnia API, z którego korzystają między innymi programy do fakturowania. Zanim zdecydujesz się na kolejne narzędzie, sprawdź ustawienia swojego programu. Możliwe, że automatyczne pobieranie faktur masz już dostępne i nie musisz za nie dodatkowo płacić.
Stan na 26.10.2026.