📄 EET 2.0 (Elektronická evidence tržeb) v19

EET 2.0 (Elektronická evidence tržeb) v19


Kontext

V tomto dokumentu se dozvíte více o nastavení a používání modulu pro Elektronickou evidenci tržeb (EET 2.0) v systému Odoo. Modul origamis_cz_eet (s rozšířením origamis_cz_eet_pos pro pokladny) slouží k evidenci tržeb podléhajících českému režimu EET, a to z prodejních míst (POS) i z účtárny. Bližší informace o tom, kterých subjektů a typů tržeb se zákonná povinnost týká, naleznete v oficiálním přehledu Finanční správy. Modul zajišťuje automatické sestavení, elektronický podpis pokladním certifikátem, odeslání datové zprávy, získání potvrzovacího kódu (POK) i tisk zákonných náležitostí na účtenkách.

Globální nastavení

V rámci nastavení Účetnictví byla přidána sekce EET. Naleznete zde konfigurační parametry:

  • EET zapnuto: Hlavní vypínač celé agendy pro daného poplatníka.

  • Prostředí EET: Volba mezi Neprodukční (playground) pro vývoj a testování a Produkční pro ostrý provoz.

  • Pokladní certifikát: Výchozí pokladní certifikát (.p12) společnosti stažený z portálu DIS+ / MOJE daně.

  • EIC poplatníka: Evidenční identifikační číslo poplatníka (načítá se automaticky z certifikátu).

  • EIC pověřujícího: Nepovinné pole pro poplatníky evidující v pověření.

  • Mezní doba odezvy (s): Technický timeout pro synchronní odeslání (výchozí 2 s).

  • Kontrola podpisu odpovědi: Přísnost ověření elektronického podpisu odpovědi Finanční správy (Benevolentní / Přísné).

  • Tlačítko "Otestovat spojení": Umožňuje bezpečně odeslat zkušební zprávu v ověřovacím módu proti Finanční správě bez vzniku evidované tržby.


Hlavní funkce

  • Správa pokladních certifikátů a evidenčních jednotek: Nahrávání certifikátů PKCS#12, automatické načtení platnosti, EIC a vedení evidenčních jednotek z DIS+.

  • Evidence z účtárny (Backend): Zaúčtováním příchozí zákaznické platby na deníku podléhajícím EET vzniká automaticky datová zpráva a získá se kód POK.

  • Integrace s POS (Prodejní místa): Automatické odesílání tržeb ze zaplacených POS objednávek a tisk povinných údajů (POK, EIC, evidenční jednotka, pokladna, pořadové číslo) na bloček.

  • Garantovaný offline režim a resend cron: Výpadek internetu nebo timeout serveru FS nezablokuje prodej – zpráva počká ve frontě a plánovaná úloha (cron) ji v pravidelných intervalech s novým UUID automaticky dopošle.

1. Konfigurace a nastavení agendy

Kontext

Před spuštěním samotné evidence je nutné založit evidenční jednotku z portálu DIS+, nahrát pokladní certifikát .p12 a propojit konfiguraci s účetnictvím a prodejními místy.

Kde se pohybujeme

  • Evidenční jednotky a Certifikáty: Účetnictví (v Enterprise) nebo Fakturace (v Community) ➔ EET ➔ Evidenční jednotky / Certifikáty.

  • Globální nastavení: Nastavení ➔ Účetnictví / Fakturace ➔ sekce EET. 


Přístupová práva

  • Plná správa (Účetnictví / Administrátor): Vytvářet a upravovat pokladní certifikáty, evidenční jednotky a měnit globální nastavení EET může pouze uživatel s rolí Účetnictví / Administrátor. Citlivé heslo k certifikátu je chráněno na úrovni pole a vidí jej výhradně tato role.
  • Běžný provoz a audit (Účetní / Pokladník): Uživatelé s nižšími účetními rolemi (např. Zobrazit kompletní účetní funkcionalitu, Fakturace nebo Zobrazit účetní funkce - pouze pro čtení) či s rolí Prodejní místa / Uživatel, mají k agendě EET (zprávám, certifikátům a jednotkám) přístup pouze pro čtení. Prodeje a odesílání datových zpráv z pokladny či účtárny probíhají automaticky na pozadí pod systémovým oprávněním (sudo), takže běžný pokladník ani účetní nepotřebuje práva k editaci certifikátů.

