Skip to content
KSeF Kit

NBP Exchange Rates on Invoices: Converting Foreign Currency in KSeF

You always report the VAT amount in złoty at the average NBP rate from the last business day before the tax obligation arises (art. 31a(1)). If the invoice is issued earlier, use the rate from the day before it was issued (art. 31a(2)). Net and gross amounts can stay in the foreign currency.

Selling in EUR or USD? You always report the VAT amount in złoty — net and gross amounts can stay in the foreign currency. You convert VAT at the average NBP rate, and the wrong rate is one of the most common causes of discrepancies, so it pays to know the exact rule.

Which NBP rate goes on a foreign-currency invoice?

You use the average NBP rate from the last business day before the day the tax obligation arises (art. 31a(1) of the VAT Act). What matters is the tax obligation, not the date on the document. You convert the VAT amount into złoty at that rate.

Convert the VAT amount into złoty at the average NBP rate from the last business day before the day the tax obligation arises.

Exception: an invoice issued before the tax obligation

If you issue the invoice before the tax obligation arises, you read the rate differently. In that case you take the average NBP rate from the last business day before the invoice date (art. 31a(2)). The two cases in brief:

Instead of the NBP rate, you may also use the average European Central Bank (ECB) rate from the last day before — that's a permitted alternative.

Example

The tax obligation arises on 10 June (Wednesday). You convert the VAT amount at the average NBP rate from 9 June (Tuesday) — the last business day before. If 9 June fell on a Sunday, you go back to the last business day, for example Friday.

What exactly you convert

Most common mistakes

An EU counterparty

For B2B sales to a counterparty in the European Union, you give their VAT number with the country prefix (e.g. DE, FR), never a Polish NIP. You'll find the details in the guide on the export invoice.

Automatic NBP rates

Checking NBP tables by hand for every invoice is tedious and error-prone. KSeF Kit pulls the correct average NBP rate automatically for each invoice's date and shows it clearly — so you have full transparency into the rate at which the invoice was filed. See the export invoice and how to issue an invoice.

Frequently asked questions

Which NBP rate do I use on a foreign-currency invoice?

The average NBP rate from the last business day before the tax obligation arises (art. 31a(1)). If you issue the invoice before the tax obligation arises, you use the rate from the last business day before the invoice date (art. 31a(2)). You convert the VAT amount into złoty at that rate.

Do I convert the whole invoice into złoty?

No. You always report the VAT amount in złoty, but the net and gross amounts can stay in the foreign currency. The złoty figure at the correct rate applies to the VAT alone.

What if the preceding day is a weekend or public holiday?

You take the rate from the last business day before — skipping weekends and holidays. That's why pulling the correct NBP table automatically removes the guesswork.