Croatia — Fiscalisation 2.0 B2B mandate
Fiscalisation 2.0 B2B mandate live since 1 January 2026 — regulator: Porezna uprava (Tax Administration). Facts last refreshed: 2026-05-05.
POST /v1/documents/send.
TL;DR
- Croatia's Fiscalisation 2.0 framework extended pre-existing B2C real-time fiscalisation to B2B on 1 January 2026.
- All VAT-registered businesses must issue structured e-invoices and report each one to the national portal in real-time.
- Domestic format: UBL 2.1 with the HR-CIUS; cross-border via Peppol BIS 3.0.
- Flowie's HR access point handles the fiscalisation handshake transparently — your call to
/v1/documents/sendemits the JIR/ZKI tokens automatically.
Deadlines
| Date | Who | What |
|---|---|---|
| 2013-01-01 | All cash-register B2C | Real-time fiscalisation (OIB, JIR, ZKI) — already live. |
| 2026-01-01 | All VAT-registered B2B | Structured e-invoice + real-time fiscalisation report. |
| 2027-01-01 | Non-VAT businesses (planned) | Smaller taxpayers absorbed; legislation pending. |
Background
Croatia has run real-time B2C fiscalisation since 2013 — every retail receipt is reported to the Porezna uprava, which echoes back a JIR (unique invoice identifier) and the seller stamps a ZKI (issuer protection code). Fiscalisation 2.0, in force since 1 January 2026, ports the same model to B2B: the invoice itself becomes structured (UBL 2.1) and is fiscalised in the same step.
Practically: when Flowie sends a domestic HR invoice, our AP signs it, transmits to the recipient via Peppol, and posts the fiscalisation envelope to the Porezna uprava service — all inside one /v1/documents/send call. The response includes the JIR + ZKI as complianceReceipt.
Format profile
- UBL 2.1 with HR-CIUS for domestic B2B; Peppol BIS 3.0 for cross-border (HR is OpenPeppol member).
- OIB (Croatian tax ID, 11 digits) is mandatory on both seller and buyer. Plain VAT is not accepted in lieu.
- JIR + ZKI are returned by the fiscalisation service and embedded into the invoice as
cbc:UUIDand a custom signature element.
Required fields
-
seller.taxId.oibstring (11 digits)required
Croatian OIB. Validated by check-digit.
-
buyer.taxId.oibstring (11 digits)required for B2B
Buyer OIB; mandatory for any domestic B2B invoice.
-
fiscalisation.operatorOibstringrequired
OIB of the natural person operating the cash-register / issuing system.
Public sector (B2G)
| Hub | Peppol identifier scheme | Lookup |
|---|---|---|
| Servis e-Račun (FINA) | 9934:HR-FINA-<authority-id> | https://www.fina.hr/e-racun |
Public-sector recipients route via FINA's Servis e-Račun, mandatory since 2019. Flowie resolves the Peppol ID for you.
B2B reporting / clearance
Porezna uprava — Fiscalisation 2.0 — Real-time invoice register; every domestic B2B invoice posted within seconds of issue.
| Lifecycle status | Reported as |
|---|---|
issued | Fiscalisation request sent → JIR + ZKI returned. |
cancelled | Storno fiscalisation message; original JIR referenced. |
paid | Optional payment confirmation; not always required. |
Error codes
| Code | Meaning | Fix |
|---|---|---|
HR-FISC-101 | OIB unknown to Porezna uprava. | Verify the OIB; if newly registered, wait 24h for the registry to propagate. |
HR-FISC-205 | ZKI signature does not match the seller's certificate. | Sandbox uses a Flowie test cert; production needs the seller's FINA-issued cert linked to their organisation. |
HR-CIUS-031 | Missing operator OIB. | Set fiscalisation.operatorOib. |
Testing in sandbox
| What you want to test | How |
|---|---|
| Domestic B2B happy path | Use seller.taxId.oib = "12345678901" in sandbox; JIR SBX-... echoed back. |
| Force fiscalisation rejection | Send with simulateCompliance: "reject_HR_FISC_101". |
FAQ
Is the OIB the same as the VAT number?
The OIB is the 11-digit tax identifier; the VAT number is HR + OIB for VAT-registered entities. Send the OIB as seller.taxId.oib and Flowie derives the VAT representation when needed.
What about non-resident sellers invoicing into HR?
If the seller is not OIB-registered, the invoice is not domestic — it follows EU cross-border rules and Peppol BIS without fiscalisation.
References
Primary sources (government / regulator / standards body):
- EU Commission · eInvoicing in Croatia — Pan-EU reference factsheet.
- FINA · Servis eRačun za državu — National B2G platform operated by FINA.
- Ministarstvo financija · Porezna uprava — Tax administration — Fiscalization 2.0.
- Fiskalizacija portal — Official Fiscalization 2.0 portal.
Industry analyses (vendor trackers — useful for cross-referencing):
- EDICOM · Croatia Fiscalization 2.0 — Industry tracker — 2026 B2B mandate.
