Invoices in euros or dollars in Poland: which exchange rate do you use?

Use the NBP rate from the business day before. How to convert EUR and USD invoices for income tax and VAT, with a worked example of exchange differences.

Updated Facts checked 8 min read

In short

  • For income tax you convert a foreign-currency amount at the NBP average rate (table A) from the last business day before the day the revenue or the cost arises.
  • The same rule covers sales and cost invoices. Only the "day" differs: for a sale it is usually the day the work is done or invoiced; for a cost, usually the date the invoice was issued.
  • VAT uses the same NBP rate, counted back from the tax point. VAT also lets you choose the ECB rate, or the income tax rules (then for at least 12 months).
  • When the client pays at a different rate, the gap is an exchange difference (różnica kursowa): extra revenue if you gained, a cost (or a revenue reduction on ryczałt) if you lost.
  • No law requires a EUR account. It just lets you choose when to convert, instead of taking your bank's rate on the day the money arrives.

Use the average rate of the National Bank of Poland (NBP) from the last business day before the day your revenue or cost arises. In Polish this is the kurs NBP z dnia poprzedzającego. It applies to income tax on both sales and cost invoices, and VAT uses the same NBP rate, counted back from its own date.

If the client then pays at a different rate, the gap is an exchange difference, and that is booked too.

The basic rule: NBP table A, one business day back

Polish income tax is always worked out in złoty. The income tax act (PIT Act, art. 11a) says:

  • revenue in a foreign currency is converted at the NBP average rate from the last business day before the day the revenue arises;
  • costs in a foreign currency are converted at the NBP average rate from the last business day before the day the cost is incurred.

“Average rate” is the kurs średni in NBP’s table A, published on every business day. There is no table on Saturdays, Sundays or Polish public holidays, so “the last business day before” often means going back more than one day.

Day the revenue arises Rate you use EUR (NBP)
Monday 31 August 2026 Friday 28 August 2026 4.3328
Monday 14 September 2026 Friday 11 September 2026 4.3228
Thursday 12 November 2026 Tuesday 10 November 2026 (11 November is a holiday) not yet published

The rate from the day itself is never the right one, even if it is already published when you write the invoice.

For foreigners: in some countries you may be used to the ECB rate or your bank’s rate. For converting Polish income and costs neither counts: it is the NBP rate, every time. Your bank’s rate matters only later, for exchange differences.

Sales invoices: which day counts?

For a sale, the revenue arises on the day you deliver the goods or finish the service, but no later than the day you issue the invoice or the day you are paid, whichever comes first (PIT Act art. 14 ust. 1c). In practice:

  • you finish the work and invoice the same day: use the business day before the invoice date;
  • the client pays an advance for work you will finish in a later month: the advance is not revenue yet (art. 14 ust. 3 pkt 1), so you convert when the work is done or invoiced;
  • you invoice a retainer for an agreed billing period (a month, say): the revenue arises on the last day of that period (art. 14 ust. 1e), so use the business day before it.

If you chose the cash method (metoda kasowa, art. 14c), revenue from invoices to other businesses arises on the day you are paid instead, so you use the business day before the payment.

Example: you finish a project and invoice a German client 4,000 EUR on Monday 31 August 2026. The rate is Friday’s: 4.3328. Your revenue is 4,000 × 4.3328 = 17,331.20 PLN, and that is what goes into your tax book or revenue register.

Cost invoices: the same rule, a different day

A cost in euros or dollars (Adobe, AWS, a flight, a conference ticket) follows the same rule: the NBP rate from the last business day before the day the cost is incurred.

The difficult part is the day. Many sole traders keep a tax book called KPiR (książka przychodów i rozchodów, the revenue and expense book). With the accrual method (metoda memoriałowa), the law makes the day the invoice’s issue date (art. 22 ust. 6b, read with art. 11a ust. 2), so you use the rate from the business day before it. The rule about the day the cost is booked (art. 22 ust. 5d) is for full accounting books, not for KPiR.

