Zum Inhalt springen

Process Overview

Dieser Inhalt ist noch nicht in deiner Sprache verfügbar.

Your POS sends the sale as a Unified API record; fiskaly signs it, sends the EET message to the Financial Administration, verifies the authority’s signed response and stores the confirmation on the record.

┌─────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Your POS │────────────▶ │ SIGN CZ │────────────▶ │ Finanční správa │
│ │◀──────────── │ (fiskaly UAPI) │◀──────────── │ (EET 2.0) │
└─────────────┘ └──────────────────┘ └──────────────────┘
You send: fiskaly: Returns:
• INTENTION record • maps UAPI → EET fields • POK confirmation
• TRANSACTION record • signs (WS-Security) • or error / warning
• stores transmission evidence
OperationSupportedBehaviour
INTENTION (OPENING / TRANSACTION / CLOSING)Accepted. EET 2.0 has no register-open/close message, so these only signal the transaction lifecycle
TRANSACTION::RECEIPTThe only operation that reports to the authority. One record = one EET message
CANCELLATION⛔ not yetThe customer-facing contract is not final. Do not build against it yet
CORRECTION⛔ not yetSame

Every accepted sale is confirmed with a POK code, returned on the record’s compliance.data as EET,<POK>.

The POK identifies the accepted message, not the sale. Sending the same sale twice (as a resend after an outage does) is accepted both times and returns two different POKs. Keep the confirmation from your first success; do not read a fresh POK as evidence of a second sale. The authority deduplicates on a six-field sale identity: eic_popl, id_jednotky, id_pokl, porad_cis, dat_trzby, celk_trzba.

The taxpayer can see their recorded sales in DIS+, in summary and detail — that is the surface merchants reconcile against.

Authority outcomeRecord stateMeaning
ConfirmedrecordedPOK on compliance.data
Retryable rejection (kod −1 / 8) or transport failureFAILEDResend required — the sale is not recorded. The 48-hour legal clock is running; see Outages & the 48-Hour Rule
Terminal rejection (kod 2 / 3 / 4 / 6 / 7) or unexpected responseREJECTEDA client defect; an identical resend cannot succeed. Fix the payload
kodMeaningClassification
0Verification-mode success — a dry run, nothing recorded, no POK. Success, despite arriving in an error elementn/a
−1Temporary technical processing error — resend laterretry with backoff → FAILED
2Encoding violationREJECTED
3XSD violationREJECTED
4Bad / invalid signatureREJECTED
6Malformed EIČREJECTED
7Message over the 12 kB size limitREJECTED
8Message not processed, technical or data errorretry → FAILED
(no response)The input looked like an attack; the service deliberately stays silenthandle as timeout → FAILED

Warnings never block a POK — the sale is accepted and flagged anyway. Every warning is appended to the record’s content.logs as a WARNING entry with the code.

kod_varovMeaning
1The message’s eic_popl does not match the EIČ in the signing certificate — the sale is recorded against the wrong taxpayer, and a POK is still issued. This is the one to alert on; it is silent by every other measure
2Malformed eic_poverujiciho (delegation)
4dat_trzby more than 2 hours in the future
5dat_trzby significantly in the past (in practice the playground warns from about 6 months back)
6id_jednotky does not match the assigned unit-number format. Soft rule only — expected for placeholder or mistyped values; a real DIS+-allocated number does not trip it
7eic_poverujiciho equals eic_popl

Every authority response carries an X-Global-Transaction-Id. When contacting support about a specific message — especially one that failed days earlier — quote this ID; it is the handle the Financial Administration expects vendors to use.