Jak to funguje

  • Evidenční jednotka:

    • Otevřete menu Evidenční jednotky a klikněte na Nové.

    • Vyplňte Název (např. TEST nebo Prodejna Brno) a Označení evidenční jednotky (číslo id_jednotky přidělené z DIS+, např. 111).

  • Pokladní certifikát:

    • V menu Certifikáty vytvořte nový záznam.

    • Vyberte Prostředí (Neprodukční (playground) / Produkční), nahrajte Soubor certifikátu (.p12) a zadejte Heslo certifikátu.

    • Systém certifikát dešifruje, vyčte EIC poplatníka, platnost a změní stav na Aktivní.

    • Automatická hlídka expirace: Pokladní certifikát z DIS+ má platnost 366 dní. Modul automaticky hlídá jeho platnost a 30 dní před vypršením založí správci účetnictví aktivitu s upozorněním na nutnost obnovy.


  • Zapnutí v Nastavení:

    • V Nastavení –> Účetnictví zaškrtněte EET zapnuto, zvolte prostředí, přiřaďte certifikát a ověřte načtené EIC.

    • Klikněte na Otestovat spojení. Pokud je vše v pořádku, zobrazí se zelená hláška: „Test spojení EET. Test spojení byl úspěšný (kód odpovědi 0).“

⚠️

Při vytvoření testovací kopie (Staging) na Odoo.sh se z bezpečnostních důvodů EET funkcionalita automaticky vypne, aby zkušební prodeje neodesílaly ostrá data na Finanční správu. Veškerá konfigurace certifikátů, pokladen a deníků zůstává zachována – pro testování na Stagingu stačí nahrát testovací certifikát a EET v Nastavení ručně zapnout.

Chybové hlášky

  • Chyba hesla / certifikátu: Při zadání špatného hesla nebo nahrání poškozeného souboru vyskočí ValidationError: „Neplatný soubor certifikátu nebo nesprávné heslo.“

  • Neshoda prostředí: Pokud přiřadíte produkční certifikát do neprodukčního prostředí (nebo naopak), systém operaci zablokuje.

Cvičný příklad

Vytvořte testovací Evidenční jednotku s označením 111. Nahrajte testovací playground certifikát CA_EET-Playground-CZ00000019.p12 s heslem aaaa1111. V Nastavení zapněte EET, nastavte neprodukční prostředí a stiskněte Otestovat spojení. Ověřte, že test vrátil kód 0.


2. Použití v Účetnictví 

Kde se pohybujeme

  • Účetní deníky: Účetnictví –> Konfigurace –> Účetní deníky (záložka EET)

  • Zákaznické platby: Účetnictví –> Zákazníci –> Platby

Kontext

Příchozí zákaznická platba (nákup za hotové, úhrada na terminálu na prodejně či bankovní převod v EET deníku) zakládá v momentě zaúčtování datovou zprávu EET. Faktura sama o sobě tržbou není, tržbou je až její úhrada.

Jak to funguje

  • Příprava deníku: Na účetním deníku (typ Hotovost / Banka) přejděte na záložku EET, zaškrtněte Podléhá EET, vyberte Evidenční jednotku a zadejte Označení pokladního zařízení.

  • Vytvoření a zaúčtování platby: Vytvořte příchozí zákaznickou platbu na daný deník a klikněte na tlačítko Potvrdit.

  • Zobrazení POK: Systém během sekundy odešle zprávu do EET a přímo na formuláři platby zobrazí vygenerovaný POK a stav Potvrzeno.

  • Proklik na audit zpráv: V horní části platby se zpřístupní chytré tlačítko Datové zprávy EET, kde naleznete kompletní technický detail odeslaného i přijatého XML.

