Faktury walutowe i eksportowe w KSeF – jak unikać różnic kursowych?

Faktura walutowa w KSeF to dokument ustrukturyzowany XML, w którym kwota VAT musi być wyrażona w PLN, zgodnie z art. 106e ust. 11 ustawy o VAT, nawet gdy wartość netto i brutto podana jest w EUR, USD lub innej walucie. Krajowy System e-Faktur wymusza precyzyjne przeliczenia według kursów średnich Narodowego Banku Polskiego lub Europejskiego Banku Centralnego, a błędny kurs przeliczeniowy generuje ryzyko powstania dodatnich lub ujemnych różnic kursowych rozliczanych w CIT/PIT. Od 1 lutego 2026 r. obowiązek ten dotyczyć będzie dużych podatników, natomiast od 1 kwietnia 2026 r. obejmie pozostałe podmioty gospodarcze.

Kiedy powstają różnice kursowe przy eksporcie – logika trójki

Mechanizm powstawania różnic kursowych w transakcjach eksportowych wynika bezpośrednio z dynamiki rynków walutowych oraz sztywnych ram czasowych narzuconych przez przepisy podatkowe. Proces ten rozpoczyna się w momencie wystawienia faktury w walucie obcej (np. EUR), co wymaga przeliczenia jej wartości na walutę krajową w celu ujęcia przychodu w księgach handlowych. W związku z tym, jeśli między dniem uzyskania przychodu a dniem faktycznego otrzymania środków finansowych nastąpi zmiana kursu waluty, w ewidencji podatkowej pojawia się różnica, którą należy odpowiednio zakwalifikować jako przychód lub koszt uzyskania przychodu.

Wielu przedsiębiorców błędnie zakłada, że stosowanie stawki 0% VAT przy eksporcie towarów eliminuje problem różnic kursowych. Zgodnie z art. 15a ust. 1 ustawy o CIT, różnice te powstają niezależnie od stawki opodatkowania towaru czy usługi, o ile należność jest wyrażona i faktycznie otrzymana w walucie obcej. Przykładowo, jeśli podatnik wystawi fakturę eksportową na kwotę 10 000 EUR przy kursie 4,30 PLN/EUR, a w dniu zapłaty kurs banku wynosi 4,45 PLN/EUR, powstaje dodatnia różnica kursowa w wysokości 1 500 PLN, która stanowi przychód podlegający opodatkowaniu. Z kolei ujemna różnica kursowa, powstająca przy spadku kursu waluty, powiększa koszty uzyskania przychodów.

Aby poprawnie zewidencjonować transakcję i zminimalizować ekspozycję na wahania kursowe, należy monitorować trzy kluczowe momenty czasowe, które determinują finalne rozliczenie. Zgodnie z przepisami ustawy o podatku dochodowym od osób fizycznych (art. 24c) oraz ustawy o CIT (art. 15a), decydujące są następujące daty:

  1. Dzień powstania obowiązku podatkowego w podatku od towarów i usług, który zazwyczaj pokrywa się z datą dokonania dostawy lub wykonania usługi.
  2. Dzień wystawienia faktury w systemie KSeF, rozumiany jako data przesłania dokumentu do platformy i otrzymania numeru identyfikacyjnego.
  3. Dzień zapłaty, czyli moment wpływu środków na rachunek walutowy podatnika lub ich faktycznego przewalutowania.

Warto zaznaczyć, że dla celów podatku VAT stosuje się kurs średni NBP z ostatniego dnia roboczego poprzedzającego dzień powstania obowiązku podatkowego lub dzień wystawienia faktury, jeżeli została ona wystawiona przed dokonaniem dostawy. Należy wdrożyć procedurę wewnętrzną uwzględniającą, że kurs VAT (NBP) i kurs księgowy (bankowy lub NBP dla CIT/PIT) mogą się od siebie różnić, co wymusza odrębne rozliczanie tych wartości w systemach finansowo-księgowych.

Jak wybrać kurs przeliczeniowy w KSeF – 3 drogi

Wybór właściwego kursu przeliczeniowego w systemie KSeF jest kluczowy dla zachowania spójności danych raportowanych do organów skarbowych. Zgodnie z art. 31a ustawy o VAT, podatnik ma do dyspozycji kilka metod określania kursu waluty, jednak każda z nich wiąże się z określonymi konsekwencjami prawnymi. Kluczową zmianą wprowadzoną przez system ustrukturyzowany jest definicja daty wystawienia faktury – art. 106na ust. 1 ustawy o VAT stanowi, że faktura ustrukturyzowana jest uznawana za wystawioną w dniu jej przesłania do KSeF, a nie w dniu jej wygenerowania w lokalnym systemie ERP.

Poniższa tabela przedstawia zasady doboru kursu w zależności od relacji daty wystawienia dokumentu do momentu powstania obowiązku podatkowego:

