Compliance log

Verejný register zmien · Aktualizované 2026-08-14

Náš záväzok

Každá legislatívna zmena, ktorá vplýva na účtovníctvo SK SZČO a s.r.o., sa premietne do Bezúčto do 30 dní od oficiálnej publikácie. Tento log dokumentuje, kedy sme čo nasadili — pre účtovnícky audit, pre vašich klientov, pre KDP SR.

Filtrovanie podľa zákona: Klikni na tag pri každom zázname (ZDPH, ZÚčto, ZDP, ZP, GDPR) a porovnaj s vašou agendou.
Vyhľadávanie AI asistenta zúžené na kanonický korpus — a oprava nepresného opisu indexu
Vektorový index pre anti-halucinačný RAG mal štyri oddiely: verejnú SK legislatívu, kurátorované FAQ a dve sady interných technických poznámok z vývoja. Zákaznícke vyhľadávanie sa dotazovalo všetkých štyroch a interné poznámky držala mimo odpovede len nižšia váha pri zoraďovaní. Meranie ukázalo, že sa do odpovedí reálne nedostávali (0 zásahov z 24 testovaných otázok), ale nižšia váha je tlmenie, nie hranica — poradie zníži, zaradenie nezakáže.
Čo sme zmenili: zákaznícka AI cesta sa odteraz dotazuje výlučne kanonického korpusu (legislatíva + FAQ). Vývojárska sada je dostupná len na výslovné vyžiadanie vo vývoji a do odpovedí pre zákazníkov nevstupuje. Hranicu drží automatický test, ktorý zlyhá, ak sa interná sada vráti do zákazníckej cesty.
Oprava opisu: stránka o sprostredkovateľoch uvádzala, že index obsahuje interné poznámky „bez PII“. To nebolo presné — poznámky z riešenia minulých prevádzkových incidentov môžu obsahovať ojedinelé kontaktné údaje. Opis sme uviedli na pravú mieru — na tejto stránke, v zásadách ochrany údajov, v zmluve o spracúvaní aj v prehľade sprostredkovateľov (verzia 1.9). Účtovné dáta klientov, doklady, faktúry ani sumy sa do indexu neukladali a neukladajú.
Posúdenie: nešlo o sprístupnenie údajov tretej osobe — údaje zostali u sprostredkovateľov viazaných zmluvou o spracúvaní a štandardnými zmluvnými doložkami, a meranie nepreukázalo ich zaradenie do žiadnej odpovede. Vyhodnotili sme, že nejde o porušenie ochrany osobných údajov s povinnosťou oznámenia podľa čl. 33; posúdenie je zaznamenané v internej evidencii podľa čl. 33 ods. 5. Nedostatok sa týkal presnosti informovania podľa čl. 13 a 14 a rozsahu spracúvania podľa čl. 28 ods. 3 písm. a).
čl. 5 ods. 1 písm. c) GDPR · čl. 13 a 14 GDPR · čl. 28 ods. 3 písm. a) GDPR · čl. 33 ods. 5 GDPR
Variabilný symbol pri platbe dane — oprava na desaťmiestny tvar podľa vyhlášky č. 378/2011 Z. z.
Daňový kalendár skladal variabilný symbol nesprávne. Za symbol lepil DIČ (1100MMRRRRDIČ pri DPH, 1700RRRRDIČ pri daňovom priznaní), ročnému priznaniu chýbal povinný kód obdobia 99 a štvrťročný platiteľ DPH dostal mesačný tvar s mesiacom lehoty namiesto kódu štvrťroka. Taká platba sa nemusí spárovať na správne obdobie a nedoplatok medzitým úročí § 156 daňového poriadku.
Skutočný stav podľa prílohy č. 1 vyhlášky MF SR č. 378/2011 Z. z. (vydanej podľa § 55 ods. 4 zák. č. 563/2009 Z. z., účinná od 1. 1. 2012, odvtedy nenovelizovaná): variabilný symbol je vždy desaťmiestny — prvé štyri číslice označujú druh platby (1100 preddavok a DPH na úhradu, 1700 daň na úhradu okrem DPH, 8100 iná platba), ďalších šesť číslic obdobie (MMRRRR mesiac, QQRRRR štvrťrok s kódmi 4144, PPRRRR polrok 21/22, 99RRRR ročné zdaňovacie obdobie, 000000 bez väzby na obdobie). Rok je štvorciferný a za symbol sa nič nedopisuje — daňový subjekt identifikuje číslo účtu podľa § 1 ods. 3 vyhlášky (šesťciferné predčíslie druhu dane + desaťciferné základné číslo účtu + kód Štátnej pokladnice 8180), nie variabilný symbol.
Formát drží jeden modul (lib/vs-dane.js), z ktorého čerpá daňový kalendár aj generovanie platobných údajov; guard test odmieta šesť- aj osemmiestny tvar s dvojciferným rokom, symbol s dolepeným DIČ aj kódy obdobia 23 a 24 (štvrťroky sú 4144, hodnoty 21/22 patria polrokom). Opravená bola aj atribúcia: pôvodný popis sa odvolával na „FS metodický pokyn", ktorý sa nepodarilo doložiť, záväzným zdrojom je vyhláška. Rovnaká chyba bola opravená v článku o dodatočnom DPH priznaní, ktorý uvádzal osemmiestny tvar 1100MMRR s dvojciferným rokom.
príloha č. 1 vyhl. MF SR č. 378/2011 · § 55 ods. 4 zák. 563/2009 · § 156 zák. 563/2009
AI Act čl. 50 — transparentnosť AI funkcií pripravená pred účinnosťou 2. 8. 2026
Nariadenie (EÚ) 2024/1689 (AI Act) uplatňuje transparentné povinnosti podľa čl. 50 od 2. 8. 2026. Interné posúdenie (18. 7. 2026): Bezúčto používa AI systém tretej strany (Anthropic Claude) ako nasadzujúci subjekt, AI funkcie nespadajú do vysokorizikových kategórií prílohy III (účtovný a fakturačný softvér v zozname nie je; mzdové výpočty sú deterministické, nie AI rozhodovanie). Relevantná povinnosť = čl. 50 ods. 1: používateľ musí vedieť, že interaguje s AI. Inventúra všetkých AI kontaktných bodov (chat asistent, daňové odporúčania, čítanie faktúr a bločkov, kategorizácia bankových pohybov, cashflow analýza, klasifikátor výziev FS, faktúry prijaté e-mailom) potvrdila viditeľné označenie AI; doplnili sme jednotný nezáväzný disclaimer do cashflow analýzy, štítok „údaje prečítala AI" k faktúram prijatým e-mailom a výslovné AI uvítanie v asistentovi pre účtovníkov. AI výstupy pri blogu prechádzajú ľudskou redakčnou kontrolou (výnimka čl. 50 ods. 4).
čl. 50 ods. 1 nariadenia (EÚ) 2024/1689 · čl. 113 — účinnosť 2. 8. 2026
Sub-processors register v1.8 — oprava označenia DPA (clickwrap, nie countersigned)
Interný audit právneho povrchu zistil, že register sub-processorov a stránka pre účtovníkov nesprávne označovali DPA piatich poskytovateľov (Stripe, Resend, Cloudflare, Sentry, Railway) ako „podpísané / countersigned dokument". Skutočný stav: všetky DPA sú uzavreté clickwrap akceptáciou obchodných podmienok poskytovateľa, ktorých je DPA neoddeliteľnou súčasťou — čo je plne platný „iný právny akt" podľa čl. 28 ods. 3 GDPR (podpis sa nevyžaduje). Opravené v /legal/sub-processors, na stránke pre účtovníkov aj v internom zázname o spracovateľských činnostiach (čl. 30). Zároveň bola do Obchodných podmienok doplnená výslovná inkorporácia Spracovateľskej zmluvy (/legal/dpa) odkazom. Žiadna zmena sub-processorov, rozsahu údajov ani právneho stavu spracúvania — ide o opravu popisu na pravdivý stav.
čl. 28 ods. 3 GDPR — zmluva alebo iný právny akt · čl. 5 ods. 2 — accountability
KEP signing (eIDAS QES) — termín 30. 6. 2026 nesplnený, záväzok trvá
Pôvodný záväzok z 9. 5. 2026 (integrácia kvalifikovaného elektronického podpisu do 30. 6. 2026) sa nepodarilo dodržať — integrácia QES API certifikačnej autority zatiaľ nie je nasadená. Transparentne to uvádzame namiesto tichého odsunutia. Podávanie nie je blokované: Bezúčto vygeneruje XML/PDF (DPPO, DPFO, DPH, KV, SV) a podpis KEP-om prebehne na portáli eDane — tento postup je plne funkčný a pokrýva všetky podania. Nový záväzný termín zverejníme v tomto logu po výbere poskytovateľa QES API (Disig / SDS / Slovenská pošta).
eIDAS čl. 25-34 · § 4 zák. 272/2016
Sub-processors register v1.2 + interný RPA dokument (čl. 30 GDPR)
Aktualizácia balíka transparentnosti. Verejný zoznam sub-processors aktualizovaný na verziu 1.2:
  • Pridaný Google LLC (Identity SSO) — predtým chýbajúci sub-processor. (Oprava 15. 8. 2026: tento riadok pôvodne uvádzal aj skener prichádzajúcej pošty v schránke klienta. Taký skener nikdy neexistoval a nikdy nebol nasadený — prihlásenie cez Google žiada výhradne rozsahy openid email profile. Záznam ponechávame aj s opravou, nemažeme ho.)
  • Pridaná sekcia „Platnosť DPA bez podpisu" — vysvetlenie clickwrap akceptácie podľa čl. 28 ods. 3 GDPR (Anthropic, Pinecone, Google) — signature NIE je vyžadovaný, postačuje „contract or other legal act".
  • Konsolidácia tabuľky DPH samozdanenia (USA SaaS dodávatelia spoločný riadok § 16 ZDPH).
  • Sync medzi sub-processors.html, dpa.html, privacy.html — predtým len sub-processors.html mal úplný zoznam 11 procesorov, ostatné zaostávali (audit risk pri ÚOOÚ kontrole).