Cvičný příklad

Otevřete deník banky/hotovosti EET, na záložce EET zaškrtněte Podléhá EET a zvolte jednotku TEST. Vytvořte novou zákaznickou platbu na částku 100 CZK s tímto deníkem a klikněte na Potvrdit. Ověřte, že na platbě přibylo pole POK s kódem končícím -ff a v chytrém tlačítku je navázaná 1 datová zpráva.


3. Použití v Prodejních místech (POS) - modul EET 2.0 - POS

Kde se pohybujeme

  • Platební metody POS: Prodejní místa –> Konfigurace –> Platební metody

  • Nastavení pokladny: Prodejní místa –> Konfigurace –> Prodejní místa

  • Obrazovka pokladny: Aplikace Prodejní místo

Kontext

Při dokončení prodeje na pokladně POS (s povoleným EET a kontaktní platební metodou) se vytváří zpráva EET pro celou objednávku. Kód POK se v reálném čase vrátí do pokladny a vytiskne na účtenku.

Jak to funguje

  • Povolení na platební metodě: Na metodách určených pro kontaktní platby (Hotovost, Karta) zaškrtněte políčko Podléhá EET.


  • Povolení na pokladně: V nastavení konkrétního prodejního místa zapněte EET, zvolte Evidenční jednotku a Označení pokladního zařízení.


  • Průběh prodeje:

    • Pokladník natipuje položky a přejde k platbě.

    • Vybere platební metodu podléhající EET (např. Karta) a zaplatí.

    • Na tištěný bloček systém automaticky vloží sekci EET: POK, EIC, Evidenční jednotku, Pokladnu a Poradové číslo.


  • Storno / Vratka: Při vytvoření vratky (refund) v POS systém automaticky založí novou EET zprávu typu Storno se zápornou částkou.

Cvičný příklad

V nastavení platební metody Karta zaškrtněte Podléhá EET. Otevřete pokladnu, natipujte produkt a proveďte úhradu kartou. Na náhledu účtenky ověřte přítomnost potvrzovacího kódu POK, EIC poplatníka a čísla evidenční jednotky. V menu Účetnictví / Fakturace ➔ EET ➔ Datové zprávy EET zkontrolujte nově vzniklý záznam tržby.

4. Dohledání zpráv a řešení chyb

Přehled odeslaných zpráv

Všechny vytvořené zprávy, jejich stavy i detailní XML komunikaci s Finanční správou naleznete v menu:

Účetnictví (v Enterprise) nebo Fakturace (v Community) ➔ EET ➔ Datové zprávy EET

V tomto přehledu vidíte:

  • Stav: Potvrzeno (zelená s kódem POK) / Chyba (červená, zpráva čeká na doposlání).

  • Navázaný doklad: Proklik na konkrétní platbu nebo POS objednávku.

  • Technický detail: Záložky s plným zněním odeslaného i přijatého XML.

Jak řešit chybové zprávy

Pokud zpráva selže (např. při výpadku internetu nebo serveru Finanční správy):

  1. Automatické doposlání: Systém zprávu označí stavem Chyba a plánovaná úloha (cron) ji v pravidelných intervalech s novým UUID sama odesílá znova (v přehledu vidíte sloupec Počet pokusů).

  2. Ruční odeslání: Pokud potřebujete odeslání vynutit ihned, klikněte na tlačítko Odeslat znovu přímo na řádku dané zprávy.

  3. Kritická chyba (Zamítnuto): Pokud Finanční správa zprávu odmítne z důvodu chybných údajů (např. překlep v EIC), zpráva přejde do stavu Zamítnuto a cron ji automaticky neopakuje. Po opravě údaje v konfiguraci otevřete zamítnutou zprávu a klikněte na tlačítko Vytvořit opravenou zprávu – systém vytvoří novou zprávu s opravenými daty a původní označí jako nahrazenou.