Taxes · · 11 min read

Invoicing in foreign currency: rates and FX differences

Which ČNB exchange rate to use on a euro or dollar invoice, how VAT is converted into CZK, and how exchange rate differences work for Czech sole traders.

More and more Czech sole traders work with clients abroad — developers writing code for German agencies, translators with clients across Europe, designers working for American startups. Sooner or later you have to issue an invoice in a currency other than the koruna, and the questions start. Which exchange rate applies? How is VAT calculated? What happens to the difference when the rate moves between invoicing and payment?

This article goes through foreign currency invoicing from the point of view of a Czech sole trader: the rules for VAT payers and non-payers, worked examples, and the mistakes worth avoiding.

What the law requires

Invoicing in a foreign currency is entirely legal and completely ordinary in Czechia. Nothing obliges you to invoice in korunas — euros, dollars, pounds or anything else are fine. What matters is converting correctly into korunas for tax purposes.

Accounting and tax records

Under § 4(12) of Act No. 563/1991 Coll., on accounting, accounting entities must keep their books in Czech currency. So even when you invoice in euros, the amount in your tax records or accounts has to be in CZK. The same principle applies to a sole trader keeping simple tax records (daňová evidence): income and expenses are recorded in korunas.

Which exchange rate?

Picking the rate is the single most common source of doubt. The answer depends on whether you are registered for VAT and on the type of transaction.

If you are a VAT payer, § 4(8) of Act No. 235/2004 Coll., on VAT, applies. Foreign currency is converted at the foreign exchange market rate announced by the Czech National Bank (ČNB) and valid for the person making the conversion on the day the obligation to declare the tax arises — in the ordinary case, the date of the taxable supply (DUZP). Alternatively, if you keep double-entry accounts, you may use a fixed rate: the ČNB rate valid on the first working day of the calendar month or quarter (an instrument of the accounting rules); a sole trader with simple tax records uses the daily ČNB rate at the DUZP.

If you are not registered for VAT, it is simpler. In your tax records, income is converted at the ČNB rate valid on the day the money actually reached your account.

Practical suggestion: if you are a VAT payer who keeps accounts and invoices abroad regularly, consider the fixed rate. Note the ČNB rate for the first working day of the month and use it for every invoice that month. It removes a lot of small decisions.

Issuing the invoice

A foreign currency invoice must carry the same particulars as one in korunas. A few extra details are worth adding for clarity.

Mandatory particulars

Whatever the currency, the invoice must show:

  • Identification of supplier and customer — name, address, IČO (business ID), DIČ (tax ID)
  • The invoice number, from a unique sequence
  • The date of issue and the DUZP, the date of the taxable supply
  • A description of the goods or services supplied
  • The taxable amount and the VAT rate, if you are a VAT payer
  • The total in the agreed currency

Worth adding

  • The currency, stated unambiguously — EUR, USD, GBP and so on
  • Bank details in that currency — if you hold a euro or dollar account, give the IBAN and the SWIFT/BIC code
  • The conversion into CZK — the rate you used and the koruna amount, for your own records and for anyone reviewing them later
  • Payment terms — the due date, and the variable symbol where relevant

Taxorio issues invoices in CZK, EUR, USD, GBP, CHF and PLN. Invoicing abroad, you write the document directly in the client's currency; the koruna equivalent is calculated at the ČNB rate for the day the obligation to declare the tax arises — for an ordinary document, the date of the taxable supply — and VAT is shown on the document in CZK as well, because the return is filed in korunas. Expenses work the same way: on a document received in EUR or USD you enter the foreign amount and Taxorio converts it at the ČNB rate. Invoice numbers stay in the fixed YYYYXXXX format, so the sequence remains unambiguous.

VAT on foreign currency invoices

VAT is the hardest part, because the treatment depends on where the customer is and whether they are in business.

Services to the EU (B2B)

If, as a Czech VAT payer, you supply a service to a taxable person in another member state, the reverse charge under § 9(1) of the VAT Act applies:

  • You invoice without VAT
  • The invoice carries the statement "Daň odvede zákazník" or, in English, "Reverse charge — VAT to be accounted for by the recipient"
  • You state the customer's DIČ, and they must be registered for VAT in their member state
  • The supply is reported on line 21 of the VAT return and in the EC Sales List