With the simpler method (metoda uproszczona), the law is less clear about the day. Ask your accountant, or the tax office’s KIS helpline, which day to use, and keep to it all year.

The KPiR regulation adds one practical duty (§ 6 ust. 4): if a document shows an amount only in a foreign currency, you convert it and write the PLN result on the document or in an attachment. If an accountant or software keeps your books, check that it is done.

On ryczałt (a flat-rate tax on revenue), costs do not reduce your tax. So converting cost invoices matters mostly on the tax scale (skala podatkowa) and the flat tax (podatek liniowy). See choosing your tax form.

Watch out: a foreign service bought for your business is often an import of services, and even a VAT-exempt business then owes Polish VAT on it. See VAT-UE registration for Google, Adobe or AWS.

Is it the same rate for VAT?

Almost. The VAT Act (art. 31a) also uses the NBP average rate from the last business day before, but counted from the tax point (obowiązek podatkowy, the day VAT becomes due), not from the income tax revenue date.

  • For most services the tax point is the day the service is done (art. 19a ust. 1).
  • If you are paid in advance, it is the day the advance arrives (art. 19a ust. 8).
  • If you issue the invoice before the tax point, the rate is the one from the business day before the invoice date (art. 31a ust. 2).

Three extra options exist only for VAT:

  • ECB rate: you may use the European Central Bank rate from the last day before the tax point instead of the NBP rate;
  • income tax rules: you may convert VAT amounts exactly as you do for income tax, so one rate serves both, but you must keep this choice for at least 12 months (art. 31a ust. 2a–2b);
  • KSeF invoices (since 1 February 2026): where VAT follows the invoice date, or the invoice comes before the tax point, you may take the rate from the business day before the issue date written on the invoice. The condition is that you send it to KSeF, the national e-invoicing system, no later than the next day (art. 31a ust. 1a and 2).

If an invoice shows Polish VAT and is in euros, the VAT amount must still be shown in PLN (art. 106e ust. 11). An invoice to a client abroad with no Polish VAT on it can stay entirely in the foreign currency. See invoicing a client abroad.

Income tax VAT
Rate NBP table A NBP table A, or ECB if you choose it
Day counted back from Revenue date or cost date Tax point (or invoice date if the invoice comes first)
Can you align them? – Yes, by choosing the income tax rules for 12 months or more

Exchange differences: when the client pays

You booked the revenue at the NBP rate. The money usually arrives days or weeks later, at a different rate. The difference is an exchange difference (różnica kursowa, PIT Act art. 24c):

  • if the payment is worth more in PLN than you booked, the gain is extra revenue;
  • if it is worth less, the loss is a cost on the tax scale or the flat tax.

On ryczałt the same rules apply (Ryczałt Act art. 6 ust. 1c): a gain adds to revenue, and a loss reduces the revenue of the year in which it arises.

To value the payment:

  • if your bank converts the euros into złoty, you use the rate the bank actually applied, shown on your statement;
  • if the money lands in a EUR account and stays in euros, there is no actual rate, so the law falls back on the NBP rate from the business day before the payment day (art. 24c ust. 4).

Example (continued): the client pays the 4,000 EUR on Monday 14 September 2026 into your EUR account. The NBP rate for Friday 11 September was 4.3228, so the payment is worth 17,291.20 PLN. You booked 17,331.20 PLN, so you have a negative exchange difference of 40.00 PLN.

Step Rate Value
Revenue booked (31 August 2026) 4.3328 17,331.20 PLN
Payment received (14 September 2026) 4.3228 17,291.20 PLN
Exchange difference −40.00 PLN (a loss)

Exchange differences also arise on cost invoices, when you pay a foreign-currency invoice at a different rate from the one you booked, and when you later spend or convert euros you hold. Your accountant normally works these out from your bank statements, so send every statement, including the EUR account.

