Zoznam zmien

2026-07-08 — dátum preddavku, poskytovateľ kurzu pre CZ/SK

Dve aditívne, spätne kompatibilné zmeny.

  • Dátum preddavku na cestovných príkazoch. Požiadavky na vytvorenie a aktualizáciu teraz prijímajú nepovinný advancePaymentDate (yyyy-MM-dd) a odpoveď cestovného príkazu ho vracia. Ak je pri vytvorení vynechaný, server použije dátum záznamu. Určuje dátum kurzu pre preddavok a pri českých tenantoch referenčný dátum kurzu pre stravné.
  • Poskytovateľ kurzu pre CZ/SK. GET /api/v1/reference/exchange-rates teraz dokumentuje úplnú sadu poskytovateľov: HNB pre HR, ECB pre SI a SK, CNB pre CZ. Pole source môže byť "CNB" a baseCurrency je natívna mena poskytovateľa (EUR pre HNB/ECB, CZK pre CNB). Správanie sa nemení; dokumentácia teraz zodpovedá behu.

2026-06-11 — počty jedál, pôvod menového kurzu, kód pre nedostupný výmenný kurz

Tri aditívne zmeny rozhrania. Všetky sú spätne kompatibilné: existujúce payloady naďalej fungujú bez zmeny a nové polia v odpovediach sú doplnky, ktoré môžete ignorovať, kým ich nebudete potrebovať.

  • Počty jednotlivých jedál pri vytváraní/aktualizácii diet. Požiadavky na diéty teraz prijímajú breakfastsProvided, lunchesProvided a dinnersProvided (celočíselné počty jednotlivých jedál) plus voliteľné denné mealsProvidedAllocation. Predstavujú kánonický model zápisu: server z týchto počtov prepočítava zníženie. Existujúci v1 agregát mealsProvided je stále akceptovaný; keď polia pre jednotlivé jedlá chýbajú, server mapuje agregát ako predtým, takže starší klienti nie sú ovplyvnení. Odpovede naďalej vracajú odvodené mealsProvided (obed + večera, formát podľa chorvátskeho Pravilnika) spolu s počtami jednotlivých jedál, takže cesty na čítanie zostávajú nezmenené.
  • Pôvod menového kurzu (FX) v odpovediach. Odpovede pre výdavky a diéty získavajú exchangeRateSource a odpoveď pre cestovný záznam získava advancePaymentExchangeRateSource, ktoré zaznamenávajú, odkiaľ pochádza použitý kurz: kód poskytovateľa ("HNB", "ECB") pre oficiálny kurz, "MANUAL" pre kurz zadaný používateľom, alebo null pre riadok v rovnakej mene (bez konverzie) či starší riadok uložený pred sledovaním pôvodu. Iba na čítanie; žiadna zmena v požiadavke.
  • Nový chybový kód EXCHANGE_RATE_UNAVAILABLE (HTTP 400). Spustí sa, keď poskytovateľ menových kurzov pre tenanta nezverejní žiadny kurz pre danú menu v požadovanom dátume a neexistuje žiadny historický kurz, na ktorý by sa dalo spoľahnúť. Ide o zlyhanie z rodiny validácií so štandardným telom errors kľúčovaným podľa polí, takže môžete špecificky rozlíšiť prípad nedostupného kurzu a vyzvať na manuálne zadanie kurzu. Pridané do katalógu chýb.

2026-05-23 — časy itinerára pre diéty ukladané ako skutočné UTC (oprava)

Časy diét ukladané cez POST /api/v1/travel-entries/{id}/per-diems/from-itinerary sa teraz ukladajú ako skutočné UTC okamihy. Predtým sa odchod/príchod každej cesty zapisoval pomocou hodnoty lokálneho času označenej ako UTC bez posunu (lokálna cesta o 08:00 bola uložená ako 08:00Z namiesto 07:00Z/06:00Z), takže riadky vygenerované z itinerára sa nezhodovali s manuálne pridanými riadkami o 1–2 hodiny a zobrazovali sa neskoro. Schémy požiadaviek a odpovedí zostávajú nezmenené, ale hodnoty departureTime/arrivalTime, ktoré tento endpoint vracia (a ktoré vracajú aj neskoršie čítania tých istých riadkov), teraz odrážajú opravený UTC okamih. Náhľad bezstavovej kalkulačky stále vracia lokálne časy. Sumy diét nie sú ovplyvnené.