Services to the EU (B2C)

Supplying a final consumer in the EU, the place of supply is generally governed by § 9(2) of the VAT Act and lies in Czechia, so you invoice with Czech VAT and convert the VAT into CZK at the rate applicable to the DUZP. Note that this is ordinary Czech VAT, not the OSS one-stop-shop special scheme — if you sell goods or digital services to consumers in other member states at any scale, OSS is a separate registration and is outside what Taxorio records.

Services outside the EU

For services supplied to third countries — the USA, post-Brexit UK, Switzerland — the place of supply follows § 9 of the VAT Act. For business customers the place of supply is the customer's country: you invoice without VAT and report the supply on line 26 of the VAT return.

Converting VAT into CZK

The essential rule: VAT in the VAT return is always stated in korunas. Even when the invoice is in euros, both the taxable amount and the tax have to be converted, using the ČNB rate under whichever method you have chosen — the daily rate at the DUZP or the fixed rate.

A worked example:

You invoice a Czech VAT payer for IT services: EUR 2,000 plus 21 % VAT. The DUZP is 15 March 2026 and the ČNB rate that day is 25.10 CZK/EUR.

  • Taxable amount: 2,000 × 25.10 = CZK 50,200
  • VAT at 21 %: 50,200 × 0.21 = CZK 10,542
  • The client pays EUR 2,000 + EUR 420, i.e. EUR 2,420; the return shows a base of CZK 50,200 and tax of CZK 10,542

Exchange rate differences

An exchange rate difference arises when the rate on the day you invoice differs from the rate on the day the client pays. How you deal with it depends on whether you keep simple tax records or full double-entry accounts.

Simple tax records

The rule is straightforward: income is converted at the rate on the day the payment actually arrives. The invoice itself has no direct effect on your tax records — what counts is the moment the money lands. Exchange rate differences in the accounting sense therefore do not arise, because you only ever use the rate on the payment date.

Double-entry accounts

Keeping full accounts makes it more involved. The receivable is recorded at the rate on the date of issue (or the DUZP) and the payment at the rate on the date received. The difference is a gain or a loss:

  • Exchange rate gain — the koruna weakened after you invoiced, so more korunas arrived than you booked. This is taxable income.
  • Exchange rate loss — the koruna strengthened and fewer korunas arrived. This is a tax-deductible expense.

A worked example:

On 1 February you invoice EUR 5,000 at 25.20 CZK/EUR and book a receivable of CZK 126,000. The client pays on 28 February, when the rate is 25.05 CZK/EUR, so the equivalent of CZK 125,250 arrives. That is an exchange rate loss of CZK 750, booked to account 563 — exchange rate losses.

Revaluation at the balance sheet date

If you keep accounts and still have unpaid foreign currency receivables on 31 December, you must revalue them at the ČNB rate for that day. Gains or losses arising there affect your result for the year.

Tip: if you hold a foreign currency account, watch the differences on the account itself too. The balance in foreign currency is revalued at the current ČNB rate on the balance sheet date as well.

Three situations from practice

1. A developer invoicing a German agency

A self-employed web developer registered for VAT invoices a German agency EUR 4,000 a month for development work. The agency is registered for VAT in Germany.

  1. The invoice is for EUR 4,000 without VAT — reverse charge under § 9(1)
  2. It carries the statement "Daň odvede zákazník / Reverse charge" and the agency's German VAT number
  3. The supply goes on line 21 of the VAT return, converted at the ČNB rate for the DUZP
  4. It is also reported in the EC Sales List
  5. The income is recorded in the tax records at the rate on the day the payment arrives

2. A translator invoicing an American client

A self-employed translator who is not registered for VAT invoices an American company USD 1,500 for a translation.

  1. The invoice is for USD 1,500 without VAT, because she is not a VAT payer
  2. The client pays 14 days later, when the ČNB rate is 23.45 CZK/USD
  3. She records income of 1,500 × 23.45 = CZK 35,175
  4. Claiming 60 % flat-rate expenses, her deductible expenses are CZK 21,105

