Dnevnik promjena

2026-07-13 — place id-ovi, ručni tečajevi, nadjačavanja dnevnica, smjer tečaja

Dodatna, unatrag kompatibilna polja ugovora te novi diskriminator tečaja.

  • Place id-ovi na putnim nalozima. Zahtjevi za kreiranje i ažuriranje primaju departureLocationPlaceId i destinationPlaceId (Google Places place_id), a odgovor putnog naloga ih vraća. Vratite pohranjene vrijednosti kod ažuriranja s potpunom zamjenom kako biste sačuvali identitet mjesta pri izmjeni teksta odredišta.
  • Odredišna država na putnim nalozima. Zahtjevi primaju neobavezni destinationCountryCode (ISO 3166-1 alpha-2). Kada se navede, pohranjuje se izravno i preskače se poslužiteljski geocoding rezervni mehanizam.
  • Ručni tečajevi. Zahtjevi za troškove i dnevnice primaju neobavezni manualExchangeRate, a zahtjevi putnog naloga manualAdvanceExchangeRate za predujam. Svaki se uvažava samo kada pružatelj tečaja ne objavi tečaj za referentni datum; slanje dok postoji službeni tečaj odbija se s EXCHANGE_RATE_UNAVAILABLE.
  • Nadjačavanja dnevnica. Zahtjev za dnevnicu prima overrideAmount i overrideReason, a modeli čitanja dnevnice ih vraćaju. Da biste zadržali postojeće nadjačavanje kod ažuriranja s potpunom zamjenom, vratite vrijednosti natrag; njihovo izostavljanje briše nadjačavanje i vraća na zakonsku isplatu.
  • Smjer tečaja. GET /api/v1/reference/exchange-rates sada nosi direction diskriminator: ForeignPerBase (HNB / ECB) znači dijeliti tečaj za pretvorbu u baznu valutu, BasePerForeign (CNB) znači množiti.

2026-07-08 — datum predujma, pružatelj tečaja za CZ/SK

Dvije dodatne, unatrag kompatibilne promjene.

  • Datum predujma na putnim nalozima. Zahtjevi za kreiranje i ažuriranje sada primaju neobavezni advancePaymentDate (yyyy-MM-dd), a odgovor putnog naloga ga vraća. Kada se izostavi pri kreiranju, poslužitelj koristi datum naloga. Određuje datum tečaja za predujam i, za češke tenante, referentni datum tečaja za dnevnice.
  • Pružatelj tečaja za CZ/SK. GET /api/v1/reference/exchange-rates sada dokumentira potpuni skup pružatelja: HNB za HR, ECB za SI i SK, CNB za CZ. Polje source može biti "CNB", a baseCurrency je referentna valuta pružatelja (EUR za HNB/ECB, CZK za CNB). Ponašanje je nepromijenjeno; dokumentacija sada odgovara izvršavanju.

2026-06-11 — brojevi obroka po vrsti, podrijetlo tečaja, kod za nedostupan tečaj

Tri dodatne promjene površine. Sve su unatrag kompatibilne: postojeći zahtjevi i dalje rade nepromijenjeno, a nova polja u odgovorima su dodaci koje možete zanemariti dok vam ne zatrebaju.

  • Brojevi obroka po vrsti na kreiranju/ažuriranju dnevnice. Zahtjevi za dnevnice sada primaju breakfastsProvided, lunchesProvided i dinnersProvided (cjelobrojni brojevi obroka po vrsti) te neobaveznu raspodjelu po danu mealsProvidedAllocation. Oni su kanonski model za upis: poslužitelj iz tih brojeva ponovno izračunava umanjenje. Postojeći v1 zbirni mealsProvided i dalje se prihvaća; kad polja po vrsti nedostaju, poslužitelj mapira zbroj kao i prije, pa stariji klijenti nisu zahvaćeni. Odgovori i dalje vraćaju izvedeni mealsProvided (ručak + večera, oblik HR Pravilnika) uz brojeve po vrsti, pa su putanje čitanja nepromijenjene.
  • Podrijetlo tečaja u odgovorima. Odgovori za troškove i dnevnice dobivaju exchangeRateSource, a odgovor putnog naloga dobiva advancePaymentExchangeRateSource, koji bilježi odakle dolazi primijenjeni tečaj: kod davatelja ("HNB", "ECB") za službeni tečaj, "MANUAL" za ručno uneseni tečaj, ili null za redak u istoj valuti (bez konverzije) ili stariji redak spremljen prije praćenja podrijetla. Samo za čitanje, bez promjene zahtjeva.
  • Novi kod greške EXCHANGE_RATE_UNAVAILABLE (HTTP 400). Javlja se kad davatelj tečaja tenanta ne objavljuje tečaj za valutu na traženi datum i ne postoji povijesni tečaj na koji bi se moglo osloniti. Greška je iz obitelji provjera sa standardnim errors tijelom po poljima, pa možete specifično razlučiti slučaj nedostupnog tečaja i zatražiti ručni tečaj. Dodano u katalog grešaka.

