Nordlet

← Základy / Sady SDK

EU VAT engine

Určování místa plnění, přiznání OSS/IOSS, osvobození pro malé pod-nikatele a limity pro prodej na dálku.

Přeshraniční DPH režim pro prodeje v EU/EHP: určení místa plnění, přenesení daňové povinnosti (reverse charge), posouzení zprostředkovatele jako plátce (marketplace deemed-supplier), číselník sazeb pro jednotlivé země a přiznání OSS/IOSS. Následující funkce jsou koncipovány primárně pro API, přičemž oprávnění (scopes) jsou uvedena u každého koncového bodu (endpoint).

Číselník sazeb

POST /v1/reference/eu-vat-rates/list (reference:read) - zákonné sazby DPH pro všech 27 členských států EU, s možností filtrování podle countryCode a date. Období platnosti sazeb jsou sledována od 1. ledna 2024 (EE 24 % od července 2025, RO 21 % / 11 % od srpna 2025, SK 23 % / 19 % od ledna 2025, FI 13,5 % a LT 12 % od ledna 2026, CZ 12 % od ledna 2024).

Zdroj: databáze Evropské komise „Taxes in Europe“ (TEDB, https://ec.europa.eu/taxation_customs/tedb/), staženo 16. července 2026; litevské změny pro rok 2026 potvrzeny dle VMI (https://www.vmi.lt/evmi/pvm-tarifai), finská změna pro rok 2026 dle vero.fi. Rozsah: pouze sazby pro pevninu / standardní území - regionální odchylky (rakouský Jungholz, řecké ostrovy, Azorské ostrovy a Madeira, francouzská zámořská území a Korsika) nejsou modelovány.

POST /v1/reference/vat-classifiers/list nyní vrací countryCode pro každý klasifikátor (stávající kódy i.SAF PVM* mají hodnotu LT); POST /v1/reference/vat-classifiers/upsert (reference:write) načítá sady klasifikátorů pro další země, což představuje cestu k datům pro budoucí balíčky pro jednotlivé země.

Určení daňového režimu

POST /v1/reference/vat/resolve (reference:read) zodpovídá otázku „jakou DPH mám uplatnit?“ pro dané plnění. Vstup: partnerId nebo customerCountryCode (+ volitelné přepsání customerIsBusiness - jinak se odvodí z DIČ partnera), supplyType (goods | services | digital), date a příznaky situace: belowDistanceSalesThreshold, facilitatedByMarketplace (prodáváte prostřednictvím platformy, která se považuje za dodavatele), actingAsMarketplace (jste touto platformou vy), sellerEstablishedInEu, importedConsignmentValueEur.

Vstupy pro pravidla, která přidává směrnice Rady (EU) 2025/516 (DPH v digitálním věku):

  • serviceKind (short_term_accommodation | passenger_road_transport) s hodnotou serviceCountryCode, což je země, kde se nachází nemovitost nebo kde dochází k přepravě. Obě vyžadují supplyType: "services".
  • underlyingSupplierGaveVatNumber a underlyingSupplierChargesVat: zda ubytovatel nebo řidič poskytl platformě DIČ platné v zemi plnění a deklaroval, že sám odvádí DPH. Pouze splnění obou podmínek současně zabrání tomu, aby se platforma považovala za dodavatele (čl. 28a odst. 1).
  • goodsKind (installed | energy_network) pro zboží instalované nebo smontované u zákazníka (čl. 36) a pro plyn, elektřinu, teplo nebo chlad dodávané soustavou (čl. 38 a 39).
  • goodsLocationCountryCode, což je země, kde se zboží nachází v okamžiku prodeje nebo kde začíná jeho přeprava, pokud se nejedná o zemi sídla společnosti.

Výstup: scheme, vatCountryCode, reverseCharge, deemedSupplier, zeroRated, nabídka sazeb cílové země, právní základ (článek směrnice 2006/112/ES) a informativní poznámky (např. připomínka, že osvobození podle čl. 138 vyžaduje DIČ zákazníka platné v systému VIES).

Implementovaná pravidla:

Situace Výsledek
Plnění v rámci téže země domestic, domácí sazby
B2B zboží uvnitř EU intra_eu_b2b - plnění osvobozené s nárokem na odpočet podle čl. 138, přiznává zákazník
B2B služby uvnitř EU reverse_charge - čl. 44/196
B2C zboží / digitální služby uvnitř EU nad 10 000 EUR oss_union - sazby cílové země, čl. 33 písm. a) / čl. 58
B2C zboží / služby uvnitř EU do 10 000 EUR (belowDistanceSalesThreshold) domestic v zemi původu, čl. 59c
B2C obecné služby uvnitř EU domestic, čl. 45
Zboží do třetích zemí (mimo EU) export - osvobozeno s nárokem na odpočet podle čl. 146 odst. 1
Služby / digitální služby do třetích zemí out_of_scope (mimo předmět DPH, čl. 44/59)
Prodej přes platformu, která se považuje za dodavatele (facilitatedByMarketplace) marketplace_deemed - osvobozené plnění vůči platformě podle čl. 136a
Dovoz zásilek do 150 EUR B2C ioss - DPH v cílové zemi při prodeji, čl. 369l–369x; považuje se za dodavatele při actingAsMarketplace (čl. 14a odst. 1)
Osvobozený malý podnik (společnost není plátcem DPH), domácí plnění sme_exempt - bez DPH, čl. 284 odst. 1
Osvobozený malý podnik, přeshraniční B2C v EU, disponuje přeshraničním číslem EX sme_exempt - čl. 284 odst. 2; platí po dobu, kdy nedosahuje limitu cílové země a celkového obratu v EU ve výši 100 000 EUR
Osvobozený malý podnik, přeshraniční B2C v EU, bez čísla EX zachovává oss_union / režim původu s poznámkou, že přeshraniční číslo EX by zajistilo osvobození
Platforma (actingAsMarketplace) zprostředkovávající ubytování na dobu nejvýše 30 nocí nebo silniční osobní dopravu, od 1. července 2028 deemedSupplier: true, zdaněno v zemi, kde se nachází nemovitost nebo kde probíhá přeprava (čl. 28a, 47, 48): domestic, oss_union pro spotřebitele v jiné zemi (čl. 369b písm. c)) nebo reverse_charge pro podnikatele
Ubytovatel nebo řidič prodávající prostřednictvím takové platformy (facilitatedByMarketplace), od 1. července 2028 marketplace_deemed - osvobozené plnění vůči platformě, čl. 136b
Kterákoliv z obou výše uvedených situací před 1. červencem 2028, nebo pokud ubytovatel či řidič poskytl své DIČ a sám odvádí DPH místo plnění podle čl. 47 nebo 48, platforma se nepovažuje za dodavatele
Zboží nacházející se v jiném členském státě prodané tamnímu spotřebiteli, od 1. července 2028 oss_union, čl. 369b písm. e); před tímto datem domestic v dané zemi s poznámkou o nutnosti registrace k DPH
Totéž vůči tamnímu podnikateli reverse_charge, čl. 194
Zboží odeslané z jiného členského státu oss_union pro spotřebitele (čl. 33 písm. a)) nebo intra_eu_b2b pro podnikatele, s poznámkou, že plnění podléhá registraci k DPH v dané zemi
Instalované zboží pro spotřebitele v jiném členském státě oss_union od 1. července 2028 (čl. 36, čl. 369b písm. d)), předtím domestic v dané zemi
Plyn, elektřina, teplo nebo chlad pro spotřebitele v jiném členském státě oss_union od 1. ledna 2027 (čl. 39, čl. 369aa, následně čl. 369b písm. d)); reverse_charge pro podnikatele (čl. 195)