3. A designer invoicing in both currencies

A self-employed graphic designer registered for VAT has both Czech and foreign clients. In March he issued:

  • Invoice 20260015 to a Czech client: CZK 25,000 + 21 % VAT = CZK 30,250
  • Invoice 20260016 to an Austrian client who is a VAT payer: EUR 2,000 without VAT, reverse charge
  • Invoice 20260017 to a Slovak consumer: EUR 800 + 21 % VAT

He keeps accounts and uses the fixed rate, which for 1 March 2026 was 25.15 CZK/EUR. In the VAT return:

  • Invoice 20260015: base CZK 25,000, VAT CZK 5,250 (line 1)
  • Invoice 20260016: base CZK 50,300, VAT nil (line 21, plus the EC Sales List)
  • Invoice 20260017: base CZK 20,120, VAT CZK 4,225 (line 1)

Is a foreign currency bank account worth it?

If you invoice regularly in euros or dollars, an account in that currency usually pays for itself:

  • Lower conversion costs — you are not paying a spread on every incoming payment
  • Easier matching — the client pays straight into the euro account, with no conversion in between
  • Flexibility — you convert when the rate suits you, not when the payment happens to land
  • A professional impression — foreign clients appreciate not paying international transfer fees

Most Czech banks offer foreign currency accounts. Wise (formerly TransferWise) and Revolut Business are the usual alternatives, generally with better rates and lower fees on international transfers.

Careful: a foreign currency account does not change your tax obligations. All income still has to be converted into CZK for tax purposes. It simplifies receiving money, nothing more.

The most common mistakes

  1. Using the wrong rate. VAT payers use the rate for the DUZP, or — if they keep accounts — a fixed rate; non-payers use the rate on the day the payment arrives. Never use your bank's rate or a rate from a website — what counts is the foreign exchange market rate announced by the ČNB.
  2. Not stating VAT in CZK. The invoice may be in euros, but the VAT in the return is in korunas.
  3. Omitting the reverse charge statement. If you invoice an EU VAT payer without VAT, the invoice has to say that the customer accounts for the tax.
  4. Forgetting the EC Sales List. Supplying services to VAT payers in the EU means filing it alongside the VAT return.
  5. Not revaluing receivables at 31 December. If you keep accounts, unpaid foreign currency invoices have to be revalued at the balance sheet date rate.

What Taxorio does here

Foreign invoicing means keeping track of rates and conversions. Taxorio handles the mechanical part:

  • Invoices in foreign currency — issue in EUR, USD, GBP, CHF or PLN, enter the lines in the document's currency, and the koruna figures are calculated at the ČNB rate for the date of supply
  • Expenses in foreign currency — enter the foreign amount on a document you received and Taxorio converts it at the ČNB rate
  • Payment recorded as what actually arrived — on a foreign currency invoice you enter the amount received, and a small shortfall within tolerance is treated as a correspondent bank fee rather than a part payment; income is calculated at the rate on the payment date
  • QR payment — QR payments are on by default, so invoices with a positive amount carry a QR code; a euro document paid to a euro account gets the European SEPA QR (EPC/GiroCode), everything else the Czech SPD format
  • Numbering — the fixed YYYYXXXX format keeps the sequence consistent
  • VAT return export — the PRO plan generates DPHDP3 XML
  • Control statement — DPHKH1 XML, also on the PRO plan
  • Dashboard — income and expenses shown in korunas, so the overall picture is in one currency

If you invoice foreign clients regularly, keeping the rates and conversions documented is what makes a later tax inspection uneventful. The time goes into setting the process up once.

⚠️ Current Taxorio scope: Taxorio supports invoices in CZK, EUR, USD, GBP, CHF and PLN. Tax reporting uses amounts in CZK.

Taxorio scope: Taxorio provides invoicing and income/expense records for Czech sole traders. It is not full accounting or personalised tax advice. For an unsupported or unusual case, verify the treatment with a Czech accountant or tax adviser before filing.