Jak dobrać kurs waluty na e-fakturze w KSeF?

Kurs waluty na e-fakturze przelicza się według kursu średniego NBP z ostatniego dnia roboczego poprzedzającego powstanie obowiązku podatkowego lub wystawienie dokumentu. Do rozliczeń VAT stosuje się wyłącznie tabelę A NBP. KSeF nie przesuwa automatycznie kotwicy kursowej, o ile zachowane są zasady trybu offline24.

8 min czytania 45 wyświetleń
Jak dobrać kurs waluty na e-fakturze w KSeF?

KSeF przesunął uwagę przedsiębiorców na jedną datę: dzień przesłania pliku XML do systemu. To dobra data do numerowania faktur i kiepska do przeliczania waluty. Obowiązek podatkowy w VAT powstaje w dniu dostawy albo wykonania usługi i to on, a nie moment wysyłki, wyznacza kurs.

Termin ma znaczenie teraz. Faktury ustrukturyzowane są obowiązkowe od 1 lutego 2026 r. dla największych podatników i od 1 kwietnia 2026 r. dla pozostałych. Kary administracyjne za naruszenia obowiązków KSeF zaczynają obowiązywać 1 stycznia 2027 r. Do tego momentu pomyłka kursowa oznacza głównie korektę JPK_V7. Potem będzie kosztować więcej.

Poniżej: która data wyznacza kurs, dlaczego tabela A, co robić z weekendem i świętem, jak KSeF zmienia datę wystawienia i który błąd walutowy widzę u użytkowników najczęściej.

Która data wyznacza kurs

Zasada ogólna jest w art. 31a ust. 1 ustawy o VAT: kwoty w walucie obcej przeliczasz według kursu średniego NBP ogłoszonego na ostatni dzień roboczy poprzedzający dzień powstania obowiązku podatkowego.

Wyjątek jest w art. 31a ust. 2: jeżeli wystawiasz fakturę przed powstaniem obowiązku podatkowego, kurs bierzesz z ostatniego dnia roboczego poprzedzającego dzień wystawienia faktury.

Praktycznie sprowadza się to do jednej reguły. Kotwicą jest wcześniejsza z dwóch dat: dzień powstania obowiązku podatkowego albo dzień wystawienia faktury. Od tej daty cofasz się do ostatniego dnia roboczego.

Sytuacja Kotwica Kurs z dnia Dostawa 7 stycznia, faktura wysłana 12 stycznia dostawa (7 stycznia) ostatni dzień roboczy przed 7 stycznia Faktura wystawiona 10 marca, dostawa 25 marca wystawienie (10 marca) ostatni dzień roboczy przed 10 marca Usługa ciągła rozliczana miesięcznie koniec okresu rozliczeniowego (art. 19a ust. 3) ostatni dzień roboczy przed końcem okresu Zaliczka wpłacona 4 lutego otrzymanie zaliczki (4 lutego) ostatni dzień roboczy przed 4 lutego

Uwaga na usługi ciągłe. Przy rozliczeniu okresowym obowiązek podatkowy powstaje z upływem okresu, a nie w dniu wykonania poszczególnych czynności. Kotwicą jest koniec okresu.

Dlaczego tabela A, a nie B ani C

NBP publikuje trzy tabele. Do VAT stosujesz wyłącznie tabelę A, czyli kursy średnie walut obcych. Tabela B obejmuje waluty mniej popularne i publikowana jest raz w tygodniu. Tabela C podaje kursy kupna i sprzedaży, używane w rozliczeniach bankowych, nie podatkowych.

Numer tabeli warto zapisać na fakturze, na przykład A/041/NBP/2026. To trzy sekundy pracy przy wystawianiu i oszczędza godzinę tłumaczenia podczas kontroli. Dane pobierzesz z publicznego API NBP, endpoint exchangerates/rates/a/{waluta}/{data}/.

Alternatywnie art. 31a ust. 1 pozwala wybrać ostatni kurs wymiany opublikowany przez Europejski Bank Centralny. Waluty inne niż euro przeliczasz wtedy przez kurs każdej z nich względem euro. Osobna opcja to art. 31a ust. 2a-2d: możesz przeliczać VAT według zasad z podatku dochodowego, ale po wyborze musisz stosować to konsekwentnie przez 12 kolejnych miesięcy. Mieszanie metod w ciągu roku jest błędem.

Weekend i święto: cofasz się dalej niż o jeden dzień

Ustawa mówi o ostatnim dniu roboczym, nie o dniu poprzednim. To dwie różne rzeczy i tu powstaje najwięcej cichych pomyłek.

Konkretny przykład ze stycznia 2026 r. Usługa wykonana w środę 7 stycznia 2026 r. Dzień poprzedni to 6 stycznia, czyli Trzech Króli. NBP nie publikuje wtedy tabeli. Cofasz się dalej, do poniedziałku 5 stycznia 2026 r., i stosujesz kurs z tabeli A z tego dnia.