2026-05-23 — vremena dnevnica iz itinerara spremaju se kao pravi UTC (ispravak)

Vremena dnevnica spremljena putem POST /api/v1/travel-entries/{id}/per-diems/from-itinerary sada se spremaju kao pravi UTC trenuci. Ranije se polazak/dolazak svake dionice spremao s vrijednošću zidnog sata označenom kao UTC bez pomaka (lokalna dionica u 08:00 spremala se kao 08:00Z umjesto 07:00Z/06:00Z), pa su retci generirani iz itinerara odstupali od ručno dodanih za 1–2 sata i prikazivali se s kašnjenjem. Sheme zahtjeva i odgovora su nepromijenjene, no vrijednosti departureTime/arrivalTime koje ovaj endpoint vraća (i koje vraćaju kasnija čitanja istih redaka) sada odražavaju ispravljeni UTC trenutak. Kalkulator za pregled i dalje vraća vremena zidnog sata. Iznosi dnevnica nisu zahvaćeni.

2026-05-23 — kalkulator dnevnica + spremanje cijelog puta

Površina za izračun dnevnica je objedinjena i dobiva paritet spremanja cijelog puta s locco web aplikacijom.

  • Novo POST /api/v1/utilities/per-diems/calculate — kalkulator bez stanja. Pošaljite itinerar (jedna dionica = itinerar s dvije postaje) i dobijte natrag izračunate retke, uz primijenjenu preraspodjelu na razini itinerara. Bez konteksta naloga, ništa se ne sprema.
  • Novo POST /api/v1/travel-entries/{id}/per-diems/from-itinerary — ponovno izradite dnevnice putnog naloga iz itinerara u jednom pozivu. Poslužitelj ponovno pokreće vlastiti mehanizam nad postajama (poslanim se iznosima nikad ne vjeruje), primjenjuje obroke po dionici vezane ključem (countryCode, departureTime) (parovi koje vraća kalkulator), zatim atomarno zamjenjuje dnevnice naloga. Time se reproduciraju preraspodjela na razini itinerara i nadogradnje domaćih jedinica koje slanje redaka jedan po jedan ne može.
  • Uklonjeno POST /api/v1/travel-entries/{id}/per-diems/compute i POST /api/v1/per-diems/calculate-simple. Oba su obuhvaćena s utilities/per-diems/calculate — jedna dionica je samo itinerar s dvije postaje. Premjestite integracije na novi kalkulator.

2026-05-22 — Podrška za slovensko tržište

Inicijalna podrška za slovenske tenante. Ažurirajte klijent iz osvježenog OpenAPI snapshota na /hr/api-reference/:

  • Slovenske općine — novi GET /api/v1/reference/slovenian-municipalities vraća SURS popis općina za padajuće izbornike mjesta na slovenskim putnim nalozima. Može se pozvati s bilo kojeg tenanta.
  • Porezna rezidentnost zaposlenika — zapisi o zaposlenicima dobivaju polje residency (Resident / NonResident) za slovenske dnevnice i izvještavanje o porezu na plaće. Zadana vrijednost je Resident.

2026-04-28 — v1.0 izlazi

Prvo stabilno izdanje locco partner API-ja. Sve površine su povezane, tipizirane i pokrivene OpenAPI snapshotom na /api-reference/:

  • Putni unosi — potpuni CRUD i akcije toka odobrenja (predaja, odobrenje, odbijanje, otkazivanje, traženje izmjena), uz atomično kreiranje s ugniježđenim troškovima, dnevnicama, raspodjelama na mjesta troška i privitcima u jednom pozivu.
  • Privitci — direktan prijenos na putni unos kroz POST /api/v1/travel-entries/{id}/attachments. Multipart, do 5 datoteka po zahtjevu.
  • Webhooks — registracija pretplate s jednokratnim prikazom signing-secret-a, povijest isporuka po pretplati i endpoint za ponovni pokušaj neuspjelih ili iscrpljenih isporuka.
  • Isplate — popis unosa spremnih za isplatu, kreiranje serija, povijest, brisanje serije.
  • Zaposlenici, Odjeli, Vozila, Mjesta troška — CRUD i popisi, uz prilagođena polja na zaposlenicima.
  • Reference — hrvatske općine, HNB tečajne liste, tablica dnevnica, popisi dopuštenih država i valuta tvrtke.
  • Tvrtka — čitanje profila.

Vrijednosti enumeracija za Status, TravelType, PayoutMethod i ostale dokumentirane su u OpenAPI shemi kao enum: [...] popisi dopuštenih vrijednosti, pa se generirani klijenti vežu na kanonske nizove ("PendingApproval", "BankTransfer" itd.) umjesto na neprozirne vrijednosti.