Limit 10 000 EUR (čl. 59c) lze předat explicitně pomocí parametru belowDistanceSalesThreshold. Pokud je vynechán, systém jej automaticky sleduje z údajů v hlavní knize (viz koncový bod pro limity níže) a k výsledku přidává běžící součty.

Osvobození pro malé podniky (směrnice 2020/285, platné od roku 2025). Pokud společnost není registrovaným plátcem DPH, vyhodnocovač s ní zachází jako s malým podnikem využívajícím osvobození: domácí plnění se vyhodnotí jako sme_exempt (bez DPH) a přeshraniční B2C plnění v EU se rovněž vyhodnotí jako sme_exempt, pokud společnost disponuje přeshraničním číslem EX (smeExemptionNumber v profilu společnosti) - v opačném případě se zachová běžný režim OSS / původu s poznámkou doporučující přeshraniční režim. Splnění podmínek (setrvání pod limitem cílové země a celkovým obratem 100 000 EUR v rámci EU) je odpovědností poplatníka; vyhodnocovač na to upozorňuje v poznámkách. Číslo EX lze nastavit prostřednictvím account/companies/update (smeExemptionNumber).

Faktury

Parametry sales/invoices/create|update akceptují vatScheme (jeden z výše uvedených režimů), vatCountryCode (členský stát spotřeby; povinné a ověřené jako EU pro oss_union/ioss) a deemedSupplier. Objednávky v e-commerce akceptují shipToCountryCode a marketplace; orders/fulfill automaticky určuje režim na základě cílové země dodání a označí koncept faktury (předpokládá se zboží a překročený limit pro prodej na dálku - před vystavením případně koncept upravte).

