| Faktura online | Faktura offline | |
|---|---|---|
| Liczba kodów QR | Jeden (KOD I) | Dwa (KOD I i KOD II) |
| Napis pod KODEM I | Numer KSeF faktury | OFFLINE, dopóki nie ma numeru KSeF |
| KOD II | Nie występuje | Potwierdza wystawcę certyfikatem KSeF typu Offline |
Faktura KSeF: wzór, wizualizacja i kod QR. Jak wygląda faktura poza systemem
Faktura KSeF to plik XML, a nie wzór graficzny. Jak wygląda wizualizacja, co zawiera kod QR i kiedy pod nim jest numer KSeF, a kiedy napis OFFLINE.
Pytanie o „wzór faktury KSeF” ma prostą odpowiedź: wzoru graficznego nie ma. Faktura w KSeF to plik XML zgodny ze strukturą logiczną FA(3), a to, jak wygląda na ekranie czy na wydruku, zależy od programu. Przepisy określają za to, co musi się znaleźć na wizualizacji, gdy fakturę przekazujesz poza KSeF: kod QR, a pod nim numer KSeF albo napis OFFLINE.
Wzór faktury KSeF: struktura zamiast szablonu
Ministerstwo Finansów publikuje strukturę FA(3), czyli listę pól i reguł, z których składa się plik faktury. To odpowiednik wzoru, ale dla programu, nie dla człowieka. Szczegóły struktury opisałem w tekście o fakturze ustrukturyzowanej FA(3). Program, z którego wystawiasz fakturę, układa z tych pól czytelny dokument: PDF, podgląd w przeglądarce albo wydruk. Każdy program może to zrobić po swojemu.
Kiedy potrzebna jest wizualizacja z kodem QR
- Nabywca nie ma dostępu do KSeF, np. firma zagraniczna albo konsument. Opisuję to w tekstach o fakturach zagranicznych i fakturze dla osoby fizycznej.
- Wysyłasz fakturę mailem jako PDF albo dołączasz wydruk do paczki.
- Fakturę wystawiono w trybie offline i nie ma jeszcze numeru KSeF.
Kod QR pozwala każdemu sprawdzić, czy faktura jest w KSeF i czy nikt jej nie zmienił, a także pobrać jej plik XML bez kontaktu z wystawcą.
Co zawiera kod QR na fakturze KSeF
Kod QR (KOD I) to link do serwisu weryfikacji Ministerstwa Finansów. Składa się z adresu serwisu, NIP-u sprzedawcy, daty wystawienia z pola P_1 w formacie DD-MM-RRRR i skrótu SHA-256 pliku faktury zakodowanego w Base64URL. Skrót sprawia, że zmiana choćby jednego znaku w pliku daje inny link, więc podrobiona faktura nie przejdzie weryfikacji. Kod generuje program wystawcy, lokalnie, i musi być zgodny z normą ISO/IEC 18004:2024.
Ciekawostka z dokumentacji: napis OFFLINE pojawia się także przy fakturze online, która czeka na numer KSeF, np. przy dużym obciążeniu systemu. Zwykle numer jest nadawany od razu po przesłaniu. Tryb offline opisuję w tekście o offline24.
Co musi zrobić sklep internetowy
- 1
Wysyłka XML do KSeF
Sklep albo program fakturowy wysyła fakturę i czeka na numer KSeF.
- 2
PDF z kodem QR
Klient dostaje mailem wizualizację z kodem QR i numerem KSeF pod nim.
- 3
Link w panelu klienta
Ta sama faktura jest do pobrania w koncie klienta, bez szukania w skrzynce.
Co powinno być na czytelnej wizualizacji faktury
- Wszystkie dane z pliku XML w zwykłym układzie faktury: sprzedawca, nabywca, pozycje, stawki, kwoty, płatność.
- Kod QR w rozmiarze, który da się zeskanować telefonem z wydruku, z numerem KSeF albo napisem OFFLINE pod spodem.
- Data wystawienia z pola P_1, a nie data wygenerowania PDF-u.
- Przy kliencie zagranicznym czytelne opisy w języku nabywcy. Plik XML zostaje po polsku, wizualizacja może być dwujęzyczna.
Wizualizacja nie może różnić się treścią od pliku, który trafił do KSeF. Jeśli PDF powstaje z innego źródła niż XML, np. z szablonu w sklepie, prędzej czy później pojawi się rozbieżność, a kod QR zaprowadzi klienta do faktury z inną kwotą.
Źródło: kody weryfikujące QR w dokumentacji KSeF 2.0.
›Czy mogę zaprojektować własny wygląd faktury KSeF?
Tak. Wygląd wizualizacji zależy od programu. Obowiązkowy jest kod QR z właściwym oznaczeniem, gdy fakturę przekazujesz poza KSeF.
›Czy kod QR można zastąpić linkiem?
Jeśli format danych nie pozwala umieścić kodu na fakturze, dokumentacja każe dostarczyć go odbiorcy jako osobny plik graficzny albo link. Na PDF-ie i wydruku kod QR jest standardem.
›Skąd wziąć numer KSeF do wizualizacji?
KSeF nadaje go po przyjęciu faktury. Jego budowę opisuję w tekście o numerze KSeF, a całą obsługę po stronie sklepu w usłudze integracja z KSeF.
Chcesz przegadać swój projekt?
Odpowiadam osobiście w ciągu 24h w dni robocze — bez handlowca po drodze.