2026-05-23 — kalkulačka diét + uloženie celej cesty

Rozhranie na výpočet diét je konsolidované a získava paritu ukladania celej cesty s webovou aplikáciou locco.

  • Nové POST /api/v1/utilities/per-diems/calculate — bezstavová kalkulačka. Odošlite itinerár (jedna cesta = itinerár s 2 zastávkami) a získajte späť vypočítané riadky s aplikovaným prerozdelením na úrovni itinerára. Žiadny kontext záznamu, nič sa neukladá.
  • Nové POST /api/v1/travel-entries/{id}/per-diems/from-itinerary — prebudovanie diét cestovného záznamu z itinerára v jednom volaní. Server znova spustí svoj vlastný engine nad zastávkami (odoslaným sumám sa nikdy nedôveruje), aplikuje jedlá pre jednotlivé cesty kľúčované podľa (countryCode, departureTime) (dvojice, ktoré vracia kalkulačka), a potom atomicky nahradí diéty záznamu. Toto reprodukuje prerozdelenie na úrovni itinerára a upgrady domácich jednotiek, čo odosielanie riadkov po jednom nedokáže.
  • Odstránené POST /api/v1/travel-entries/{id}/per-diems/compute a POST /api/v1/per-diems/calculate-simple. Obe sú nahradené pomocou utilities/per-diems/calculate — jedna cesta je len itinerár s 2 zastávkami. Presuňte integrácie na novú kalkulačku.

2026-05-22 — podpora slovinského trhu

Počiatočná podpora pre slovinských tenantov. Aktualizujte svojho klienta z obnoveného OpenAPI snapshotu na /api-reference/:

  • Slovinské obce — nové GET /api/v1/reference/slovenian-municipalities vracia zoznam obcí SURS pre rozbaľovacie zoznamy miest v slovinských cestovných formulároch. Volateľné z akéhokoľvek tenanta.
  • Daňová rezidencia zamestnanca — záznamy zamestnancov získavajú pole residency (Resident / NonResident) pre vykazovanie slovinských diét a daní zo mzdy. Predvolená hodnota je Resident.

2026-04-28 — spustenie v1.0

Prvé stabilné vydanie locco partner API. Každé rozhranie je prepojené, typované a pokryté OpenAPI snapshotom na /api-reference/:

  • Cestovné záznamy — plný CRUD plus prechody workflowu (odoslať, schváliť, zamietnuť, zrušiť, vyžiadať zmeny), s atomickými vytváraniami, ktoré v jednom volaní prijímajú vnorené výdavky, diéty, alokácie na nákladové strediská a prílohy.
  • Prílohy — priame nahrávanie do cestovného záznamu cez POST /api/v1/travel-entries/{id}/attachments. Multipart, až 5 súborov na požiadavku.
  • Webhooks — registrácia odberu s jednorazovým zobrazením signing-secret, história doručovania pre každý odber a endpoint na opakovanie pre zlyhané alebo vyčerpané doručenia.
  • Výplaty — zoznam záznamov pripravených na výplatu, vytváranie dávok, história zoznamov, vymazanie dávky.
  • Zamestnanci, Oddelenia, Vozidlá, Nákladové strediská — CRUD + zoznam, s hodnotami vlastných polí pri zamestnancoch.
  • Referencie — chorvátske obce, menové kurzy HNB, tabuľka sadzieb diét, zoznamy povolených krajín a povolených mien spoločnosti.
  • Spoločnosť — čítanie profilu.

Hodnoty enum pre Status, TravelType, PayoutMethod a ostatné sú zdokumentované v OpenAPI schéme ako zoznamy povolených hodnôt enum: [...], takže vygenerovaní klienti sa viažu na kánonické reťazce ("PendingApproval", "BankTransfer", atď.) namiesto nepriehľadných hodnôt.