Ta sama logika dotyczy poniedziałków. Dostawa w poniedziałek oznacza kurs z piątku, nie z niedzieli.

Jeżeli Twój system fakturowy odejmuje jeden dzień i skacze tylko przez weekendy, w Nowy Rok, Trzech Króli, Boże Ciało i 15 sierpnia podstawi kurs z niewłaściwej daty albo w ogóle go nie znajdzie. Warto to sprawdzić przed pierwszym długim weekendem.

KSeF zmienia datę wystawienia, ale niekoniecznie kurs

Tu jest sedno. Zgodnie z art. 106na ust. 1 ustawy o VAT fakturę ustrukturyzowaną uznaje się za wystawioną w dniu jej przesłania do KSeF. Reguła działa wtedy, gdy data w polu P_1 jest taka sama jak data wysyłki.

Co jeśli wygenerujesz plik w piątek, a wyślesz w poniedziałek? Ministerstwo Finansów wyjaśniło to w aktualizacji podręcznika KSeF 2.0: gdy data przesłania jest późniejsza niż data z pola P_1, faktura zostaje uznana za wystawioną w trybie offline24 na podstawie art. 106nda ust. 16, a datą wystawienia pozostaje data z P_1.

Dla przeliczenia waluty to dobra wiadomość. Kotwica nie ucieka Ci przez to, że wysyłka poszła następnego dnia. Pamiętaj tylko o art. 106nda ust. 2: fakturę wystawioną z wcześniejszą datą trzeba przesłać do KSeF niezwłocznie, nie później niż w następnym dniu roboczym.

Realne ryzyko jest inne. Ktoś w firmie widzi, że plik leżał trzy dni, ręcznie zmienia P_1 na dzień wysyłki i tym samym przesuwa kotwicę kursową. Jeżeli obowiązek podatkowy powstał wcześniej, kurs i tak liczy się od dostawy, więc taka poprawka nie naprawia niczego, a psuje datę na dokumencie.

Najczęstszy błąd walutowy

Wygląda tak: sprzedaż w piątek 20 lutego 2026 r., faktura wysłana do KSeF we wtorek 3 marca 2026 r., kurs pobrany z 2 marca.

Poprawnie kotwicą jest dostawa, czyli 20 lutego. Kurs bierzesz z ostatniego dnia roboczego przed tą datą, czyli z czwartku 19 lutego 2026 r.

Ile to kosztuje. Faktura na 10 000 EUR netto, VAT 23 proc., czyli 2 300 EUR podatku. Przy kursie 4,2510 (przykładowo, 19 lutego) VAT w złotych wynosi 9 777,30 zł. Przy kursie 4,3120 (przykładowo, 2 marca) wynosi 9 917,60 zł. Różnica to 140,30 zł na jednej fakturze. Przy pięćdziesięciu fakturach walutowych miesięcznie mówimy o kwocie, którą trzeba wyłapać przed JPK_V7, a nie po nim.

Trzy warianty tego samego błędu, które widzę regularnie:

  1. Kurs z dnia wystawienia zamiast z dnia poprzedzającego. Przepis mówi „poprzedzający", a nie „w dniu".

  2. Kurs z dnia wystawienia, gdy dostawa była wcześniej. Art. 31a ust. 2 działa tylko wtedy, gdy faktura wyprzedza obowiązek podatkowy.

  3. Kurs z faktury zagranicznego kontrahenta przy imporcie usług. Data wystawienia dokumentu przez kontrahenta nie ma tu znaczenia, liczy się moment powstania obowiązku podatkowego u Ciebie.

Korekty: art. 31b i zasada powielenia kursu

Do faktur korygujących stosujesz art. 31b ustawy o VAT. Zasada podstawowa z ust. 1 jest prosta: korekta dziedziczy kurs faktury pierwotnej. Nie pobierasz nowego kursu na dzień wystawienia korekty, niezależnie od tego, czy korygujesz in plus, czy in minus.

Wyjątek dotyczy zbiorczej faktury korygującej wystawianej z tytułu opustu lub obniżki ceny (art. 31b ust. 2). Wtedy możesz zastosować jeden wspólny kurs z ostatniego dnia roboczego poprzedzającego dzień wystawienia korekty zbiorczej, zamiast odtwarzać kursy z każdej faktury pierwotnej osobno.

Jeżeli wybrałeś przeliczanie według zasad podatku dochodowego (art. 31a ust. 2a-2d), zasady z art. 31b ust. 1-4 Cię nie dotyczą i korekty przeliczasz tak samo, jak resztę.

Praktyczna konsekwencja dla systemu: korekta musi być wystawiona w tej samej walucie co faktura pierwotna. Korekta w EUR do faktury w USD nie ma sensu, bo kwota różnicy staje się niepoliczalna.

VAT zawsze w złotych

