Prejsť na obsah
Accquix Register
Esc
↑↓navigácia↵otvoriť⌘Jnáhľad
Na tejto stránke

Ako to funguje

Zdroje, synchronizácia, ktorá ich zrkadlí, vyhľadávacia vrstva a API, ktoré ich sprístupňuje.

Accquix Register je jeden binárny súbor v Go so štyrmi režimami: migrate aplikuje schému, sync zrkadlí zdroje, serve odpovedá na API a openapi vypíše kontrakt API. sync a serve bežia nezávisle, takže náročný import nikdy neberie výkon požiadavkám API.

Zdroje

Zdroj Vydavateľ Čo poskytuje Ako sa číta
RPO, register právnických osôb Ministerstvo vnútra IČO, názov, právna forma, adresa, vznik a zánik, zápis v zdrojovom registri Mesačný snapshot (23 súborov, asi 940 MB) a denné súbory zmien z verejného úložiska
ds_dsrdp Finančná správa DIČ Denný ZIP export
ds_dphs Finančná správa IČ DPH, paragraf a dátumy registrácie Denný ZIP export
ds_iz_ran Finančná správa Index spoľahlivosti ZIP export, aktualizovaný nepravidelne
ds_dphz, ds_dphv Finančná správa Zoznam platiteľov DPH s dôvodmi na zrušenie registrácie a vyradenia z neho Denné ZIP exporty
ds_dpho Finančná správa Osobitná úprava uplatňovania DPH Denný ZIP export

Nikdy sa nesťahujú: zoznamy IBAN Finančnej správy (ich licencia zakazuje komerčné použitie) a VIES (jeho podmienky zakazujú zrkadlenie). Register účtovných závierok (RÚZ) nie je súčasťou v1.

Synchronizácia

Jeden prechod synchronizácie prejde všetky zdroje a urobí, čo je potrebné. Môžete ho spúšťať často: keď nie je nič nové, stojí pár požiadaviek a asi dve sekundy.

Prvotné naplnenie (prvý beh)

Počká, kým je najnovší snapshot RPO kompletný, paralelne stiahne jeho časti, aplikuje ich, aplikuje denné súbory po ňom, zostaví vyhľadávaciu vrstvu a načíta šesť zoznamov Finančnej správy. Kým to všetko nie je zverejnené, API odpovedá 503 bootstrapping.

Denne

Aplikuje ďalší denný súbor RPO, vždy po jednom dni. Chýbajúci deň sa nikdy nepreskočí: stav sa zmení na gap_wait, kým súbor nepríde alebo medzeru nevyplní novší snapshot. Každý zoznam sa sťahuje s ETag; nezmenený zoznam stojí jednu odpoveď 304.

Mesačné zosúladenie

Nový snapshot RPO sa zlúči s ochranou poradia, takže nikdy neprepíše novší denný súbor. Záznamy, ktoré už neobsahuje, sa označia ako chýbajúce, v rámci prahu.

Každý súbor sa aplikuje ako jedna databázová transakcia s kontrolným bodom. Proces možno kedykoľvek zastaviť; ďalší prechod zopakuje len nedokončený súbor a opätovné aplikovanie súboru nič nezapíše. Naraz beží iba jedna synchronizácia.

Validácia zastaví zlé dáta. Súbor, ktorý prekročí prah (príliš veľký denný súbor, zoznam, ktorý sa príliš zmenšil, chyba pri spracovaní, starší dátum zoznamu), sa neaplikuje. Predchádzajúce dáta sa naďalej poskytujú a zdroj prejde do stavu blocked s diagnostikou, kým sa naň nepozrie prevádzkovateľ. Pozrite Prevádzka.

Jeden prípad nie je chyba. Položka zoznamu bez akéhokoľvek identifikátora (bez DIČ, IČO aj IČ DPH) alebo položka zoznamu daňových subjektov s IČO, ale zatiaľ bez DIČ, nemôže patriť žiadnemu subjektu, ktorý register vie pomenovať. Vynechá sa a započíta (skippedItems v GET /v1/sources); viac ako 100 v jednom súbore zoznam zablokuje. Takéto položky sa nikdy nepriraďujú k firme podľa mena ani adresy.

Vyhľadávacia vrstva

Po každom súbore synchronizácia obnoví vyhľadávacie riadky subjektov, ktorých sa súbor dotkol: každý oficiálny názov každého aktívneho subjektu, jeho slová a slovník všetkých slov s ich počtami. Vyhľadávanie číta len tieto úzke tabuľky, preto zostáva rýchle aj na malej databáze. Pozrite Vyhľadávanie.

API

serve odpovedá na päť endpointov: vyhľadávanie, overenie, hromadné overenie, zdroje a možnosti. Každá odpoveď obsahuje uvedenie zdroja, ktoré vyžadujú licencie. Každá časť overenia uvádza, odkiaľ pochádza, aká je aktuálna a či zdroj naozaj nemá záznam, alebo to register jednoducho nevie. Pozrite Aktuálnosť a istota.