Relacja: Data wystawienia vs Obowiązek podatkowy Wymagany kurs źródłowy (NBP/EBC)
Faktura wysłana 11 lipca, usługa wykonana 8 lipca Kurs z dnia 7 lipca (ostatni dzień roboczy przed usługą)
Faktura wysłana 5 lipca, usługa planowana na 15 lipca Kurs z dnia 4 lipca (ostatni dzień roboczy przed wystawieniem)
Dostawa towaru w niedzielę (dzień wolny) Kurs z piątku (ostatni dzień roboczy przed dostawą)

Alternatywną ścieżką jest tzw. kurs dochodowy, wynikający z art. 31a ust. 2a ustawy o VAT. Pozwala on na stosowanie zasad przeliczania kwot wyrażonych w walucie obcej zgodnie z przepisami o podatku dochodowym (CIT/PIT). Wybór tej metody stanowi decyzję wewnętrzną podatnika i nie wymaga formalnego zgłoszenia do Urzędu Skarbowego, jednak narzuca rygor czasowy. Podatnik, który zdecyduje się na tę metodę, musi ją stosować przez co najmniej 12 miesięcy kalendarzowych. Rezygnacja lub zmiana metody przed upływem tego terminu skutkuje koniecznością dokonania korekt wszystkich wystawionych w tym czasie faktur, co w systemie KSeF jest procesem skomplikowanym i generuje ryzyko sankcji.

Podczas wypełniania struktury XML (e-Faktura), pole "KodWaluty" musi zostać uzupełnione zgodnie z normą ISO 4217. Jeśli podatnik wybierze ścieżkę zgodną z ustawą o VAT, system w określonych przypadkach może automatycznie weryfikować poprawność kursu, o ile oprogramowanie finansowe jest zintegrowane z API Narodowego Banku Polskiego. Należy pamiętać, że kursy Europejskiego Banku Centralnego (EBC) są dopuszczalne wyłącznie dla waluty EUR, natomiast dla pozostałych walut (np. USD, GBP, CHF) obligatoryjne jest stosowanie tabel NBP. Rekomenduje się sporządzenie wewnętrznego dokumentu (memo) o nazwie „Metoda przeliczeń VAT-202X”, który zostanie opatrzony datą i podpisem głównej księgowej, stanowiąc dowód przyjętej polityki rachunkowości podczas kontroli celno-skarbowej.

Błędy copy-paste – 4 scenariusze, które generują różnice

Praktyka kontrolna organów skarbowych wskazuje na powtarzalne schematy błędów, które prowadzą do nieprawidłowego rozliczenia różnic kursowych w środowisku KSeF. Jednym z istotnych punktów zapalnych jest scenariusz, w którym faktura zostaje wystawiona w walucie obcej (np. EUR), natomiast kontrahent dokonuje zapłaty w złotówkach (PLN). Zgodnie z interpretacją Izby Skarbowej w Łodzi z dnia 24 sierpnia 2012 r. (IPTPB3/423-173/12-6/IR), w takiej sytuacji nie powstają podatkowe różnice kursowe w rozumieniu art. 15a CIT, ponieważ brak jest elementu „wpływu waluty obcej”. Jednakże różnica księgowa może pojawić się na poziomie rozliczeń bankowych. Aby uniknąć sporów, należy precyzyjnie ustalić kurs wymiany bezpośrednio w umowie z kontrahentem.

Innym wyzwaniem jest proces korygowania dokumentów w KSeF. Zgodnie z § 11 ust. 4 pkt 4 rozporządzenia w sprawie KSeF, w przypadku wystawiania faktury korygującej zmieniającej wartość transakcji, należy zastosować kurs waluty identyczny z tym, który został użyty na fakturze pierwotnej. System ustrukturyzowany posiada wbudowane walidacje, które blokują zmianę pola „KodWaluty” oraz „KursWaluty” w dokumencie korygującym. Jeśli pierwotna faktura zawierała błąd w kursie, konieczne jest wystawienie korekty do zera i wygenerowanie nowego dokumentu, co znacząco wydłuża proces administracyjny.

Kolejne błędy, które pojawiają się w postępowaniach kontrolnych, dotyczą struktury technicznej pliku XML:

  • Brak pola "KursWalutyZ": Jest to błąd struktury XSD, który uniemożliwia poprawne przesłanie dokumentu do KSeF. Pole to jest obligatoryjne przy fakturach walutowych.
  • Niespójność daty wysłania: Faktura wysłana po północy otrzymuje datę wystawienia z dnia kolejnego, co może zmienić wymagany kurs NBP z „dnia poprzedzającego”.
  • Korekta zwiększająca VAT: Wymaga podania nowej pozycji "KursWalutyZ", która musi być zgodna z kursem historycznym dokumentu bazowego.
  • Płatność mieszana: Częściowa zapłata w walucie i częściowa w PLN wymaga rozbicia ewidencji różnic kursowych tylko na część walutową.

