tipimplementacija
zakon[
"ZAKON 26",
"ZAKON 27",
"ZAKON 2",
"ZAKON 42"
]
komponente{
"services/smjestaj.py": {
"opis": "SmjestajHub — Redis-backed model smjestaja",
"tip": "TypedDict SmjestajRecord",
"kategorije": [
"hotel",
"apartman",
"soba",
"kuca",
"kamp",
"hostel",
"nauticki"
],
"bp_stope": "0.70-1.50 EUR/noc/gostu (HTZ sifrarnik)",
"redis_key": "genesis:smjestaj:{smjestaj_id}",
"db": 4
},
"services/evisitor.py": {
"opis": "eVisitor HTZ API integracija",
"sandbox": "https://sandbox.evisito
test_rezultati{
"smjestaj_kreiranje": "OK — fcba74812870f135 Apartman Test Genesis Split",
"bp_izracun": "OK — 4 noci x 1.00 EUR = 4.00 EUR",
"qr_payload": "OK — https://genesis.limit-connect.com/checkin/{id}",
"evisitor_sandbox": "OK — SANDBOX-d87056a93834ca52 HORVAT MARKO",
"fiskalizacija_sandbox": "OK — JIR generiran",
"checkout": "OK — SANDBOX odjava potvrđena"
}
produkcija_checklist{
"evisitor_credentials": "PENDING — iznajmljivac mora upisati evisitor_username + password + objekt_id",
"fina_cert": "PENDING — certifikat po OIB-u iznajmljivaca",
"waha_url": "PENDING — WAHA_URL env var za WhatsApp",
"env_evisitor_sandbox": "postaviti EVISITOR_SANDBOX=0 za produkciju"
}
arhitekturaZAKON 42: Dolazak IS Registracija — jedan QR sken, automatski eVisitor + kaucija + JIR
faze{
"faza1_backend": "DONE — kaucija + fiskalizacija + aircash + smjestaj + evisitor + checkin API",
"faza2_onboarding_ui": "PENDING — forma za eVisitor kredencijale + FINA cert upload iznajmljivaca",
"faza3_gost_pwa": "PENDING — MRZ scanner + GenesisLogin za goste",
"faza4_aircash_merchant": "PENDING — inicijacija placanja (sad samo primitak webhooks)",
"faza5_gdpr": "PENDING — brisanje podataka gosta po zahtjevu"
}