Invoices and documents · 7 min read

Invoicing abroad: an EU business, outside the EU, a consumer

How Taxorio recognises a foreign client and suggests a supply regime — a service or goods to an EU business, an export, a service outside the EU, or a domestic supply — based on your VAT status, what the app prepares for the return, the EC Sales List and watching § 6i, and how to invoice in a foreign currency and in the client's language.

Which regime, when

As soon as the client on an invoice is outside the Czech Republic (a different country, or a foreign VAT ID), Taxorio offers one of five supply regimes instead of the usual VAT toggle. Which one depends on who and what you're supplying:

Who you're invoicingWhat you're supplyingRegime in TaxorioClause on the document
A business with a valid VAT ID in another EU countryA serviceService to an EU business (§ 9 odst. 1 ZDPH)"The customer accounts for VAT"
A business with a valid VAT ID in another EU countryGoodsGoods delivered to an EU business (§ 64 ZDPH)"Exempt from VAT" — delivery to the EU
A customer outside the EUGoodsExport of goods outside the EU (§ 66 ZDPH)"Exempt from VAT" — export
A customer outside the EUA serviceService outside the EU"Place of supply outside Czechia"
Anyone — real estate, an event with in-person attendance, accommodation, passenger transport; a consumer (not a business) in the EUAnything with a place of supply in CzechiaDomestic supplyAn invoice like for a domestic client, with Czech VAT

In all four foreign regimes, invoice items carry no VAT — the rate locks at 0%. For a domestic supply, on the other hand, you calculate VAT as usual even though the client is abroad (typically real estate in Czechia, an event with in-person attendance in Czechia, accommodation, passenger transport, or a sale to an EU consumer — the place of supply for that one follows different rules than for B2B).

Exemption from VAT for goods isn't automatic, though. For goods delivered to an EU business (§ 64), three conditions must all hold at once: the customer gave you their VAT ID for VAT purposes in another member state, the goods were actually dispatched or transported from Czechia to another member state (keep proof of transport — a consignment note, a carrier's confirmation, and the like — for an audit), and you report the delivery in the EC Sales List. An EC Sales List that isn't filed calls the exemption into question. For export of goods outside the EU (§ 66), you document the exemption with the customs decision releasing the goods from the EU from customs proceedings; the date of taxable supply for an export is the day the goods leave EU territory under the customs decision (§ 66 odst. 7 ZDPH), not the dispatch date or the invoice date. State that day on the document as the date of supply — it also governs the exchange rate and the period the export belongs to. Taxorio neither issues nor checks transport or customs documents — you track and archive those yourself, outside the app.

💡 A document with both a service and goods: in that case, Taxorio suggests a regime based on the larger item value. For accurate reporting, consider issuing two separate documents — one for the service, one for the goods.

What happens depending on your VAT status

Which regimes are offered, and their effect, differ depending on whether you're a VAT payer, an identified person, or a non-payer:

RegimeVAT payerIdentified personNon-payer
Service to an EU businessNo VAT — into the return and the EC Sales ListNo VAT — into the EC Sales List onlyNo VAT — this invoice legally makes you an identified person
Goods delivered to an EU businessExempt — into the returnnot offerednot offered
Export of goods outside the EUExempt — into the returnnot offerednot offered
Service outside the EUNo VAT — into the returnNo VAT — no further obligationNo VAT — no further obligation
Domestic supplyCzech VATNo VAT, same as domestically, no EC Sales ListNo VAT, same as domestically
⚠️ A non-payer invoicing a service to an EU business — mind § 6i. If, as a non-payer, you issue an invoice for a service with a place of supply under § 9 odst. 1 ZDPH to a person registered for VAT in another EU country, you legally become an identified person — as of the date of taxable supply, and from 2025 also as of the date the payment is received, whichever comes first. You have 15 days to file a registration application. Taxorio flags this right when you issue the document, and afterward with a banner on the Overview stating the date the obligation arose and the 15-day deadline — but the app doesn't change your tax status itself; you switch it in settings yourself once registered. More detail in the help article on identified-person status.

How to issue an invoice abroad, step by step

  1. On the client's card (Clients → the client), fill in the country and, for an EU business, the VAT ID with the country prefix too. The app checks a foreign VAT ID against VIES in the background and saves the result with the date it was checked.
  2. Create an invoice for this client — the app recognises it as a foreign supply (country ≠ Czechia, or a foreign VAT ID) and shows the Cross-border supply panel instead of the usual VAT toggle.
  3. The panel shows the client's country, VAT ID and VIES verification status, and suggests a regime on its own based on the items and the client. Either confirm the suggested regime, or pick a different one of the five above with the Change button.
  4. Under a foreign regime, item rates lock at 0%. For a domestic supply, the usual VAT rates stay in place.
  5. Save and send the invoice — Taxorio prints the relevant clause next to the amount due, always in the document's language. The public web invoice and the PDF print it the same way: for a service to an EU business, for example, a German document carries the heading "Steuerschuldnerschaft des Leistungsempfängers" where the Czech one says "the customer accounts for VAT." Every clause cites both Council Directive 2006/112/EC and the Czech VAT Act, in the document's language.