Do you need a EUR account?

No law requires one. A client can pay euros into your PLN account, and the bank converts them at its own rate on the day they arrive. That rate can differ from NBP’s, and the gap shows up as an exchange difference.

A EUR account lets you receive euros, keep them, pay euro costs from them and convert when you choose. It also adds some bookkeeping: each later conversion or payment from that account can create its own exchange difference. For whether a JDG (a sole trader business) needs a business account at all, and what the VAT white list means, see do you need a business bank account.

Where to look up NBP rates

  • The NBP website publishes table A every business day, with an archive of past tables.
  • The NBP API (api.nbp.pl) returns the rate for any business day since 2 January 2002, free and without registration.
  • Your accounting software usually fills in the rate once you enter the date.

Komplet, our free Mac app, shows an approximate PLN amount (≈ PLN) under foreign-currency documents, using the NBP rate from the last business day before the document date. It is there to help you see where you stand; your accountant or bookkeeping software still does the booking.

What to do next

  1. For each foreign-currency invoice, find the day the revenue or cost arises: for a sale, usually the day the work is done or invoiced, whichever comes first.
  2. Look up the NBP table A rate for the last business day before it and write the PLN amount on the document or in an attachment.
  3. Keep the bank statement that shows the payment and the rate the bank used.
  4. Ask your accountant whether you use the income tax rules for VAT too, so one rate covers both.
  5. Send every statement, PLN and EUR, with your monthly documents so exchange differences can be booked.

Questions people ask

Which rate do I use if the invoice is dated on a Monday?
The Friday before, as long as Friday was a business day. NBP publishes no rates on weekends or Polish public holidays, so you always go back to the last day that has a table.
Can I use the ECB rate like I did at home?
For income tax, no: it is always the NBP rate. For VAT the law lets you choose the ECB rate instead. Ask your accountant before switching, because it adds a second rate to track.
Do I have exchange differences on ryczałt?
Yes. The ryczałt act applies the same rules: a gain adds to your revenue, and a loss reduces the revenue of the year in which it arises.
Must the invoice itself show PLN?
If it shows VAT, the VAT amount must be in PLN even when everything else is in EUR. An invoice with no Polish VAT (reverse charge, or exempt) can be fully in EUR; you note the PLN conversion in your records. See invoicing a client abroad.
Is it the same rule for dollars, pounds or hryvnias?
Yes. NBP table A lists the US dollar, the pound, the Swiss franc, the Ukrainian hryvnia and about thirty other currencies, and you use it the same way: the last business day before.

Official sources

We check every figure and date against these pages. Rules change: when in doubt, the official page wins.

  1. PIT Act, consolidated text Dz.U. 2026 poz. 592: art. 11a, 14 ust. 1c and 1e, 22 ust. 5d, 24c (Sejm)api.sejm.gov.pl
  2. Ryczałt Act, consolidated text Dz.U. 2025 poz. 843: art. 6 ust. 1c (Sejm)api.sejm.gov.pl
  3. VAT Act, consolidated text Dz.U. 2025 poz. 775: art. 19a, 31a, 106e ust. 11 (Sejm)api.sejm.gov.pl
  4. VAT amendment introducing KSeF, Dz.U. 2023 poz. 1598 (in force 1 February 2026) (Sejm)api.sejm.gov.pl
  5. KPiR regulation of 6 September 2025, Dz.U. 2025 poz. 1299: § 6 (Sejm)api.sejm.gov.pl
  6. NBP exchange rate API, EUR table A, 25 August to 24 September 2026 (nbp.pl)api.nbp.pl

This is general information, not tax or legal advice for your situation. Polish rules change often; we last checked the facts on this page on September 24, 2026. For a decision that matters, ask an accountant or your tax office.

Close every month without the hunt.

Drop documents in as they arrive. Komplet files them, checks them against your bank statement and tells you what is still missing. Free, for your Mac.

Mac only