Od 1 lutego 2026 r. obowiązuje nowa struktura logiczna e-faktury – FA(3). Zastąpiła ona stosowaną wcześniej strukturę FA(2) i jest obecnie jedynym właściwym formatem dla faktur ustrukturyzowanych wystawianych w KSeF.
Dla większości użytkowników zmiana nie oznacza konieczności ręcznego tworzenia nowych plików XML. Jeżeli korzystamy z programu do fakturowania zaktualizowanego i przygotowanego do KSeF 2.0, odpowiednią strukturę dokumentu powinno przygotować oprogramowanie. Warto jednak wiedzieć, co zmieniło się w FA(3), ponieważ część zmian może wymagać dostosowania danych, konfiguracji lub integracji z systemem księgowym.
FA(3) – co właściwie się zmienia?
FA(3) nie jest całkowicie nowym sposobem wystawiania faktur. To kolejna wersja struktury XML, w której Ministerstwo Finansów uporządkowało istniejące rozwiązania i dodało możliwości, na które zwracali uwagę przedsiębiorcy, księgowi oraz dostawcy oprogramowania.
Do najważniejszych zmian należą m.in.:
- zmiany dotyczące prezentowania terminu płatności,
- możliwość wskazania dodatkowego podmiotu w roli pracownika w strukturze Podmiot3,
- zwiększenie długości pola P_7, czyli nazwy towaru lub usługi,
- rozwiązania przeznaczone dla jednostek samorządu terytorialnego (JST),
- rozwiązania dotyczące grup VAT (GV),
- możliwość dodania do faktury załącznika,
- zmiany i rozszerzenia dotyczące danych płatności, transportu oraz innych informacji dodatkowych.
Na pierwszy rzut oka są to zmiany techniczne. W praktyce mogą jednak mieć znaczenie dla programów fakturujących, integracji z systemami księgowymi oraz własnych aplikacji korzystających z API KSeF.
Szczególnie ważne: załączniki do faktury
Jedną z bardziej zauważalnych nowości jest możliwość przekazywania załącznika do faktury w ramach struktury FA(3).
Nie oznacza to jednak, że do każdej faktury można po prostu dołączyć dowolny plik. Skorzystanie z funkcjonalności załącznika wymaga wcześniejszego dopełnienia formalności w e-Urzędzie Skarbowym, a następnie odpowiedniego wykorzystania elementu Zalacznik w strukturze FA(3).
Dla firm, które na co dzień przekazują wraz z fakturą dodatkowe zestawienia, specyfikacje lub inne dokumenty, może to być bardzo przydatna zmiana.
Więcej miejsca na nazwę towaru lub usługi
FA(3) zwiększa również długość pola P_7, przeznaczonego na nazwę towaru lub usługi.
To pozornie drobna zmiana, ale może być istotna dla firm, które stosują długie, szczegółowe nazwy pozycji faktury.
Warto przy okazji sprawdzić, czy system fakturujący oraz system księgowy nie mają własnych ograniczeń długości tego pola. Sama możliwość zapisania dłuższej nazwy w FA(3) nie gwarantuje bowiem, że każdy element firmowego obiegu dokumentów będzie potrafił ją poprawnie obsłużyć.
Termin płatności i dane dodatkowe
FA(3) wprowadza również zmiany dotyczące prezentowania terminu płatności oraz rozszerza możliwości przekazywania informacji związanych m.in. z płatnością i transportem.
W przypadku prostego programu do fakturowania zmiana może być praktycznie niewidoczna dla użytkownika.
Inaczej wygląda sytuacja w przypadku własnych integracji, eksportów XML lub systemów automatycznie przetwarzających faktury. Tam nawet niewielka zmiana nazwy, struktury lub sposobu interpretacji pola może wymagać modyfikacji oprogramowania.
Co z korektami do starych faktur?
To ważna kwestia.
Od 1 lutego 2026 r. również faktury korygujące dotyczące faktur pierwotnych wystawionych jeszcze w FA(1) lub FA(2) są wystawiane w strukturze FA(3). To samo dotyczy faktur rozliczających, jeżeli faktura zaliczkowa została wcześniej wystawiona w FA(1) lub FA(2).
Oznacza to, że system nie może zakładać, iż korekta będzie miała zawsze tę samą strukturę co faktura pierwotna.
Przy projektowaniu integracji z KSeF warto więc rozdzielić:
strukturę faktury, którą otrzymujemy lub wystawiamy dzisiaj, od struktury dokumentu, którego ta faktura dotyczy.
To szczególnie istotne przy automatycznej obsłudze korekt.
Numer KSeF staje się jeszcze ważniejszy
FA(3) wymaga również prawidłowego powiązywania dokumentów w ramach jednej transakcji.
Przy wystawianiu faktury rozliczającej należy wskazać numer KSeF faktury zaliczkowej. Z kolei przy wystawianiu korekty do faktury ustrukturyzowanej należy wskazać numer KSeF faktury pierwotnej.
Dla użytkownika może to być niewidoczne, ale dla programu księgowego lub systemu integracyjnego oznacza konieczność przechowywania numerów KSeF i poprawnego wiązania dokumentów.
Co trzeba zrobić w firmie?
Jeżeli korzystamy z gotowego programu do fakturowania, pierwszym krokiem powinno być sprawdzenie, czy producent programu zapewnił obsługę KSeF 2.0 i FA(3).
Jeżeli korzystamy z własnej integracji, warto zrobić znacznie więcej.
1. Sprawdzić wersję programu
Program do fakturowania lub system ERP powinien obsługiwać FA(3) oraz KSeF 2.0.
Nie wystarczy, że program „ma KSeF”. Istotne jest, z jakiej wersji API i struktury faktury korzysta.
2. Przetestować wystawianie faktur
Warto sprawdzić co najmniej:
- zwykłą fakturę sprzedaży,
- fakturę z wieloma pozycjami,
- fakturę z długą nazwą towaru/usługi,
- fakturę z terminem płatności,
- fakturę zaliczkową,
- fakturę rozliczającą,
- korektę do faktury wystawionej już w FA(3),
- korektę do starszej faktury wystawionej w FA(2).
3. Sprawdzić odbieranie faktur
Samo wysłanie faktury do KSeF to tylko połowa problemu.
System powinien prawidłowo pobierać faktury zakupowe, zapisywać numer KSeF oraz przekazywać wszystkie potrzebne dane do księgowości.
Warto szczególnie sprawdzić, czy nie giną informacje znajdujące się w nowych lub rozszerzonych polach FA(3).
4. Jeżeli mamy własną integrację – zaktualizować walidację XML
Własne oprogramowanie nie powinno zakładać, że struktura FA(2) i FA(3) są zamienne.
Plik przesyłany do KSeF musi być zgodny z obowiązującą strukturą. Jeżeli wymagane elementy nie zostaną prawidłowo wypełnione, dokument może zostać odrzucony.
Dlatego integrację warto przetestować zarówno pod kątem poprawności XML, jak i poprawności biznesowej danych.
FA(3) to nie tylko zmiana XML
Najważniejsza rzecz, o której warto pamiętać, jest prosta:
FA(3) nie powinna być traktowana wyłącznie jako aktualizacja pliku XML.
Zmiana struktury wpływa na cały obieg faktury:
program fakturujący → KSeF → system księgowy → JPK → archiwizacja → korekty i płatności.
Od 1 lutego 2026 r. numer KSeF jest również wykazywany w ewidencyjnej części JPK_V7M(3) i JPK_V7K(3), zarówno po stronie sprzedaży, jak i zakupów.
Dlatego przy aktualizacji systemu warto sprawdzić cały proces, a nie tylko samo wystawienie faktury.
Czy trzeba się bać FA(3)?
Nie.
Dla użytkownika korzystającego z aktualnego, komercyjnego programu księgowego lub fakturującego większość zmian powinna zostać obsłużona przez producenta oprogramowania.
Więcej uwagi powinny poświęcić firmy, które:
- mają własny system fakturowania,
- generują XML samodzielnie,
- integrują ERP z KSeF,
- automatycznie importują faktury do księgowości,
- mają własne obiegi dokumentów,
- przechowują i przetwarzają dane faktur poza głównym systemem księgowym.
W takich przypadkach warto przeprowadzić pełny test integracji z FA(3), a nie ograniczać się do sprawdzenia, czy jedna przykładowa faktura została zaakceptowana przez KSeF.
Podsumowanie
FA(3) jest przede wszystkim kolejnym etapem standaryzacji e-faktur w KSeF. Z punktu widzenia przedsiębiorcy najważniejsze są nie same zmiany w strukturze XML, ale ich konsekwencje dla oprogramowania i obiegu dokumentów.
Najlepsze przygotowanie to:
- aktualny program obsługujący KSeF 2.0 i FA(3),
- sprawdzona integracja z księgowością,
- prawidłowe przechowywanie numerów KSeF,
- przetestowane faktury zaliczkowe, rozliczające i korekty,
- sprawdzenie importu faktur zakupowych,
- weryfikacja eksportów i raportowania do JPK,
- test całego procesu przed rozpoczęciem produkcyjnego wykorzystania nowych funkcji.
FA(3) daje przy tym kilka praktycznych możliwości, których wcześniej brakowało – między innymi bardziej rozbudowane dane dotyczące podmiotów, płatności oraz możliwość dodania załącznika. Dla większości firm najważniejsze jest jednak to, aby nie traktować zmiany jako zwykłej aktualizacji formatu, ale jako aktualizację całego procesu obsługi faktur.