Oficjalna treść reguły
[CURRENCY_RATE_MISMATCH] KursWaluty does not match the NBP Table A mid-rate for the reference date (Art. 31a ustawy o VAT — the business day before the tax obligation arises, or before the issue date when the invoice precedes it)
Dlaczego pojawia się ten błąd
KSeF sprawdza XML FA(3) w dwóch etapach: schemat XSD (struktura, kolejność elementów, typy danych, wzorce jak NIP czy daty) oraz reguły semantyczne z broszury informacyjnej Ministerstwa Finansów (spójność kwot, adnotacje P_16 do P_23, role Podmiot2/Podmiot3, format rachunku bankowego, kursy walut).
Jak to naprawić
Popraw element wskazany w komunikacie. Przy błędach XSD porównaj kolejność elementów i wzorzec wartości ze schematem FA(3); przy błędach semantycznych zastosuj przyczyny i wskazówki z tej strony. Zwaliduj ponownie przed wysyłką: odrzucona faktura nie otrzymuje numeru KSeF i nie jest wystawiona.
Co sprawdza walidator
Typowe przyczyny
- Manually entered exchange rate differs from the official NBP rate
- Rounding error in exchange rate
- Wrong date used for the exchange rate lookup — the issue date rather than the delivery or settlement-period date
- Taxpayer lawfully elected a different basis that FA(3) does not record: ECB rates (Art. 31a ust. 1) or income-tax conversion rules (Art. 31a ust. 2a)
Sprawdź swoją fakturę
Upuść plik XML lub PDF w walidatorze; każda naruszona reguła ma link do swojej strony tutaj. Bezpłatnie, bez konta, plik nie jest zapisywany.
To samo sprawdzenie przez API:
curl -F file=@invoice.xml https://einvoicechecker.com/v1/validatePowiązane reguły
CURRENCY_RATE_UNVERIFIABLENie można zweryfikować KursWaluty — kurs NBP niedostępny lub poza okresem ważności (art.FOREIGN_CURRENCY_TAX_PLNFaktura w walucie obcej z kwotami podatku powinna mieć przeliczenia na PLN w P_14_*W…KURS_WALUTY_Z_PLACEMENTKursWalutyZ na poziomie Fa TYLKO dla faktur zaliczkowych (RodzajFaktury = ZAL lub…NEGATIVE_QUANTITY_NOT_ALLOWEDUjemne ilości (P_8B) są dozwolone tylko w fakturach korygujących (RodzajFaktury =…NIP_IN_WRONG_FIELDPolski NIP w polu NrVatUE - musi być w polu NIP, by nabywca miał dostęp w KSeF…OO_RATE_FOREIGN_BUYERP_12 = 'oo' dotyczy wyłącznie krajowego odwrotnego obciążeniaP12_ENUMERATIONP_12 musi mieć jedną z wartościSELF_BILLING_PODMIOT3_CONFLICTSamofakturowanie (P_17 = '1')
Najczęstsze pytania
Co oznacza CURRENCY_RATE_MISMATCH?
CURRENCY_RATE_MISMATCH to reguła ksef fa(3): KursWaluty does not match the NBP Table A mid-rate for the reference date (Art. 31a ustawy o VAT — the business day before the tax obligation arises, or before the issue date when the invoice precedes it)
Czy moja faktura zostanie odrzucona z powodu CURRENCY_RATE_MISMATCH?
Nie. CURRENCY_RATE_MISMATCH to ostrzeżenie: faktura jest przyjmowana, ale odbiorca widzi uwagę. Mimo to popraw ją, ostrzeżenia często stają się błędami w kolejnych wersjach reguł.
Jakich formatów dotyczy CURRENCY_RATE_MISMATCH?
Faktury ustrukturyzowane (schemat FA(3)) przesyłane do KSeF. Kody XSD pochodzą ze schematu, kody semantyczne z broszury informacyjnej Ministerstwa Finansów; KSeF odrzuca fakturę przy błędzie. Składnia: FA3.
Źródło: KSeF FA(3) schema 1-0E + semantic rules (@ksefuj/validator 0.4). Katalog wygenerowany z oficjalnych zestawów reguł dnia 2026-10-15.