Plik XML FA(3) - co kryje się w środku?
Tekst opracowany z wykorzystaniem sztucznej inteligencji. Zasady i ograniczenia
Faktura ustrukturyzowana to dokument elektroniczny przygotowany zgodnie z logiką schemy FA(3), która definiuje ścisły układ informacji handlowych i podatkowych. XML to po prostu zestaw par <tag>:wartość</tag>, gdzie każdy znacznik odpowiada za konkretną daną, taką jak stawka podatku VAT czy numer NIP sprzedawcy. Zgodnie z wytycznymi Ministerstwa Finansów, struktura logiczna e-faktury zawiera ponad 400 pól, z których tylko około 35 to pola obowiązkowe wynikające bezpośrednio z art. 106gb ust. 5 ustawy o VAT.
Analiza techniczna pliku pozwala na wyodrębnienie kluczowych bloków danych, które są niezbędne do prawidłowego obiegu dokumentu w Krajowym Systemie e-Faktur. Każda faktura XML zawiera identyczny zestaw pól, co eliminuje dowolność interpretacyjną i błędy typowe dla formatów nieustrukturyzowanych, takich jak PDF czy JPG. Właściwa interpretacja kodu źródłowego wymaga zrozumienia hierarchii znaczników, które grupują informacje o transakcji, podmioty biorące udział w obrocie oraz specyfikację towarowo-usługową.
<Fa>
<P_1>2026-02-03</P_1>
<P_15>1230.50</P_15>
</Fa>
Struktura faktury ustrukturyzowanej dzieli dane na grupy logiczne, co ułatwia automatyzację procesów księgowych i weryfikację przez organy skarbowe. Dobrym rozwiązaniem ułatwiającym pracę z kodem jest otwarcie XML w edytorze z kolorowaniem składni, co pozwala na szybsze zlokalizowanie błędów w zagnieżdżonych elementach. Poniżej przedstawiono kluczowe grupy pól, które stanowią fundament dokumentu FA(3):
InvoiceNumber- unikalny numer faktury nadany przez wystawcę.ProductCode- kod identyfikujący towar lub usługę wg CN lub PKWiU.Seller/NIP- numer identyfikacji podatkowej podmiotu wystawiającego dokument.Buyer/NIP- numer identyfikacji podatkowej nabywcy towaru lub usługi.VatRate- wartość procentowa stawki podatku od towarów i usług.
Jak wygenerować czytelną wizualizację?
Proces wizualizacji polega na przekształceniu danych z pliku XML do formatu przyjaznego dla użytkownika, takiego jak PDF lub widok ekranowy. Ministerstwo Finansów udostępnia bezpłatne narzędzie, jakim jest Aplikacja Podatnika KSeF 2.0, która pozwala na podgląd dokumentu bez limitów ilościowych. Podatnicy po wdrożeniu KSeF będą mogli dokonywać wizualizacji faktury z uwzględnieniem własnych elementów graficznych, takich jak logo firmy, pod warunkiem zachowania spójności z zawartością pliku źródłowego.
Dla celów weryfikacji i testów, resort finansów udostępnił środowisko Sandbox pod adresem: . Narzędzie to pozwala na wklejenie treści XML i natychmiastowe wygenerowanie podglądu, jednak należy pamiętać, że operacje w tym środowisku nie mają skutków prawnych i nie wprowadzają faktury do obrotu produkcyjnego. W środowisku produkcyjnym każda faktura przesłana do KSeF staje się dokumentem wprowadzonym do obiegu prawnego, a jej wizualizacja powinna być wiernym odzwierciedleniem pliku XML.
Zaawansowani użytkownicy oraz programiści mogą wykorzystać technologię XSLT (Extensible Stylesheet Language Transformations) do samodzielnego generowania widoku dokumentu. Pozwala to na pełną automatyzację procesu wewnątrz systemów ERP przedsiębiorstwa, co jest kluczowe przy dużej skali operacji. Zastosowanie odpowiedniego arkusza stylów umożliwia transformację XML do pliku HTML lub PDF w czasie rzeczywistym, co pozwala zaoszczędzić na kosztach licencji komercyjnych programów do fakturowania.
Kod XSLT
<xsl:stylesheet version="1.0" xmlns:xsl="">
<xsl:template match="/">
<html>
<body>
<h2>Faktura ustrukturyzowana</h2>
<p>Data: <xsl:value-of select="//P_1"/></p>
<p>Kwota: <xsl:value-of select="//P_15"/></p>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
Kod QR CERTYFIKAT - po co i gdzie go umieścić?
Kod QR CERTYFIKAT stanowi integralny element wizualizacji faktury ustrukturyzowanej, szczególnie w sytuacjach, gdy dokument jest przekazywany nabywcy poza środowiskiem systemowym KSeF. Zgodnie z art. 106gba ust. 4 ustawy o VAT, posługiwanie się fakturą ustrukturyzowaną poza Krajowym Systemem e-Faktur wymaga opatrzenia jej kodem QR. Mechanizm ten opiera się na algorytmie skrótu: plik XML jest poddawany funkcji hashującej SHA-256, a wynik tej operacji zostaje zakodowany w formie graficznej, co umożliwia potwierdzenie pochodzenia i integralności faktury.
Z punktu widzenia technicznego, kod QR nie zawiera pełnej treści dokumentu, a jedynie unikalny identyfikator i skrót kryptograficzny. Czytnik po zeskanowaniu kodu łączy się z systemem Ministerstwa Finansów i porównuje hash z dokumentem źródłowym przechowywanym w bazie KSeF. Gwarantuje to, że wizualizacja, którą dysponuje kontrahent, jest identyczna z plikiem XML zapisanym w systemie. Błędny lub nieczytelny kod QR uniemożliwia weryfikację autentyczności faktury, co w świetle przepisów może zostać uznane za brak wystawienia dokumentu.
Wytyczne dotyczące umieszczenia kodu QR na wydruku są precyzyjne i wynikają z konieczności zapewnienia wysokiej czytelności dla skanerów. Zgodnie z interpretacjami organów podatkowych, kod powinien posiadać minimalne wymiary 30 × 30 mm i być umieszczony w sposób niezakłócający czytelności pozostałych danych, najczęściej w prawym dolnym rogu dokumentu. Należy dbać o wysoką rozdzielczość wydruku (minimum 600 dpi), aby umożliwić bezproblemową weryfikację przez aplikacje mobilne i systemy księgowe.
| Parametr techniczny | Wymóg/Wartość |
|---|---|
| Minimalna szerokość | 30 mm |
| Standard kodowania | ISO/IEC 18004 |
| Wymagana rozdzielczość | 600 dpi (zalecane) |
Najczęstsze błędy i jak ich uniknąć
Wdrożenie standardu XML FA(3) wiąże się z koniecznością rygorystycznego przestrzegania walidacji logicznej dokumentu. Najczęstszym błędem jest niepoprawny numer NIP, który wynika z błędów w cyfrze kontrolnej lub braku odpowiedniego prefiksu kraju. System KSeF nie weryfikuje danych nabywcy pod kątem ich zgodności z rzeczywistą nazwą firmy, co przenosi pełną odpowiedzialność za poprawność tych informacji na sprzedawcę. Weryfikacja danych kontrahentów przed wysyłką dokumentu do środowiska produkcyjnego jest zatem niezbędnym etapem procesu sprzedażowego.
Innym istotnym problemem jest wielkość pliku XML wraz z załącznikami, która nie może przekroczyć 3 MB. Przekroczenie tego limitu skutkuje odrzuceniem faktury przez bramkę Ministerstwa Finansów. W takich przypadkach sugeruje się przesyłanie rozbudowanych załączników drogą mailową, z jednoczesnym wskazaniem numeru identyfikacyjnego KSeF w treści wiadomości. Należy pamiętać, że po przyjęciu przez KSeF faktura staje się dokumentem prawnym i nie można jej anulować ani usunąć; wszelkie pomyłki wymagają wystawienia faktury korygującej w formie kolejnego pliku ustrukturyzowanego.
Przed pełnym wdrożeniem obligatoryjnego systemu warto przeszkolić zespół w środowisku testowym sandbox KSeF i przetestować aplikację pod kątem generowania poprawnych struktur XML. Od 1 kwietnia 2026 r. wszyscy przedsiębiorcy będą musieli wystawiać faktury w KSeF, a niedopełnienie tego obowiązku może skutkować nałożeniem administracyjnej kary pieniężnej w wysokości do 100% kwoty podatku VAT wykazanego na fakturze.
Pomyliłem datę sprzedaży - co robić?
System nie widzi NIP-u kontrahenta
QR jest rozmyty po wydruku
Redakcja · wszystkie artykuły