W celu wyeliminowania tych ryzyk, w programach księgowych należy aktywować funkcję „blokuj kurs przy korekcie”, co skutecznie uniemożliwi przypadkową zmianę parametrów walutowych przez pracownika działu fakturowania. Pamiętajmy, że zapłata w innej walucie niż ta wskazana na fakturze nie generuje różnicy podatkowej według art. 15a CIT, ale wymusza dodatkową analitykę na kontach rozrachunkowych.

Checklista – 7 kroków, aby zamknąć temat różnic kursowych

Prawidłowe zarządzanie fakturami walutowymi w systemie ustrukturyzowanym wymaga wprowadzenia ścisłych procedur weryfikacyjnych. Poniższa lista kontrolna pozwala na systematyczne sprawdzenie poprawności procesów i minimalizację ryzyka podatkowego związanego z kursem walut.

Ustal datę decyzyjną w 30 sekund

Kluczem do sukcesu jest identyfikacja właściwej daty do pobrania kursu. Należy postępować zgodnie z poniższym schematem:

  • Sprawdź datę powstania obowiązku podatkowego VAT w systemie ERP (zazwyczaj data wydania towaru).
  • Odczytaj planowaną datę wysłania pliku XML (pole P_1 w strukturze KSeF).
  • Porównaj oba terminy i wybierz datę wcześniejszą jako punkt odniesienia do znalezienia kursu NBP.

Zautomatyzuj pobór kursu – ale z audytem

Zaleca się wykorzystanie interfejsów programistycznych (API) dostarczanych przez Narodowy Bank Polski. API NBP pozwala na automatyczne pobieranie kursów historycznych, co redukuje błędy manualne. Ważne jest jednak zachowanie ścieżki audytu: każda odpowiedź z serwera NBP w formacie JSON powinna być automatycznie archiwizowana w dedykowanym folderze systemowym (np. „/kursy_backup/2026-02”). Należy uwzględnić, że EBC nie publikuje tabel kursowych w dni wolne od pracy oraz święta – w takich przypadkach system musi automatycznie powtórzyć ostatni dostępny kurs publikowany przed tymi dniami.

Ostatnim etapem jest archiwizacja dokumentów. Przechowywanie Urzędowego Poświadczenia Odbioru (UPO) w formacie XML przez okres 5 lat jest wystarczające dla celów podatku VAT (zgodnie z art. 106l). Należy pamiętać, że UPO bez nadanego numeru KSeF oznacza, że faktura jest prawnie niewystawiona. Kurs umowny, choć stosowany w relacjach handlowych, nie jest dopuszczalny w polu "KursWaluty" na fakturze ustrukturyzowanej – tam mogą znaleźć się wyłącznie oficjalne przeliczenia NBP lub EBC. Warto utworzyć w kalendarzu przypomnienie na 11 miesięcy po wyborze metody dochodowej, aby podjąć świadomą decyzję o jej kontynuacji lub zmianie na zasady ogólne VAT. Jeśli nie masz zasobów na ręczne monitorowanie tych parametrów, zleć integrację wyspecjalizowanemu podmiotowi, ale wymagaj pełnej dokumentacji każdego kroku; w razie kontroli to ty, a nie integrator, odpowiadasz za powstałe różnice kursowe.

FAQ – Najczęściej zadawane pytania o faktury walutowe w KSeF

Czy faktura dla kontrahenta zagranicznego musi trafić do KSeF?
Tak. Jeśli faktura jest wystawiana przez polskiego podatnika VAT, to zgodnie z przepisami musi zostać przesłana do KSeF, niezależnie od kraju siedziby odbiorcy. Odbiorca zagraniczny nie ma jednak dostępu do systemu, więc dokument należy mu przekazać w uzgodnionej formie (np. PDF z kodem QR) poza systemem.
Czy faktury importowe od zagranicznych dostawców będą w KSeF?
Nie. Faktury wystawiane przez podmioty zagraniczne nieposiadające stałego miejsca prowadzenia działalności w Polsce nie podlegają obowiązkowi przesyłania do KSeF. Polscy podatnicy rozliczają je na dotychczasowych zasadach.
Jak przeliczyć VAT, jeśli faktura jest w USD?
Kwota podatku VAT na fakturze ustrukturyzowanej musi być zawsze wyrażona w PLN. Przeliczenia dokonuje się według średniego kursu NBP z ostatniego dnia roboczego poprzedzającego dzień powstania obowiązku podatkowego lub wystawienia faktury.

Redakcja

Redakcja

Pomagam przedsiębiorcom, którzy prowadzą księgowość samodzielnie. Krok po kroku wyjaśniam obowiązki, terminy i dokumenty, aby rozliczenia były proste, zgodne z przepisami i bez stresu.

Czy ten artykuł był pomocny?