Pole daňového režimu na stránce nové faktury

Pole „Daňový režim“ na stránce nové faktury nabízí níže uvedené možnosti. Sazba DPH zadaná na každém řádku určuje výši daně na faktuře. Výběr možnosti označené jako „bez DPH“ nastaví všechny řádky na 0 % (a přepnutí zpět obnoví výchozí sazbu). V PDF se vytiskne zákonem požadovaná poznámka pro zvolený režim. Možnost „Automaticky“ zavolá výše uvedený vyhodnocovač při uložení, přičemž využije zemi a DIČ partnera spolu se zvoleným „Typem plnění“ (zboží, služby nebo digitální služby); pokud partner nemá zemi ani DIČ, uložení selže s chybovým hlášením a režim musíte zvolit ručně.

Možnost ve formuláři Režim Použijte, když DPH na faktuře
Automaticky (podle partnera a typu plnění) určí se při uložení Chcete, aby byl režim zvolen na základě partnera a typu plnění Určeno podle vyhodnoceného režimu; řádky jsou vynulovány pro režimy bez DPH
Domácí domestic Kupující je ve vaší vlastní zemi Sazby vaší země
B2C zboží uvnitř EU (0 %, čl. 138) intra_eu_b2b Zboží je odesláno podnikateli registrovanému k DPH v jiné zemi EU; DIČ kupujícího musí být platné v systému VIES Bez DPH; PDF uvádí informaci o osvobození podle čl. 138
B2B služby uvnitř EU (přenesení daňové povinnosti) reverse_charge Služby poskytnuté podnikateli registrovanému k DPH v jiné zemi EU Bez DPH; PDF vytiskne text „Přenesení daňové povinnosti“ (čl. 196)
Unijní režim OSS (spotřebitelé v EU, DPH v cílové zemi) oss_union Zboží nebo digitální služby spotřebitelům v jiné zemi EU nad unijní limit 10 000 EUR; vyžaduje zemi spotřeby Sazba země spotřeby zadaná na každém řádku; uvádí se v čtvrtletním přiznání OSS
IOSS (dovoz do 150 EUR) ioss Zboží dovezené ze třetích zemí spotřebiteli v EU, zásilka do 150 EUR; vyžaduje zemi spotřeby Sazba země spotřeby zadaná na každém řádku; uvádí se v měsíčním přiznání IOSS
Tržiště (zprostředkovatel jako plátce) marketplace_deemed Prodáváte prostřednictvím platformy, která se považuje za dodavatele Bez DPH na vaše plnění vůči platformě (čl. 136a)
Vývoz (osvobozeno s nárokem na odpočet) export Zboží odeslané mimo EU Bez DPH; PDF uvádí informaci o osvobození podle čl. 146
Mimo předmět DPH (služby mimo EU) out_of_scope Služby poskytnuté zákazníkovi mimo EU Bez DPH; PDF uvádí, že plnění je mimo předmět DPH v EU (čl. 44/59)
Osvobozený malý podnik (není plátcem DPH) sme_exempt Vaše společnost není plátcem DPH a využívá osvobození pro malé podniky Bez DPH; PDF uvádí informaci o osvobození podle čl. 284

Obě možnosti pro B2B plnění uvnitř EU se liší pouze předmětem plnění. Zboží spadá pod osvobození podle čl. 138: kupující přiznává pořízení zboží uvnitř EU. Služby spadají pod přenesení daňové povinnosti podle čl. 44/196: kupující si sám vyměřuje DPH. Obě generují fakturu bez DPH, ale odlišuje se text vytištěný na PDF i řádek v přiznání kupujícího, proto na této volbě záleží.

Přiznání OSS / IOSS

POST /v1/declarations/eu/oss/compute (declarations:read) { year, quarter } - čtvrtletní přiznání v unijním režimu podle přílohy III prováděcího nařízení Komise (EU) 2020/194: řádky členěné podle členského státu spotřeby × typu sazby (STANDARD/REDUCED) × sazby se základem daně a DPH, zohledněné opravné daňové doklady (dobropisy) a celkové součty. Zahrnuty jsou pouze vystavené doklady s vatScheme: "oss_union". Varování upozorňují na nesankcionované sazby pro danou cílovou zemi a období, vynechané řádky s nulovou sazbou, doklady bez vatCountryCode a plnění zdaněná v členském státě identifikace.

