Prijava Probaj Space ISO 27001
Tezga eKasa
Studije slučaja / Tezga eKasa

Kasa koja mora da prođe državnu akreditaciju

Fiskalni softver ne sme da ima tihu grešku, jer tiha greška ima poreske posledice. Puna revizija pred primopredaju iskopala je tri ozbiljna baga u poslovnoj logici koje nijedan test dotad nije video.

Next.js 16TypeScriptPostgreSQLDrizzleV-PFRSEFReact Native
29 0 Poznatih ranjivosti u zavisnostima
376 990 Automatskih testova
100.898 161.721 Linija koda
52 67 Tabela u bazi
111 132 Migracija
14 fajlova i 13 funkcija Mrtvog koda uklonjeno

Stanje „pre" je iz revizije 12.08.2026, stanje „posle" je mereno 03.09.2026 istim postupkom.

Naša ulogaProizvod, arhitektura, razvoj, revizija i dokumentacija
PeriodRazvoj od 2026, revizija i primopredaja avgust 2026, akreditacija jul 2026
Ažurirano3. septembra 2026.

Koji je bio problem?

  • Softver izdaje fiskalne račune, pa greška nije bug nego prekršaj sa poreskom posledicom.
  • Kod je trebalo predati partnerskoj firmi, sa dokumentacijom po kojoj neko drugi može da nastavi.
  • Proizvod je morao da prođe tehničku i administrativnu proveru Poreske uprave, kroz pet krugova primedbi.

Šta smo uradili?

Revizija poslovne logike, ne samo koda

Prošli smo tokove novca red po red i za svaki nalaz napisali test koji pada bez popravke. Sonda nad jezgrom obračuna puštena je na 220.000 slučajeva, a brojač dokumenata proveren sa 200 uporednih zahteva.

Izolacija firmi dokazana merenjem

212 upisa i 176 čitanja preko granica firmi, nula curenja. Odluka da se ne uvodi dodatni sloj izolacije je zapisana sa razlogom, jer bi tražila prepravku oko 250 upita bez dokazane koristi.

Zamrznut fiskalni izgled

Test čuva odobrenje Poreske uprave: izmena tri zamrznuta fajla obara proveru pre spajanja. Odobreni izgled računa se ne može promeniti slučajno.

Kapija koja nije postojala

Projekat je bio bez lintera. Uvedeni su linter, formatiranje, kuka pre commita, pokrivenost i provera na svakoj izmeni.

Šta smo našli, a niko nije tražio?

Dupli fiskalni račun kod Poreske uprave

Poziv ka fiskalnom modulu uspe, upis u našu bazu padne, ponovni pokušaj pošalje drugi račun za isti promet. Popravljeno tragom o već poslatom računu i gardom koji odbija automatsko ponavljanje. Dokazano mutacijom: bez popravke test pokaže da se drugi poziv stvarno okine.

Razlika od dva dinara u prijavi

Raspodela iznosa po stavkama radila je apsolutnu vrednost po stavci, pa bi Poreska dobila 8,54 dok dokument nosi 8,52. Napisana je nova raspodela po pravilu najvećeg ostatka, u celim parama, sa sondom od 300.000 slučajeva.

Heš ključa je prolazio kao ključ

Rezervni put za stari format dozvoljavao je da sam heš iz baze posluži kao ispravan ključ, pa bi kopija baze dala upotrebljive kredencijale. Zatvoreno.

Kakav je ishod?

  • Zvanično odobren ESIR rešenjem Poreske uprave broj 000-092-00-00123/2026-0000, identifikacioni broj 1597, klasifikacija napredni.
  • Produkcijska fiskalizacija radi od kraja do kraja, prvi pravi račun je fiskalizovan na produkciji.
  • Predata tehnička dokumentacija od 65 strana i 31 poglavlja, sa popisom naloga i rotacijom tajni na dan primopredaje.

Šta je ostalo otvoreno?

Ovo stoji ovde namerno. Projekat bez otvorenih stavki ne postoji, a spisak koji ih krije nije izveštaj nego reklama.

  • Lokalni fiskalni modul za rad bez interneta je specificiran, ali još nije napisan, pa se to i ne prodaje kao gotovo.
  • Pokrivenost testovima je u trenutku revizije bila 37,3 odsto nad linijama, sa 74,8 odsto nad granama. Raste, ali nije sto odsto i ne tvrdimo da jeste.
  • Pet testova koji su prepisivali logiku umesto da je pozovu evidentirano je kao dug, sa imenima fajlova.

Nazad na sve studije · Kako radimo

Pitanja o ovom projektu

Koliko traje revizija ovakvog sistema?

Za sistem ove veličine, oko 161.000 linija koda i 67 tabela, revizija je trajala dva puna radna dana, uz pisanje dokumentacije i testova za svaki nalaz. Prvi prolaz merenja je znatno kraći, obično jedan dan.

Kako ste dokazali da su nalazi stvarni, a ne pretpostavka?

Svaki nalaz ima test koji pada bez popravke. Kod duplog fiskalnog računa test pokazuje da se drugi poziv ka Poreskoj stvarno okine, a kod raspodele iznosa razlika se vidi na konkretnom dokumentu, 8,54 naspram 8,52.

Da li se ovakav sistem sme dirati posle akreditacije?

Sme, ali izgled fiskalnog računa ne. Test čuva odobrenje Poreske uprave, pa izmena zamrznutih fajlova obara proveru pre spajanja. Sve ostalo se razvija normalno.

Šta je ovde bilo najskuplje da se ne uradi?

Dupli fiskalni račun. Poreska bi dobila dva računa za isti promet, a to se ispravlja samo novim dokumentom i objašnjenjem, ne brisanjem. Takva greška se ne vidi u aplikaciji nego u poreskoj prijavi.

Reci šta gradiš

Javi se sa opisom problema, pa dobijaš predlog rešenja, plan po fazama i cenu, obično isti radni dan.

Pošalji upit
Pogledaj cene Write to us