Jedna od najčešćih zamki pri implementaciji Odoo ERP-a u Hrvatskoj je pretpostavka da standardna l10n_hr lokalizacija pokriva sve zakonske obveze. Pokriva — ali ne sve. Ovaj članak detaljno objašnjava što dobivate iz kutije, što fali, i kako to riješiti u praksi.
Što Odoo 19 zapravo nudi za Hrvatsku
Odoo 19 dolazi s nekoliko HR modula:
- l10n_hr (community) — kontni plan, PDV postavke, osnovna konfiguracija za HR tvrtke
- l10n_hr_edi (community) — e-Račun integracija: UBL/CII format, mojeRačun i PEPPOL mreža
- l10n_hr_reports (enterprise) — PDV prijava (PDV-S), bilanca, RDG za Finu
- l10n_hr_kuna — legacy modul za prijelaz s HRK na EUR
l10n_hr_edi je modul za e-Račun (elektronički računi B2B/B2G), a ne za fiskalizaciju. Ovo je najčešći izvor zabune.
Fiskalizacija vs. e-Račun — ključna razlika
Mnogi klijenti dolaze s pitanjem "imate li fiskalizaciju?" misleći na oboje. Radi se o dva potpuno odvojena zakonska zahtjeva:
| Zahtjev | Zakon | Primjena | Odoo 19 standard |
|---|---|---|---|
| Fiskalizacija | Zakon o fiskalizaciji (NN 133/12) | Gotovinska plaćanja — B2C | ❌ Nije uključeno |
| e-Račun | Zakon o elektroničkom izdavanju računa (NN 94/18) | B2B/B2G e-Račun slanje | ✅ l10n_hr_edi |
| PDV prijava | Zakon o PDV-u | Periodična prijava Poreznoj upravi | ✅ l10n_hr_reports (enterprise) |
| JOPPD | Pravilnik o porezu na dohodak | Izvješće o primicima i porezima | ❌ Nije uključeno |
| Plaće (OCA payroll) | Zakon o radu + Zakon o doprinosima | Obračun HR plaća | ❌ Nije uključeno |
Kako funkcionira fiskalizacija — tehnički pregled
Fiskalizacija u Hrvatskoj obavezna je za sve gotovinske uplate od 2013. godine. Svaki gotovinski račun mora biti elektronički potpisan i poslan FINA-inom servisu koji vraća JIR (Jedinstveni Identifikator Računa).
Tok podataka
- Korisnik kreira račun u Odoo-u i odabire plaćanje gotovinom
- Sustav generira ZKI (Zaštitni Kod Izdavatelja) — MD5 hash od: OIB tvrtke + datum/sat + broj računa + oznaka poslovnog prostora + ukupni iznos
- ZKI se uključuje u XML zahtjev koji se šalje FINA-i, potpisan certifikatom tvrtke
- FINA vraća JIR (Jedinstveni Identifikator Računa) u roku ~500ms
- JIR se sprema na račun i tiska na ispisu zajedno s QR kodom
ZKI formula
ZKI_input = OIB + datum_sat + broj_racuna + poslovni_prostor + iznos_ukupno
ZKI = MD5(RSA_SHA1_signature(ZKI_input, privatni_kljuc_certifikata))
Što treba biti konfigurirano u Odoo-u
- FINA certifikat — P12 datoteka (test ili produkcija), sprema se na res.company
- Poslovni prostor / Naplata uređaj — svaki journal/kasa mora imati oznaku (npr.
PP1,NU1) - OIB operatera — svaki korisnik koji izdaje gotovinske račune mora imati OIB u hr.employee profilu
- Način plaćanja PDV — sustavom PDV-a (D-obračun) ili bez
Što Odoo model prima — potrebna proširenja
Za implementaciju fiskalizacije potrebno je proširiti standardne Odoo modele:
| Model | Što treba dodati |
|---|---|
account.move |
Polja za ZKI, JIR, status fiskalizacije (draft/error/done), datum i korisnik fiskalizacije, paragon broj, QR kod |
account.journal |
Veza na model poslovnog prostora (poslovni prostor + oznaka naplatnog uređaja) |
res.company |
FINA certifikat (PEM + private key), lozinka certifikata, production/test mode flag |
hr.employee |
OIB operatera (obavezan za XML potpis zahtjeva) |
Paragon računi i offline scenariji
Zakon predviđa izdavanje računa u slučaju nedostupnosti interneta — tzv. paragon računi. Ovo je poseban slučaj koji treba biti implementiran u modulu:
- Paragon broj se dodjeljuje ručno (nije automatski)
- Nakon ponovne dostupnosti, paragon računi se fiskaliziraju retroaktivno uz navođenje paragon broja
- FINA prihvaća retroaktivnu fiskalizaciju uz poseban flag u XML zahtjevu
Dostupni moduli i rješenja
Na dan pisanja ovog članka (travanj 2026.), za Odoo 19 postoje sljedeće opcije:
- OCA (Odoo Community Association) — nema gotovog modula za Odoo 19 fiskalizaciju
- Custom implementacija — jedina pouzdana opcija za Odoo 19 u produkciji; koristi Python biblioteku za FINA XML komunikaciju i X.509 potpis
E-Račun: što l10n_hr_edi zapravo pokriva
Za razliku od fiskalizacije, e-Račun modul je solidan. Odoo 19 l10n_hr_edi podržava:
- UBL 2.1 i CII format za e-Račune
- Slanje putem mojeRačun servisa (Fina) i PEPPOL mreže
- KPD kategorije (Klasifikacija Poslovnih Dokumenata) koje su obvezne za B2G fakture
- Automatski status praćenja (poslano, odbijeno, prihvaćeno)
- Konfiguracija na razini journala (e-Račun ili klasični PDF)
Jedino što fali u standardnoj implementaciji je integracija s mojeRačun Plus (Enterprise tier za veće volumene) i automatsko preuzimanje ulaznih e-Računa.
Zaključak i preporuka
Ako planirate implementirati Odoo 19 u Hrvatskoj, evo kratke kontrolne liste:
- ✅ PDV kontni plan — standardni
l10n_hr - ✅ e-Račun slanje (B2B/B2G) — standardni
l10n_hr_edi - ✅ PDV prijava i financijski izvještaji — enterprise
l10n_hr_reports - ⚠️ Fiskalizacija gotovine — potreban custom/partner modul
- ⚠️ JOPPD obrazac — potreban custom/partner modul
- ⚠️ HR obračun plaća (doprinosi, prirez, porez na dohodak) — potreban custom/partner modul
Implementacija fiskalizacije i platnog obračuna nije trivijalna — zahtijeva dobro poznavanje i Odoo arhitekture i hrvatskih zakonskih zahtjeva. Ako planirate implementaciju, savjetujem da to riješite s partnerom koji ima iskustvo s realnim HR projektima, ne samo s teorijskim poznavanjem zakona.
Trebate Odoo prilagođen za Hrvatsku?
Konzultacija o fiskalizaciji, e-Računu ili platnom obračunu — bez obaveze.
Zatražite demo Kontaktirajte nas