POST /v1/declarations/eu/ioss/compute { year, month } - měsíční přiznání stejné struktury pro vatScheme: "ioss" (dovoz zásilek do 150 EUR).

Obě odpovědi obsahují pole corrections (plus correctionsTotal): dobropis vystavený v aktuálním období, který je však propojen (prostřednictvím creditedInvoiceId) s původním dokladem z předchozího období OSS/IOSS, je vyjmut z řádků aktuálního období a vykazován jako oprava za minulé období (země, původní rok, původní čtvrtletí (OSS) nebo měsíc (IOSS) a záporný daňový rozdíl) tak, jak to vyžaduje příloha III nařízení 2020/194. Dobropisy bez creditedInvoiceId jsou započteny do aktuálního období a označeny varováním, aby je bylo možné propojit; opravy starší tří let jsou rovněž označeny varováním (čl. 61 nařízení 282/2011).

Dostupné pro jakoukoliv společnost usazenou v EU (není omezeno pouze na Litvu).

Přiznání k přesunu vlastního zboží

POST /v1/declarations/eu/own-goods-transfers/compute (declarations:read) { year, month } - měsíční přiznání pro zvláštní režim přesunu vlastního zboží (směrnice 2006/112/ES, čl. 369xa až 369xk, platné od 1. července 2028), podávané v členském státě, kde je podnik usazen, do konce následujícího měsíce (dueDate). Řádky uvádějí hodnotu přesunů v pořizovacích cenách (čl. 76) v eurech, přepočtenou kurzem posledního dne měsíce (čl. 369xh), členěnou podle členského státu určení a členského státu odeslání. Přesunem se rozumí převod zásob (POST /v1/inventory/stock/transfer) mezi sklady ve dvou různých členských státech; zemi skladu nastavte pomocí parametru countryCode v rozhraní /v1/inventory/warehouses/create nebo /v1/inventory/warehouses/update (sklad bez uvedené země se nachází v sídle společnosti).

Digitální podávání hlášení v EU

POST /v1/declarations/eu/digital-reporting/list (declarations:read) { fromDate, toDate } vypisuje každou transakci, kterou článek 262 směrnice 2006/112/ES vyžaduje vykazovat jednotlivě od 1. července 2030 ve všech 27 členských státech:

  • vystavené vydané faktury a dobropisy s daňovým režimem (vatScheme) intra_eu_b2b (čl. 262 odst. 1 písm. a)) nebo reverse_charge (čl. 262 odst. 1 písm. c)), splatné v okamžiku vystavení faktury;
  • zaevidované přijaté faktury od dodavatele z jiného členského státu s řádky, jejichž DPH společnost sama odvádí (čl. 262 odst. 1 písm. b) pro zboží, písm. d) pro služby), splatné do 5 dnů od přijetí faktury.

Každá transakce obsahuje údaje podle čl. 264: datum a číslo faktury, DIČ dodavatele a odběratele, řádky, základ daně, odkaz na osvobození od DPH, číslo opravované faktury v případě dobropisu (čl. 226 odst. 16), bankovní účty dodavatele (čl. 226 odst. 17), sazbu a výši DPH u pořízení, členský stát, kterému se má hlášení podat (ten, který vydal použité DIČ, čl. 262 odst. 2), lhůtu pro podání a pole missing označující všechny chybějící datové prvky, které nejsou v evidenci. Členské státy musí tato data přijmout jako elektronickou fakturu podle normy EN 16931 (čl. 263 odst. 3); POST /v1/sales/invoices/peppol-xml sestavuje tento soubor pro každé plnění. Společná unijní zpráva podle čl. 263 odst. 4 a vnitrostátní kanály pro odesílání těchto dat nebyly zveřejněny, proto je systém Nordlet neodesílá.

Limit pro prodej na dálku

POST /v1/declarations/eu/distance-sales-threshold/get (declarations:read) { date? } - sleduje unijní limit 10 000 EUR podle čl. 59c na základě údajů v hlavní knize: součty přeshraničních B2C prodejů na dálku za aktuální a předchozí kalendářní rok (faktury v režimu OSS plus přeshraniční spotřebitelské faktury bez režimu), zda společnost stále zůstává pod tímto limitem, a zbývající rezervu. Dokumenty v jiných měnách než EUR jsou sečteny v hodnotě dokumentu s připojeným varováním. Vyhodnocovač DPH tuto hodnotu automaticky zjišťuje, pokud není parametr belowDistanceSalesThreshold výslovně předán.

