Faktura korygująca w KSeF – jak poprawnie skorygować fakturę FA(3) (ilość, cena, stawka VAT, dane nabywcy)
Faktura wysłana do KSeF nie znika z systemu, nawet jeśli zawiera błąd — nie da się jej po prostu usunąć czy nadpisać. Jedyną poprawną drogą jest wystawienie faktury korygującej, zgodnej ze schematem FA(3), która odnosi się do faktury pierwotnej i precyzyjnie opisuje, co się zmienia. Problem w tym, że korekta wygląda inaczej w zależności od tego, co dokładnie trzeba poprawić — a to jedno z miejsc, gdzie łatwo o błąd, zwłaszcza w obliczeniach VAT.
Rodzaje korekt — to nie jest jeden szablon
W praktyce korekta faktury FA(3) może dotyczyć różnych elementów, a każdy z nich wymaga innej logiki przeliczeń:
- Korekta ilości — zmiana liczby sztuk/jednostek pozycji (np. zwrot części towaru).
- Korekta ceny — zmiana ceny jednostkowej przy tej samej ilości (np. rabat posprzedażowy, reklamacja).
- Korekta stawki VAT — zmiana zastosowanej stawki podatku dla danej pozycji (np. błędna klasyfikacja towaru/usługi).
- Korekta mieszana — jednoczesna zmiana kilku elementów (ilość i cena, cena i stawka VAT itd.).
- Korekta danych nabywcy/sprzedawcy — poprawa błędnych danych kontrahenta (np. zły NIP, nazwa firmy), bez zmiany wartości pozycji.
Dokument korygujący musi zawierać zarówno wartości "przed", jak i "po" korekcie oraz różnicę — a XSD faktury FA(3) narzuca konkretną kolejność elementów, którą trzeba zachować, inaczej dokument zostanie odrzucony przez KSeF.
Najczęstszy błąd: zaokrąglenia VAT liczone per pozycja
Najbardziej podchwytliwy problem w korektach to sposób liczenia VAT. Intuicyjne podejście — przeliczenie stawki VAT osobno dla każdej pozycji i zsumowanie wyników — potrafi dać inny wynik niż przeliczenie VAT od sumy wartości netto w danej stawce. Różnica bierze się z zaokrągleń: przy wielu pozycjach o niskich kwotach błędy zaokrągleń kumulują się inaczej w zależności od kolejności obliczeń.
Poprawne podejście to liczenie VAT od sumy wartości netto w danej stawce, a nie sumowanie VAT wyliczonego osobno dla każdej linii. To jedna z tych rzeczy, które na pierwszy rzut oka wyglądają dobrze w testach z jedną pozycją, a psują się dopiero przy fakturach wieloliniowych — dlatego dokładne testy na rzeczywistych, złożonych fakturach są tu kluczowe.
Jak to wygląda zautomatyzowane
Proces generowania korekty można sprowadzić do kilku kroków:
- Wskazanie faktury pierwotnej (numer KSeF, dane referencyjne).
- Wybór typu korekty (ilość / cena / stawka VAT / mieszana / dane kontrahenta).
- Wprowadzenie nowych wartości — system automatycznie oblicza różnice i generuje poprawny dokument XML zgodny z FA(3).
- Walidacja przeciwko schemie XSD przed wysyłką, żeby uniknąć odrzucenia przez KSeF.
- Wysyłka korekty do KSeF i odbiór nowego numeru oraz UPO.
Dzięki temu osoba wystawiająca korektę nie musi znać szczegółów struktury XML ani ręcznie liczyć różnic — wystarczy wskazać, co się zmienia, a reszta dzieje się automatycznie.
Dla kogo to ważne
Korekty to codzienność w sprzedaży z częstymi zwrotami czy reklamacjami (e-commerce, marketplace'y), ale też w rozliczeniach B2B, gdzie błędy w danych kontrahenta czy stawkach VAT zdarzają się częściej, niż mogłoby się wydawać. Biura rachunkowe obsługujące wielu klientów zyskują tu szczególnie dużo — zamiast ręcznie pilnować logiki korekt dla każdego klienta osobno, mają jeden spójny mechanizm.
Podsumowanie
Korekta faktury w KSeF nie jest skomplikowana koncepcyjnie, ale wymaga precyzji — zarówno w strukturze XML, jak i w samych obliczeniach VAT. Automatyzacja tego procesu eliminuje ręczne liczenie różnic i najczęstsze źródło błędów, czyli niepoprawne zaokrąglenia przy wielu pozycjach.
Chcesz sprawdzić, jak to działa w praktyce? Skontaktuj się z nami lub zapoznaj się z dokumentacją API.