Account
English

CURRENCY_RATE_MISMATCH: KursWaluty does not match the NBP Table A mid-rate for the reference date (Art

KSeF FA(3) rule · Warning · FA(3) XML

StandardKSeF FA(3), Polish national e-invoicing systemSeverityWarning: the invoice is accepted but should be correctedSyntaxFA(3) XMLApplies toStructured invoices (FA(3) schema) submitted to the Polish KSeF. XSD codes come from the schema, semantic codes from the Ministry of Finance information sheet; KSeF rejects invoices that fail an error-level rule.

Official rule text

[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)

Why this error occurs

KSeF checks the FA(3) XML in two stages: XSD schema (structure, element order, data types, patterns such as NIP or dates) and semantic rules from the Ministry of Finance information sheet (consistency of amounts, annotations P_16 to P_23, roles of Podmiot2/Podmiot3, bank account formats, currency rates).

How to fix it

Fix the element named in the message. For XSD errors compare the element order and value pattern with the FA(3) schema; for semantic errors apply the cause and fix hints listed on this page. Re-validate before submitting to KSeF: a rejected invoice has no KSeF number and is not issued.

What the validator checks

Check levelsemantic / business_logic

Typical causes

Check your invoice

Drop your XML or PDF on the validator and every failed rule is linked to its page here. Free, no account, the file is not stored.

Check your invoice →

Same check via API:

curl -F file=@invoice.xml https://einvoicechecker.com/v1/validate

Related rules

Frequently asked questions

What does CURRENCY_RATE_MISMATCH mean?

CURRENCY_RATE_MISMATCH is a ksef fa(3) rule: 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)

Will my invoice be rejected because of CURRENCY_RATE_MISMATCH?

No. CURRENCY_RATE_MISMATCH is a warning: the invoice is accepted but the recipient sees the notice. Fix it anyway, warnings often become errors in later rule versions.

Which formats does CURRENCY_RATE_MISMATCH apply to?

Structured invoices (FA(3) schema) submitted to the Polish KSeF. XSD codes come from the schema, semantic codes from the Ministry of Finance information sheet; KSeF rejects invoices that fail an error-level rule. Syntax: FA3.

Source: KSeF FA(3) schema 1-0E + semantic rules (@ksefuj/validator 0.4). Catalogue generated from the official rule sets on 2026-10-15.