Limity pro osvobození malých podniků

POST /v1/declarations/eu/sme-thresholds/list vrací vnitrostátní limity pro osvobození od DPH pro jednotlivé členské státy podle směrnice (EU) 2020/285 (včetně vnitrostátního limitu 85 000 EUR a unijního limitu obratu 100 000 EUR). Hodnoty jsou převzaty z portálu Evropské komise pro malé a střední podniky; v případech, kdy vnitrostátní stránka odkazuje na databázi TEDB bez uvedení konkrétní částky, je vrácena hodnota null namísto odhadu. Některé limity jsou stanoveny v národní měně (DKK/HUF/RON) a některé země zveřejňují odvětvové limity (např. Irsko: služby 42 500 EUR, zboží 85 000 EUR).

POST /v1/declarations/eu/sme-threshold/get { date? } informuje o pozici společnosti neplátce DPH vůči limitu její vlastní země: obrat v aktuálním kalendářním roce plus obrat za předchozí rok (precedingTurnover), status (below / approaching při dosažení 80 % / exceeded, případně not_applicable pro registrovaného plátce DPH, unknown pokud limit není k dispozici v evidenci nebo se liší měna), zbývající rezerva a varování. Součástí jsou i upozornění na karanténní režim: překročení limitu označí osvobození jako nedostupné po zbytek aktuálního a následujícího kalendářního roku a společnosti, která je letos pod limitem, ale loni jej překročila, je zasláno varování, že osvobození nelze obnovit dříve než v následujícím roce (oba roky musí zůstat pod limitem - pravidla dle čl. 284 odst. 2; koncový bod pro unijní obrat obsahuje stejné upozornění pro limit 100 000 EUR). Pro země s vnitrostátní unijní spouštěcí podmínkou - litevský limit 14 000 EUR pro služby poskytované do jiných členských států a zboží/služby pořízené z jiných členských států - obsahuje odpověď rozpis intraEu (pořízení od dodavatelů z EU + přijaté služby v režimu reverse charge) s vlastním stavem a varováním.

Přeshraniční režim pro malé podniky: unijní obrat a čtvrtletní hlášení

POST /v1/declarations/eu/union-turnover/get { date? } sleduje limit „obratu v Unii“ ve výši 100 000 EUR pro přeshraniční režim malých podniků (čl. 284 odst. 2) na základě údajů v hlavní knize - celkovou hodnotu plnění uskutečněných v rámci EU (vývozy a plnění mimo předmět DPH jsou vyloučena) v aktuálním a předchozím kalendářním roce - a vrací součty za oba roky, status, rezervu a varování (hodnota not_applicable pro plátce DPH).

POST /v1/declarations/eu/sme-cross-border-report/compute { year, quarter } generuje čtvrtletní hlášení, které je malý podnik v tomto režimu povinen podat svému domovskému členskému státu (čl. 284b): celkovou hodnotu plnění uskutečněných v jednotlivých členských státech v daném čtvrtletí, jeden řádek na zemi (země plnění = země spotřeby na faktuře, případně země partnera, jinak domovská země), včetně celkového součtu. Plnění mimo EU jsou vyloučena.

Vnitrostátní balíčky přiznání k DPH

POST /v1/declarations/eu/vat-return/packs/list vypisuje dostupné balíčky pro jednotlivé země; POST /v1/declarations/eu/vat-return/compute { countryCode, year, month, months? } předává požadavek na balíček registrovaný pro danou zemi a vrací přiznání formou číslovaných řádků ({ code, label, amount }) spolu s varováními, poznámkami a oficiálním zdrojem (source). Vyžaduje, aby společnost byla registrována v dané zemi (jinak vrací kód 422). Litva (FR0600) je dodávána jako první balíček, který obaluje stávající generátor FR0600; další země budou přidávány jako čistě datové adaptéry po ověření rozvržení jejich oficiálních formulářů.

Starší souhrnný přehled POST /v1/reports/oss zůstává zachován jako heuristický analytický pohled (založený na zemi partnera, bez nutnosti použití režimu); koncové body pro daňová přiznání představují oficiální způsob podávání přiznání. Obě varianty odvozují domovskou zemi ze subjektu společnosti namísto předpokladu, že se jedná o Litvu.