Art. 106e ust. 11 ustawy o VAT wymaga, żeby kwoty podatku były wykazane w złotych, nawet gdy cała reszta faktury jest w walucie obcej. Struktura FA(3) ma na to osobne pola przeliczenia VAT na PLN dla każdej stawki.

Dla nabywcy oznacza to jedno: odliczasz kwotę VAT w złotych podaną przez sprzedawcę, a nie kwotę przeliczoną własnym kursem. Jeżeli przeliczysz sam i wyjdzie inna liczba, w JPK_V7 pojawi się rozbieżność, której nikt nie będzie umiał uzasadnić.

Kurs wpływa też na progi liczone w złotych. Limit 15 000 zł brutto dla obowiązkowego mechanizmu podzielonej płatności (art. 108a ust. 1a) i limit faktury uproszczonej (450 zł brutto albo 100 EUR, art. 106e ust. 5 pkt 3) liczysz po przeliczeniu na PLN. Faktura na 3 400 EUR może przekroczyć próg MPP albo nie, w zależności od kursu.

Checklista przed wysyłką faktury walutowej

  1. Ustal datę powstania obowiązku podatkowego (dostawa, wykonanie usługi, koniec okresu rozliczeniowego albo otrzymanie zaliczki).

  2. Porównaj ją z datą wystawienia i weź wcześniejszą z nich jako kotwicę.

  3. Cofnij się do ostatniego dnia roboczego przed kotwicą, uwzględniając weekendy i święta.

  4. Pobierz kurs średni z tabeli A NBP na ten dzień.

  5. Zapisz na fakturze kurs, datę kursu i numer tabeli.

  6. Sprawdź, czy kwoty VAT są wykazane w złotych dla każdej stawki.

  7. Przy korekcie użyj kursu faktury pierwotnej, chyba że to zbiorcza korekta rabatowa.

Podsumowanie

Kurs waluty na e-fakturze to nie jest kwestia dnia wysyłki do KSeF. To kwestia daty powstania obowiązku podatkowego, cofnięcia się do ostatniego dnia roboczego i sięgnięcia po tabelę A NBP. Trzy kroki, w których łatwo się pomylić ręcznie, i bardzo trudno pomylić się automatycznie.

W Biurko kurs pobiera się sam. System wylicza kotwicę z dat na fakturze, cofa się do właściwego dnia, pobiera kurs średni z tabeli A NBP i zapisuje na dokumencie kurs, datę oraz numer tabeli. Jeżeli masz własne ustalenia, kurs możesz nadpisać ręcznie. Załóż darmowe konto na biurko.io i wystaw pierwszą fakturę walutową bez sprawdzania kalendarza świąt.

FAQ

Z którego dnia brać kurs NBP na fakturze w euro?

Z ostatniego dnia roboczego poprzedzającego dzień powstania obowiązku podatkowego, czyli zwykle dzień przed dostawą lub wykonaniem usługi. Jeżeli fakturę wystawiasz wcześniej niż powstaje obowiązek podatkowy, bierzesz kurs z dnia poprzedzającego wystawienie faktury.

Która tabela NBP jest właściwa do VAT?

Tabela A, czyli kursy średnie walut obcych, publikowana w dni robocze. Tabela B dotyczy walut mniej popularnych i wychodzi raz w tygodniu, tabela C podaje kursy kupna i sprzedaży i nie służy do rozliczeń VAT.

Czy data wysłania faktury do KSeF zmienia kurs waluty?

Nie, jeżeli w polu P_1 wpisałeś wcześniejszą datę. Zgodnie z art. 106nda ust. 16 taka faktura jest traktowana jako wystawiona w trybie offline24, a datą wystawienia pozostaje data z P_1. Kotwica kursowa się nie przesuwa.

Jaki kurs stosuje się do faktury korygującej?

Ten sam, który zastosowałeś na fakturze pierwotnej (art. 31b ust. 1 ustawy o VAT). Wyjątkiem jest zbiorcza korekta z tytułu opustu lub obniżki ceny, gdzie możesz użyć jednego kursu z dnia poprzedzającego wystawienie korekty.

Co zrobić, gdy w dniu poprzedzającym wypadło święto?

Cofasz się do poprzedniego dnia roboczego. Na przykład dla obowiązku podatkowego z 7 stycznia 2026 r. właściwy jest kurs z 5 stycznia, ponieważ 6 stycznia to Trzech Króli i NBP nie publikuje wtedy tabeli.

Tagi

#KSeF
Udostępnij

Poprzedni artykuł

Jak poprawnie powiązać fakturę zaliczkową i końcową w KSeF?

Bądź na bieżąco

Otrzymuj powiadomienia o nowych artykułach — bez newslettera, rezygnacja w każdej chwili.

Szanujemy Twoją prywatność. Możesz zrezygnować w dowolnym momencie.

Pliki cookies

Niezbędne — do działania serwisu. Pozostałe tylko za Twoją zgodą. Polityka cookies