Nový interný dokument: docs/rpa-cl-30-2026.md — Record of Processing Activities (čl. 30 GDPR) pokrývajúci 8 spracovateľských činností (účet, účtovníctvo, AI asistent, ePN, banka, push notifikácie, marketing, audit log). Predkladá sa ÚOOÚ na vyžiadanie (čl. 30 ods. 4 GDPR). Automatizovaná prevencia drift: tests/smoke/sub-processors-drift.test.js (46 testov) overuje konzistenciu medzi 4 dokumentmi pri každom deploy.
čl. 28 GDPR — sub-processors · čl. 28 ods. 3 — clickwrap valid · čl. 30 GDPR — RPA · čl. 5 ods. 2 — accountability
KEP signing (eIDAS QES) — záväzok do 30. júna 2026
Verejný roadmap commit: Bezúčto bude do 30. júna 2026 integrovať kvalifikovaný elektronický podpis (KEP) v zmysle Nariadenia eIDAS (EÚ) 910/2014 + zákon 272/2016 Z.z. o dôveryhodných službách. Implementácia cez QES API akreditovanej certifikačnej autority (Disig / SDS / Slovenská pošta) — užívateľ podpíše DPPO/DPFO/DPH XML priamo z Bezúčto bez prechodu na eDane portál. Do 30.6.2026 workaround: vygeneruj XML/PDF v Bezúčto, podpíš v eDane portále manuálne.
eIDAS čl. 25-34 · § 4 zák. 272/2016 · § 39 ods. 9 ZSpr
Saldokonto modul — § 25a ZDPH oprava DPH + § 20 ZDP opravná položka
Nový modul Saldokonto (POHODA/KROS parita) so správou vekovej štruktúry otvorených pohľadávok aj záväzkov. Rozdelenie do pásiem 121-150 / 151-180 — pohľadávky > 150 dní oprávnené na opravu výstupnej DPH (§ 25a ZDPH). Per-faktúra dphRecovery = dph_amt × (otvorena/total) — ratio-based pre čiastočne uhradené. Per-partner opravnaPolozka 20/50/100 % po 360/720/1080 dní (§ 20 ods. 14 ZDP). Pre záväzky tiež § 17 ods. 27 ZDP base-tax adjustment. Opravný daňový doklad jedným klikom (§ 71 ZDPH) priamo zo zoznamu oprávnených pohľadávok saldokonta — POHODA-superparita.
§ 25a zák. 222/2004 ZDPH · § 20 ods. 14 zák. 595/2003 ZDP · § 17 ods. 27 ZDP · § 71 ZDPH
§ 7a ZDPH proaktívna registračná awareness pre neplatiteľa
§ 7a ZDPH bez prahu — neplatiteľ DPH, ktorý prijme službu od zahr. dodávateľa (Stripe, Google, AWS, Anthropic, Microsoft 365…), je POVINNÝ registrovať sa pred prvou službou (prvé euro). Bez registrácie = pokuta od FS SR + dodaňovacia povinnosť. Bezúčto pridáva proaktívnu detekciu — dashboard tip RED PAR7A_REGISTRACIA_POVINNA ak !dphPlatitel && !par7aRegistered && foreignCount > 0. Detekcia cez prijate.ic_dph_dod NOT LIKE 'SK%' alebo dodavatel_krajina NOT IN ('','SK'). Endpoint GET /api/par7a/awareness returns YTD foreign count + sum.
§ 7a ods. 1 zák. 222/2004 ZDPH · § 69 ods. 3 ZDPH · § 78 ZDPH
KÚV doklad totožnosti — encryption-at-rest (AML § 13)
Stĺpec kuv_records.doklad_cislo (číslo OP/pasu) ukladal plaintext. AML zák. 297/2008 § 13 + GDPR čl. 32 vyžadujú šifrovanie údajov totožnosti. Fix: nový helper encryptIdDoc() v lib/pii.js (AES-256-GCM cez BANK_ENCRYPTION_KEY) + ALTER stĺpca na VARCHAR(255) + idempotentný backfill plaintext rows. Audit log + Sentry už doklad_cislo redactujú (P1 fix 2026-05-07).
GDPR čl. 32 ods. 1 písm. a) · § 13 zák. 297/2008 · § 39 zák. 18/2018
Google SSO bezpečnostné posilnenie — id_token signature verify + auto-link block
Pred-fix: _decodeIdToken iba base64-decodol payload bez verifikácie signature voči Google JWKs → forge id_token attack. Plus auto-link Google sub na existujúci email password account = klasický OAuth account takeover. Fix: google-auth-library OAuth2Client.verifyIdToken({ audience }) (overí signature + iss + aud + exp). Auto-link na password account zablokované — redirect na error password_account_exists (user musí prihlásiť heslom + manuálne pripojiť Google v UI).
GDPR čl. 32 ods. 1 písm. b) · OWASP A07 Identification and Authentication Failures
POST /api/prijate transakcia — atomicity faktúra + zápisy
Predtým: INSERT prijate + insertZapis mimo transakcie. Pri 500 medzi krokmi ostávala prijatá faktúra v DB bez účtovných zápisov 5xx/343/321 → split-brain stav (záväzok zaúčtovaný v prijate, žiadny účtovný zápis). Fix: BEGIN/COMMIT wrap celého handlera + insertZapis(txClient, ...) deleguje TX. Pri chybe ROLLBACK + 500 → user vidí "Chyba" a neexistuje žiadna sirota.
§ 8 zák. 431/2002 (zákon o účtovníctve) — bilančná kontinuita
Saldokont — prehľad vekovej štruktúry pohľadávok per odberateľ × pásmo
Nová sekcia "Saldokont" v sidebari pre s.r.o. (sro-only). Endpoint GET /api/saldokont agreguje nezaplatené faktúry per odberateľ s pásmami 0-30 / 31-60 / 61-90 / 91-120 / 121-180 / 180+ dní. Faktúry > 150 dní zvýraznené ako kandidáti na opravu výstupnej DPH (§ 25a ZDPH). +16 unit testov (tests/lib/saldokont.test.js).
§ 25a zák. 222/2004 (oprava základu DPH)
IBAN encryption-at-rest — schema width fix + backfill 14 plaintext rows
Critical bug discovered + fixed. Stĺpec companies.iban + zamestnanci.iban mali pôvodný typ VARCHAR(50), ale po pridaní encryptIban() (commit 10277f0, 2026-04-29) AES-256-GCM ciphertext (iv:tag:enc) má ~114 chars → INSERT/UPDATE silently zlyhával s 500 ("value too long"). Žiadny IBAN sa neukladal od 2026-04-29 do 2026-05-07. Fix: schema migration VARCHAR(50) → VARCHAR(255) + idempotentný backfill 14 plaintext IBAN rows na encrypted ciphertext. Audit: neexistuje záznam o exfiltrácii DB v plaintext window; ÚOOÚ čl. 33 nereportable (nie incident podľa GDPR čl. 33 ods. 1, ale non-compliance s čl. 32). Po backfillte 14/14 rows encrypted (overené DB query iban LIKE '%:%:%').
GDPR čl. 32 ods. 1 písm. a) · § 39 ods. 1 písm. a) zák. 18/2018
KV DPH § 78a — C1 dobropisy + storno mix-rate per-sadzba breakdown
Pri faktúre s viac sadzbami DPH (5 % + 19 % + 23 %) sa pri storne alebo dobropise generujú KV DPH XML A1/C1 row per sadzba (§ 78a ZDPH). Predtým sa rozkladalo iba pre A1 (vydané faktúry); C1 dobropisy a storno reverz mali len jeden top-level row → § 78a violation pri krížovej kontrole DPH. Doplnené aj storno_datum schema migration: storno cez DELETE /:id v rovnakom mesiaci ako pôvodná → vylúčené z A1; v inom mesiaci → pôvodná v KV DPH ostáva, dobropis ide do C1 v storno mesiaci (štandardná SK účto prax).
§ 74 ods. 1 písm. g), h) zák. 222/2004 · § 78a zák. 222/2004
Admin audit anomálie — real-time monitoring drift_high + view_as_proxy_open
Admin dashboard nový tab "Audit anomálie" zobrazuje real-time count halierového driftu > 1 € (suspect FE bug) a počet view-as proxy access (účtovník otvoril klientove dáta — KDP § 27 ods. 2). Endpoint /api/admin-audit/anomalies?days=N agreguje per-day breakdown, /admin-audit/recent vracia posledných 50 záznamov s user_email join. Komplementárne k health beacon dennému emailu (8:30 BA) — admin teraz nemusí čakať na cron.
§ 35 zák. 431/2002 · KDP § 27 ods. 2
Halierový preflight DPH + audit trail (§ 35 ZÚčto 10y retention)
Halierový preflight pri faktúrach s mix DPH: BE recompute autoritatívny (1 cent tolerance integer-cents math), per-rate breakdown drift detection. Pri drift > 1 € sa zapisuje do audit_log action=drift_high entity=faktura (10-ročná retencia podľa § 35 zák. 431/2002). Sentry breadcrumb pri drift > 0.10 €. View-as proxy access (účtovník otvoril klientove dáta) tiež v audit_log pre KDP § 27 ods. 2 dôverné info compliance. Health beacon 8:30 BA daily reportuje 24h count drift_high + view_as_proxy_open anomálií.
§ 35 zák. 431/2002 · KDP § 27 ods. 2
§ 50aa darovanie 2 % rodičom 2026 — single source of truth + blog overený
§ 50aa zák. 595/2003, účinný od 1.1.2025: 2 % zaplatenej dane rodičovi-dôchodcovi (k 31.12. poberateľ starobného/invalidného/výsluhového dôchodku). Prvýkrát sa uplatní za zdaňovacie obdobie 2025, teda pri vyhláseniach podávaných na jar 2026. Spolu s podielom pre organizáciu podľa § 50 ods. 1 písm. a) je to max 6 %, prípadne 7 %, ak daňovník odpracoval aspoň 40 hodín dobrovoľníckej činnosti — tú tri percentá nesie § 50, nie § 50aa. Min 3 € per rodič (§ 50aa ods. 3).
Oprava 2.8.2026: tento záznam pôvodne uvádzal „NOVÉ od 1.1.2026". § 50aa je účinný od 1.1.2025; od 1.1.2026 sa menili len jeho odseky 4 – 8 a 10 – 12. Overené voči slov-lex, konsolidované znenie ZZ_2003_595_20260101.
Konfiguračná konštanta darovanie2pct v config/legislativa/2026.js + 2027.js (single source truth pre kalkulačku, blog, AI Tax Planner). Blog post overený voči FS SR FAQ + 9 SK zdrojom. Termíny: 31.3. cez DP, 30.4. cez Vyhlásenie V2Pv25 v1.5 + V2Pv25_P.
§ 50aa zák. 595/2003 · § 50 zák. 595/2003
Personalizovaný daňový kalendár — § 78 ZDPH, § 32/41 ZDP, § 143 ZSP, § 17 ZZP
Spočíta upcoming termíny pre platiteľa aj neplatiteľa DPH (mesačný/štvrťročný), DP FO/PO + 30.6. odklad, SP/ZP odvody SZČO, mzdové odvody zamestnávateľa, asignácia 2 % DPFO, daň z nehnuteľnosti. Pre § 7a ZDPH neplatiteľa s zahraničnou službou pridáva urgent registračnú výzvu + mesačné DPH priznanie. Šablóny variabilných symbolov podľa prílohy č. 1 vyhlášky MF SR č. 378/2011 Z. z.: desaťmiestny tvar [druh platby 4 číslice][obdobie 6 číslic] — DPH mesačne 1100 + MMRRRR, DPH štvrťročne 1100 + QQRRRR (kódy štvrťrokov 4144), ročné DP 1700 + 99RRRR. Za symbol sa nedopisuje DIČ — daňovníka identifikuje číslo účtu (OÚD). Konštantný symbol 1144 pri daniach, 3558 pri odvodoch. Popis opravený 2026-07-31: pôvodne tu bol tvar s dolepeným DIČ a odvolávka na „FS metodický pokyn", ktorú sa nepodarilo doložiť — detail v zázname z 31. 7. 2026.
§ 78 zák. 222/2004 · § 7a zák. 222/2004 · § 32 zák. 595/2003 · § 143 zák. 461/2003 · príloha č. 1 vyhl. MF SR č. 378/2011
ePN auto-pull (Sociálna poisťovňa B2B API) — T1–T3 ready, deadline 1.6.2026
Od 1.6.2026 lekár nevydáva papierové PN potvrdenie. Bezúčto integruje SP B2B API pre automatický pull ePN záznamov + výpočet náhrady príjmu podľa § 7-8 z. 462/2003 (1.-3. deň 25 %, 4.-14. deň 55 % DVZ; pri PN vzniknutej do 31.12.2025 po starom do 10. dňa). Bezpečnostné prvky: AES-256-GCM šifrovanie tokenu, IČZ cross-tenant verify (cudzí IČZ → audit log + reject), § 7a per-zamestnanec opt-out (čl. 21 GDPR), retention purge resolved záznamov >4 roky (čl. 5/1e GDPR). Legal basis: čl. 9(2)(b) GDPR + § 78 zák. 18/2018.
§ 7-8 zák. 462/2003 · vyhl. 575/2001 · GDPR čl. 9(2)(b)
Faktúra storno-only UX (§ 71 ZDPH, § 8 ZÚčto, § 25 ZDPH dobropis)
Faktúry sa nedajú fyzicky vymazať — DELETE endpoint vytvorí storno doklad podľa § 25 ZDPH (opravný doklad) so zápismi v opačnom smere. Educational dialog vysvetľuje § 71 ZDPH (vystavená faktúra zostáva platná) + § 8 ZÚčto (účtovný záznam nemožno odstrániť) a navrhuje vystavenie dobropisu pri parciálnej oprave. ABRA Flexi/KROS/MRP/Pohoda majú rovnaký pattern — industry standard.
§ 71 zák. 222/2004 · § 25 zák. 222/2004 · § 8 zák. 431/2002
2 % asignácia DPFO + § 50aa podiel dane pre rodiča
Modul pre poukázanie 2 % zaplatenej dane podľa § 50 ZDP. Doplnený § 50aa ZDP: daňovník, ktorý je fyzickou osobou, môže poukázať 2 % zaplatenej dane každému ním určenému rodičovi, ktorý je k 31. decembru poberateľom starobného, invalidného alebo výsluhového dôchodku — teda pri oboch rodičoch spolu 4 %. Spolu s asignáciou podľa § 50 tak môže ísť najviac 6 %, resp. 7 % pri dobrovoľníckej činnosti aspoň 40 hodín. Minimálna suma na jedného rodiča sú 3 eurá. Ustanovenie je účinné od 1. 1. 2025 a prvýkrát sa uplatní za zdaňovacie obdobie 2025, teda vo vyhláseniach podávaných v roku 2026. Verejná kalkulačka /2-percenta-2026 + onboarding wizard pre OZ/nadácie +tlačivo Vyhlásenie o poukázaní (XML pre FS).
§ 50 zák. 595/2003 · § 50aa zák. 595/2003 (účinný od 1.1.2025)
FS XSD strict v25 — DPH + KV DPH + DMV + Prehľad 2026 (5/5 forms)
Všetkých 5 daňových formulárov generuje strict XML podľa FS SR XSD verzia 2025 (eDane DRKlient v25). Lib-y lib/dph-v25-xml.js, lib/kvdph-v25-xml.js, lib/dmv-v25-xml.js, lib/prehlad-2026-v25-xml.js. Pre-flight XSD validátor pred submitom — chyby vidieť pred FS odmietnutím.
FS SR metodické pokyny 2026
eKasa VRP2 import + Peppol XML (UBL 2.1) compliance
Import VRP2 (online registračnej pokladnice) zo SK podnikateľov, automatické rozdelenie 602/343 pri platiteľovi DPH, 602 pri neplatiteľovi. Peppol UBL 2.1 XML pre B2G fakturáciu (zákon 384/2025 Z. z. — eKasa). Defensive XML escape, multi-rate TaxSubtotal, EndpointID 0208 (SK IČO).
zák. 384/2025 · UBL 2.1 specification
Period lock § 8 ZÚčto — atomické zamknutie obdobia
Po podaní DPH výkazu sa odporúča zamknúť dané obdobie. Zamknutie blokuje pridávanie, úpravu a mazanie faktúr, prijatých dokladov, bankových pohybov a účtovných zápisov v uzamknutom období. Odomknúť môže iba účtovník (alebo účtovník v mene klienta). K tomuto dátumu rešpektovalo period_lock 27/27 vtedajších endpointov; odvtedy modul pribúdal, k 15. 8. 2026 je kontrola v 50 moduloch.
§ 8 zák. 431/2002
IBAN at-rest šifrovanie AES-256-GCM + JWT token revocation
Všetky uložené IBAN-y šifrované per-row IV cez AES-256-GCM (kľúč BANK_ENCRYPTION_KEY, samostatný od šifrovania ePN tokenu). JWT obsahuje token_version (tv) — pri reset hesla, 2FA enable/disable, account delete, /logout-all sa version inkrementuje, čo zneplatní VŠETKY existujúce session-y na všetkých zariadeniach.
GDPR čl. 32 — security of processing · § 39 zák. 18/2018
GDPR § 17 hard-purge cron — pseudonymizácia po 30 dňoch
Daily cron 4:30 vykonáva pseudonymizáciu user dát po 30 dňoch od žiadosti o vymazanie (§ 17 GDPR). Účtovné dáta zostávajú zachované podľa § 35 ZÚčto retention (10 rokov), ale osobné identifikátory (meno, email, RC) sa nahradia hash-om.
GDPR čl. 17 — right to erasure · § 35 zák. 431/2002
Mzdy edge cases — 22 nových testov pokrývajúcich SK zákonník práce 2026
Testovacie pokrytie pre príplatky § 121-124 (nočná, sviatok, sobota/nedeľa), odstupné § 76, benefity § 5/3, dohody DPP/DPC, DoBP § 227a ZSP, 4-pásmová daň 19/25/30/35 %, PN náhrada § 7-8 z. 462/2003 (zamestnávateľ 1.-14. deň od 1.1.2026 novelou 261/2025; PN vzniknutá do 31.12.2025 → 1.-10. deň). 1412/1412 testov.
zák. 311/2001 · § 121-124 · § 76