Tschechiens EET 2.0 ab 1. Januar 2027: Was individuelle Kassen- und Kiosksoftware leisten muss

Die tschechische Umsatzerfassung ist zurück. Präsident Petr Pavel hat das Gesetz zur EET 2.0 am 17. September 2026 unterzeichnet, und die Mitteilung der Finanzverwaltung ist beim Datum eindeutig: Die Pflicht zur Umsatzerfassung beginnt am 1. Januar 2027. Sie umfasst Zahlungen mit persönlichem Kontakt zwischen Unternehmen und Kunde, einschließlich aller Barzahlungen. Bar, Karte, Telefon oder QR-Code: Wenn der Kunde persönlich oder in Ihren Räumen zahlt, geht der Verkauf sofort an die Steuerbehörde.
Für die meisten kleinen Händler bedeutet das ein Update ihres Anbieters oder eine kostenlose staatliche Web-App. Für Ketten mit eigener Kassensoftware, Selbstbedienungskiosken oder einer Bezahl-App, mit der das Personal durch die Fläche geht, ist es ein Integrationsprojekt mit rund 90 verbleibenden Tagen. Dieser Artikel ist für sie.
Was sich seit der ersten EET geändert hat
Die ursprüngliche EET wurde 2022 abgeschafft. Die EET 2.0 behält die Grundidee (jeder erfasste Verkauf wird online gesendet und vom Staat bestätigt) und wirft viel Ballast ab:
- Minimale Daten. Das alte System hat jeden Verkauf nach Mehrwertsteuersatz aufgeteilt. Die EET 2.0 sendet eine einzige Summe inklusive Mehrwertsteuer, unabhängig von den Sätzen.
- Keine Belegpflicht. Unternehmen müssen für Zwecke der EET keinen Beleg mehr ausstellen, und der Bestätigungscode muss auf keinem erscheinen.
- Ein engerer Anwendungsbereich. Erfasst werden nur Zahlungen mit persönlichem Kontakt zwischen Kunde und Unternehmen; das alte System umfasste ein breiteres Spektrum an Zahlungen.
- Eine kostenlose staatliche Option. MOJE eet, eine Web-App für die kleinsten Unternehmen, dazu eine Abmeldemöglichkeit namens EET OFF für bestimmte pauschal besteuerte Einzelunternehmer.
Die technische Änderung ist größer, als die Liste vermuten lässt. Der Transport ist bekannt: SOAP 1.1 über HTTPS mit WS-Security-Signaturen, wie zuvor. Die Nachricht ist es nicht. Die neue Schnittstelle hat Version 4.1, die alte hatte 3.1, und die Spezifikation sagt, die Änderungen von 2026 seien „mit dem bisherigen System nicht kompatibel“. Die Präsentation zum Entwicklerseminar führt den Sicherheitscode BKP, das Kennzeichen für den vereinfachten Modus und die Mehrwertsteuerposten als entfernt auf. Alter EET-Code taugt als Vorlage für die Infrastruktur, für mehr nicht.
Was erfasst ist
Die offizielle Seite dazu, wer Umsätze erfassen muss, nennt drei Bedingungen: Die Zahlung ist eine Kontaktzahlung oder eine beliebige Barzahlung, sie ist betriebliche Einnahme, und keine Ausnahme greift.
Eine Kontaktzahlung erfolgt entweder im persönlichen Kontakt mit Ihnen oder Ihrem Personal oder in Ihren Räumen oder Ihrem Fahrzeug im Zusammenhang mit der Ware oder Dienstleistung. Die Seminarpräsentation sagt ausdrücklich, dass die zweite Regel auf Selbstbedienungskassen und Selbstbedienungsräume zielt. Ein Kiosk in Ihrem Geschäft ist erfasst, auch wenn kein Mitarbeiter die Transaktion berührt. Bargeld wird immer erfasst, auch außerhalb Ihrer Räume, außer bei Nachnahme, die ein Postdienst einzieht.
Die Zahlungsart spielt keine Rolle. Bargeld, Karte, QR-Code, eine Überweisung oder Lastschrift am Verkaufsort, Krypto-Assets, Geschenkkarten, Essensgutscheine und Prepaid-Karten sind alle aufgeführt.
Zahlungen aus der Ferne sind ausgenommen: ein Webshop mit Zahlung über ein Payment-Gateway oder eine Rechnung, die der Kunde aus seinem Büro bezahlt. Es zählt, wie das Geld tatsächlich geflossen ist, nicht, was auf der Rechnung steht. Zahlt ein Kunde 200 CZK an der Theke mit Karte und die restlichen 800 CZK am nächsten Tag per Überweisung von zu Hause, werden nur die 200 CZK erfasst.
Automaten, die für sich genommen eigene Räume sind (der Kaffeeautomat ist das offizielle Beispiel), sind ausgenommen, ebenso Selbstbedienungsstände außerhalb Ihrer Räume, bei denen eine Erfassung unpraktikabel wäre. Die Ausnahmeliste umfasst unter anderem auch öffentliche Stellen, Banken, Glücksspiel und Energie.
Wer sich das meiste sparen kann
Kleinstunternehmen können MOJE eet nutzen, das am 1. Dezember 2026 startet. Das Entwicklerseminar im Juni hat es für Unternehmen mit bis zu zwei Erfassungseinheiten und zwei Beschäftigten vorgestellt. Pauschal besteuerte Einzelunternehmer in der ersten Stufe mit Einnahmen bis 1 Million CZK können sich über EET OFF abmelden.
Unternehmen mit einem verbreiteten Kassenprodukt sollten ein Update ihres Anbieters bekommen. Fragen Sie, wann es kommt und was bei einem Ausfall passiert, registrieren Sie sich dann im Steuerportal und installieren Sie das Zertifikat.
Alle anderen sollten weiterlesen: selbst entwickelte oder angepasste Kassensoftware, selbst gebaute Kioske, Bezahl-Apps für das Personal oder ein Konzern, in dem eine Zahlung zwei Unternehmen gehören kann.
Was gebaut werden muss
Alles steht auf der Seite mit den Dokumenten für Entwickler: die Schnittstellenbeschreibung (die englische Fassung ist unverbindlich), XSD und WSDL, signierte Beispielanfragen und Zertifikate für die Playground-Umgebung.
Erfassungseinheiten und Geräte-IDs
Jede Nachricht trägt die Kennung einer Erfassungseinheit. Einheiten (ein Geschäft, ein mobiler Stand, ein Lieferfahrzeug) legen Sie im Steuerportal DIS+ an, und das System vergibt für jede eine Nummer. Ketten können Einheiten gesammelt importieren, und Änderungen müssen innerhalb von 15 Tagen gemeldet werden. Ihre Kasse braucht eine gepflegte Zuordnung jedes Standorts zu seiner Einheitenkennung sowie eine Geräte-ID mit bis zu 20 Zeichen, die innerhalb der Einheit eindeutig ist.
Zertifikate
Hier verlieren individuelle Systeme meist Zeit. Das Verfahren für Zertifikate beschreibt die Schritte:
- Das Schlüsselpaar erzeugt die Zertifizierungsstelle der EET, nicht Ihr Gerät. Sie laden eine passwortgeschützte PKCS#12-Datei herunter, die verfügbar bleibt, bis Sie den Download bestätigen, höchstens aber 30 Tage.
- Die Datei verwendet aus Rücksicht auf ältere Kassen die veraltete 3DES-Verschlüsselung. Das Dokument warnt, dass sie unter OpenSSL 3 ohne den Legacy-Provider möglicherweise nicht geladen werden kann, und empfiehlt, sie neu zu verpacken oder den Schlüssel in einen Tresor zu überführen.
- Zertifikate gelten ein Jahr. Ein Zertifikat kann ein Gerät oder mehrere bedienen; wie viele Sie ausstellen, entscheiden Sie.
- Die Verlängerung lässt sich über eine REST-API automatisieren: ein kurzlebiges JWT, signiert mit dem zu verlängernden Zertifikat, dann die Anfrage abfragen, herunterladen, bestätigen. Die Zertifizierungsstelle empfiehlt, zwei bis drei Wochen vor Ablauf zu verlängern. Ist ein Zertifikat einmal abgelaufen, ist der Weg über die API verschlossen, und jemand verlängert es von Hand.
- Den privaten Schlüssel zu schützen ist die gesetzliche Pflicht des Steuerpflichtigen. Eine Schlüsseldatei, die auf vierzig Kassen kopiert ist, ist ein Widerruf, der nur darauf wartet, zu passieren.
Die Datennachricht
Der Header enthält für jeden Versuch eine neue UUID, den Sendezeitpunkt, ein Kennzeichen für den ersten Versuch und ein optionales Prüfkennzeichen. Der Datenteil enthält die EIČ des Steuerpflichtigen, die Einheitenkennung, die Geräte-ID, eine laufende Nummer (bis zu 25 Zeichen, eindeutig je Einheit und Gerät), den Verkaufszeitpunkt mit Zeitzonenversatz und die Summe in CZK mit genau zwei Nachkommastellen. Zwei optionale Beträge decken das Aufladen und Abbuchen von Prepaid-Guthaben ab; zwei weitere Felder decken die Erfassung im Namen eines anderen Steuerpflichtigen ab.
Erfassen Sie, was tatsächlich eingenommen wurde: Eine Barrechnung über 78,90, gerundet auf 79, geht als 79,00 ein, dieselbe Rechnung mit Karte als 78,90. Eine Rechnung, die teils mit Essensgutscheinen und teils mit Karte bezahlt wird, ist eine Nachricht mit der Gesamtsumme.
Signieren und senden
Jede Nachricht wird per XML Signature im WS-Security-Header signiert: exklusive Kanonisierung, SHA-256-Digest, RSA-SHA256, das Zertifikat als BinarySecurityToken angehängt und nur der SOAP-Body signiert. Lassen Sie zusätzliche Header wie Timestamp oder WS-Addressing weg: Nachrichten über 12 kB werden abgelehnt, und eine Nachricht, die wie ein Angriff aussieht, bekommt womöglich gar keine Antwort. TLS 1.2 oder höher ist Pflicht, und der Client muss das Serverzertifikat prüfen. Die Produktion nutzt DNS-Lastverteilung, lösen Sie den Hostnamen also bei jeder Verbindung neu auf, statt eine IP fest einzutragen.
Seit Version 1.2 unterstützt der Endpunkt CORS, eine browserbasierte Kasse kann ihn also direkt aufrufen. Entscheiden Sie, wo der private Schlüssel liegt, bevor jemand dieses JavaScript schreibt.
Antworten, Ausfälle und die 48-Stunden-Regel
Eine gültige Nachricht erhält eine synchrone Antwort mit einem 39-stelligen Bestätigungscode (POK), signiert von der Steuerbehörde. Prüfen Sie diese Signatur und speichern Sie den POK zum Verkauf. Eine ungültige Nachricht erhält einen Fehlercode; -1 bedeutet einen vorübergehenden Fehler, senden Sie also später erneut. Kleinere Probleme kommen als Warnungen zurück, eine davon, wenn der Verkaufszeitpunkt mehr als zwei Stunden vor der Serveruhr liegt. Die Uhren von Kiosken laufen davon. Synchronisieren Sie sie.
Das Zeitlimit für die Antwort legen Sie selbst fest, mindestens zwei Sekunden. Kommt kein POK rechtzeitig, geht der Verkauf in eine Warteschlange. Laut Seminarpräsentation verwendet die Wiederholung den ursprünglichen Body mit einem neuen Header: neue UUID, Kennzeichen für den ersten Versuch auf false, neuer Sendezeitpunkt, ursprünglicher Verkaufszeitpunkt. Sie geht hinaus, sobald die Verbindung zurück ist, spätestens 48 Stunden nach dem Verkauf. Auch nach 48 Stunden erlischt die Pflicht nicht: Eine verspätete Nachricht ist trotzdem geschuldet.
Die Warteschlange muss also einen Neustart überstehen und lange vor Ablauf der 48 Stunden Alarm schlagen. Noch eine Falle: Wenn das Zertifikat abläuft, während Verkäufe warten, müssen sie mit einem aktuell gültigen signiert werden.
Erstattungen, Korrekturen und Duplikate
Eine Erstattung oder Stornierung ist eine neue Nachricht mit negativem Betrag, mit aktuellem Datum und ohne Verknüpfung zum Original. Eine Korrektur ist entweder eine Stornierung gefolgt von der richtigen Nachricht oder eine einzelne Differenznachricht. Duplikate werden anhand von sechs Feldern erkannt (EIČ, Einheit, Gerät, laufende Nummer, Verkaufszeitpunkt und Summe), eine Wiederholung mit demselben Body ist also sicher. Eine Wiederholung, die die laufende Nummer neu erzeugt, ist ein zweiter Verkauf.
Belege
Weniger Arbeit als bei der ersten EET: Für Zwecke der EET ist kein Beleg vorgeschrieben, und der POK muss auf keinem erscheinen. Entfernen Sie jeden Code, der den Druck zurückhält, bis der POK da ist. Wo Sie nach Verbraucherrecht Belege ausstellen, halten Sie die laufende Nummer der EET und die Belegnummer in Übereinstimmung; die Spezifikation merkt an, dass beide in der Praxis meist identisch sind.
Sonderfälle, auf die Ketten stoßen
- Prepaid-Karten, Armbänder und Wallets: Die Aufladung und jede Ausgabe werden erfasst, mit gesetzten Zusatzbetragsfeldern.
- Eine Zahlung, zwei Steuerpflichtige: Das Tankstellenbeispiel aus der Präsentation (Kraftstoff im Namen eines anderen Unternehmens verkauft, Kaffee auf eigene Rechnung) braucht zwei Nachrichten, jede mit den Daten ihres eigenen Steuerpflichtigen.
Der Zeitplan
- 5. Juni 2026: technische Dokumentation veröffentlicht.
- 1. Juli 2026: Die Playground-Umgebung öffnet. Zwischen dem 26. Juli und dem 26. August verarbeitete sie 170.389 Testtransaktionen von 624 Client-IP-Adressen, 94,6 % davon erfolgreich.
- 1. November 2026: EET in DIS+, Erfassungseinheiten und Produktivzertifikate.
- 1. Dezember 2026: MOJE eet startet.
- 1. Januar 2027: Die Pflicht beginnt für alle gleichzeitig, ohne Staffelung.
Der offizielle Zeitplan bezeichnet den Januar als Pilotmonat und fügt dann hinzu, dass es sich bereits um reguläre Erfassung handelt. Eine frühere Mitteilung beschrieb den Pilotbetrieb als freiwillig. Bis das geklärt ist, planen Sie, ab dem 1. Januar echte Nachrichten zu senden.
Ein formaler Schritt fehlt noch: Als die Unterzeichnung am 22. September bekannt gegeben wurde, stand die Veröffentlichung in der Gesetzessammlung noch aus. Das ist Routine.
Ein 90-Tage-Plan
Oktober: Umfang und Umsetzung.
- Listen Sie jede Stelle auf, an der Geld den Besitzer wechselt: Kassen, Kioske, Handgeräte, Bestellungen am Tisch, die im Lokal bezahlt werden, eigene Fahrer, die Bargeld kassieren. Ordnen Sie jede einem Steuerpflichtigen und einer künftigen Erfassungseinheit zu.
- Wählen Sie die Architektur: auf jedem Gerät signieren oder einen Dienst betreiben, der für alle signiert und die Warteschlange führt. Das System akzeptiert beides. Für eine Kette gewinnt meist die zentrale Variante: ein Schlüsselspeicher, eine Warteschlange, eine Stelle zum Überwachen.
- Bauen Sie Nachrichtenerzeugung, Signierer und Warteschlange gegen die Playground-Umgebung mit den gemeinsamen Testzertifikaten. Prüfen Sie jede Nachricht in der CI gegen die XSD.
November: Zugangsdaten für die Produktion.
- Aktivieren Sie ab dem 1. November die EET in DIS+, legen Sie die Einheiten an (per Sammelimport, wenn Sie viele haben) und lassen Sie Produktivzertifikate ausstellen. Legen Sie sie in einen Tresor, nicht auf USB-Sticks.
- Die Spezifikation setzt den 1. November 2026 als frühestes gültiges Verkaufsdatum in der Produktion. Senden Sie Nachrichten im Prüfmodus mit dem echten Zertifikat: Sie testen die ganze Kette, ohne einen Verkauf zu erfassen.
- Stellen Sie Erstattungen, Prepaid-Abläufe, die Zertifikatsverlängerung und Alarme zum Alter der Warteschlange fertig.
Dezember: proben.
- Rollen Sie an einem Standort aus. Ziehen Sie zur Mittagsspitze das Netzwerkkabel und beobachten Sie, wie sich die Warteschlange danach leert.
- Testen Sie Ihre umsatzstärkste Stunde unter Last durch den Signierer.
- Frieren Sie die Änderungen vor dem Weihnachtsgeschäft ein. Sagen Sie dem Personal, wie ein Ausfall aussieht; wenn die Warteschlange funktioniert, muss es nichts tun.
Januar: der Pilotmonat.
- Gleichen Sie täglich ab. Vergleichen Sie die Summen Ihrer Kassen mit den aggregierten Beträgen in DIS+, wo Sie außerdem einen detaillierten CSV-Export mit jedem POK anfordern können.
Wo Sie Hilfe bekommen
Wir bauen und ändern Kassenintegrationen: Nachrichtenerzeugung und Signierer, die Warteschlange für Ausfälle, Speicherung und Verlängerung der Zertifikate, die Zuordnung der Einheiten und den Abgleich mit DIS+. Wenn die Kassensoftware alt ist und ihre Autoren weitergezogen sind, beginnt diese Arbeit bei unserer Wartung von Bestandssystemen. Wenn Ihr eigenes Team das System kennt, ihm aber vor Januar die Hände fehlen, können wir Entwickler hinzufügen.
Wenn Sie in Tschechien eigene Kassen oder Kioske betreiben und noch keine Nachricht an die Playground-Umgebung gesendet haben, schreiben Sie an office@c9group.dev.