What Taxorio prepares for you

  • The clause on the document — depending on the regime, "the customer accounts for VAT…," "Exempt from VAT — § 64/§ 66," or "Place of supply outside Czechia," always in the language the document is shown in.
  • VAT return (DP3) lines — the app pre-fills lines 20 (goods to the EU), 21 (services to the EU), 22 (export) and 26 (services outside the EU) from the supply regime on its own. For goods delivered to an EU business, the period isn't decided by the date of taxable supply, but by the decisive day under § 22 odst. 1 ZDPH — the earlier of the invoice's issue date and the fifteenth day of the month after the delivery; the app sorts the document by that day into the EC Sales List month, the return's tax period, and the exchange rate used for the CZK conversion. Services (§ 9 odst. 1) still follow the date of taxable supply.
  • Findings under Taxes & insurance → VAT"Choose the supply regime" (as long as a foreign client's document has no VAT-free regime set, the app blocks downloading the return; you fill the regime in with one click from the finding or from the invoice detail), "EC Sales List for the month: N documents — ready to download" with the filing deadline and a link to the card, "The client's VAT ID wasn't valid on the issue date," and "Supply outside Czechia reported" as a confirming (resolved) finding.
  • Leaving it out of the VAT control statement — the app never includes documents with a foreign supply regime in the VAT control statement; only supplies with a place of supply in Czechia belong there.
  • Turnover for VAT registration (§ 4a) — the app only counts supplies with a place of supply in Czechia toward turnover: services to businesses in the EU or outside it don't count toward turnover, while goods to the EU and exports do. Documents to foreign clients with no regime set yet are shown separately by the app until resolved.
  • Watching § 6i for non-payers — see the warning above.
  • Records on the client — the VIES verification result with a date, a "Verify again" button, a check that the country matches the VAT ID prefix, and a Foreign filter in the client list.

Selling to EU consumers and the EUR 10,000 limit

If you sell goods at a distance (an online shop, parcel deliveries) or digital services (electronically supplied, telecommunications and broadcasting services) to consumers — i.e. non-businesses — in other EU member states, that supply has its place of supply in Czechia only up to EUR 10,000 net per calendar year (§ 8 odst. 2 and § 10i ZDPH). Up to that point you invoice as if to a domestic client, with Czech VAT, and in Taxorio you use the Domestic supply regime for it.

The limit has four properties that are easy to overlook:

  • It's shared across distance sales of goods and digital services together, and across the whole EU, not per country.
  • It's watched over two periods at once — the relevant calendar year and the immediately preceding one. Whoever exceeded it last year follows the new regime this year too, even if they sold nothing this year at all.
  • What matters is exceeding it, not reaching it. At exactly EUR 10,000 the place of supply is still domestic; it only changes from the supply that pushes you over the limit.
  • In CZK, it's fixed. The law itself sets the rate for converting euros: the ECB reference rate as of 5 December 2017, i.e. CZK 25.653 to the euro (§ 8 odst. 2 písm. c) ZDPH). The limit therefore comes to CZK 256,530 and doesn't move with today's rate — don't track it against the current rate, you'd get a figure off by thousands of crowns.

Above the limit, VAT is remitted at the rate of the customer's country — either through a tax registration in each such country, or through the One Stop Shop (OSS), filed in Czechia for every country at once.

⚠️ Taxorio doesn't file OSS. The app can't handle either a One Stop Shop return or foreign VAT rates on a document. If you're approaching the limit or have already exceeded it, work it out with a tax advisor — the app will flag it, but won't file anything for you.

What the app tracks. Taxorio continuously adds up goods on issued documents under the Domestic supply regime, issued to clients with a country in the EU other than Czechia who aren't acting as businesses (no VAT ID for VAT purposes in another member state). It adds up net tax bases in CZK — even for a document in euros or dollars, where the CZK value came from converting it as of the date of supply (§ 4 odst. 8 ZDPH) — and compares the total against the fixed CZK 256,530. You'll find the total for this year and last year on the Overview in the VAT turnover card; from CZK 205,224 (80% of the limit) onward, and after exceeding it, a finding also appears under Taxes & insurance → VAT.

What you have to add up yourself. An item on a Taxorio document only carries a "goods / service" flag, so the app can't tell a digital service apart from other services — it doesn't count them into its own total. If you sell EU consumers digital services too (templates, courses, software, subscriptions), add them to the card's figure yourself. Other services to EU consumers (§ 9 odst. 2 ZDPH), on the other hand, don't belong in the limit at all — their place of supply is domestic regardless of the amount.

Invoicing in a foreign currency

You can issue an invoice abroad (or a domestic one) in EUR, USD, GBP, CHF or PLN — you choose the currency in the Payment and VAT step. You enter items in the document's currency, and the app converts to CZK using the CNB rate valid as of the day the duty to declare the tax, or to report the supply, arises, stating the VAT on the document in CZK too, because the return is filed in CZK. For a standard document that day is the DUZP; for goods delivered to an EU business, the governing day is the invoice's issue date, or, if it isn't issued by the fifteenth day of the month after delivery, that fifteenth day. CZK remains the app's internal currency throughout: the return, the control statement, the EC Sales List, turnover and income tax are all calculated in CZK. The app converts a payment received in foreign currency using the rate as of the payment date (that's your income for income tax purposes), and a tax document for a received advance uses its own rate valid as of the day the payment was received. Your income is whatever actually landed on the account: if less arrives because of a correspondent bank's fee, or the client sends CZK directly, you can enter the amount received (and its currency) straight into the Mark as paid panel on the document's detail, and the app works out the income from it. The app picks the bank account by the document's currency — without an account in the same currency it prints a CZK account on the invoice and warns that the QR payment won't print without matching currencies. The ISDOC export carries the document's currency and the rate used. In the income ledger, a document like that has a Foreign amount column (what arrived in that currency) and a CNB rate column (the rate as of the payment date) next to the Currency column, plus a VAT regime column carrying the supply regime, so your accountant can check the CZK base against the bank statement; the income tax return (DPFDP7) and the income relevant to flat-rate tax both use that same CZK amount.

When the invoice gets paid. For a document in foreign currency, the Mark as paid panel has, besides the date, an Amount received field with a currency toggle — the document's currency, or CZK. Fill in what actually arrived on the account: the app reports a correspondent bank's fee withheld along the way separately, up to 2% of the document's amount, and treats the invoice as paid in full; CZK received against a foreign-currency document is recorded exactly as it arrived. More detail — including the limits, the exchange-rate difference, and confirming payments in the Bank section — in the article Paying an invoice in foreign currency.

A document in euros with a euro account also carries a SEPA QR payment (EPC/GiroCode) instead of the Czech QR code — a client abroad scans it in their usual banking app.

Manual rate. If the CNB rate fails to load, you can enter it by hand. For VAT, though, the law only allows the foreign-exchange market rate published by the CNB, or the ECB reference exchange rate, as of the day the duty to declare the tax, or to report the supply, arose (§ 4 odst. 8 ZDPH). The manual field is there to fill in or fix a missing rate, not to enter an arbitrary one — your bank's rate doesn't belong here.

For income tax, a self-employed person who doesn't keep statutory accounting has one more option — using a single annual rate instead of daily rates for the whole year (§ 38 odst. 1 písm. b) bod 2 of the Income Tax Act). Taxorio doesn't offer this — the app always calculates with the CNB's daily rate. Anyone who wants to use a single rate on their return converts their foreign-currency income themselves.

Document language

In the same step you also choose the document's languageCzech, Slovak, English, German or Russian. The toggle only changes the labels the app itself prints (the document heading, Supplier/Client, column headers, the payment block, the clauses), not the text you write into the invoice yourself — your own item name or note isn't translated. The app suggests a default language based on the client: if their card has a language set, it uses that; otherwise it goes by country (Czechia → Czech, Slovakia → Slovak, Germany, Austria, Switzerland and Liechtenstein → German, Russia, Belarus and Kazakhstan → Russian, other countries → English, a client with no country → Czech). You can switch the language on any invoice.

The document's language carries beyond the PDF too: the public web invoice is in the same language, and emails to the client (sending the document, reminders, recurring invoices) default to a subject and text in that language — you can still edit the email before sending. Amount and date formatting follows the language too: a German document prints "1.234,50 €" and "05.09.2026," a Slovak one "1 234,50 €" and "5. 9. 2026," an English one "€1,234.50" and "5 Sep 2026." On German and Russian documents, the app states CZK using the international code "CZK," so it isn't confused with another currency.

You're free to issue a document in any of the languages on offer. But if the tax office asks for it, you must supply a Czech translation on request — keep that in mind for documents you archive. You always have the Czech wording at hand, though: just switch the invoice's language back to Czech and download the PDF again — neither the amounts nor the item text change.

What Taxorio doesn't do yet

This part of invoicing has deliberate boundaries — it isn't a missing button that's still being waited on:

  • OSS for EU consumers — the app doesn't yet support the One Stop Shop regime.
  • Special handling of advances in foreign regimes — proforma invoices under these regimes don't yet have any special logic under § 24a.