Sari la conținut
Studii de caz

Client: Azat.team · Extenda Retail

POS pentru rețea de benzinării și SDK Dart

Un POS desktop în Flutter și un SDK Dart proprietar pentru rețele de benzinării, integrate cu imprimante fiscale ATOL și terminale de plată PAX.

Context

O benzinărie folosește o casă care este și un instrument juridic. Fiecare vânzare trebuie să producă un bon valid fiscal, să se reconcilieze cu pompele și să se deconteze printr-un terminal de plată — într-o rețea de locații, fiecare deschizându-se indiferent de cum a mers ultimul release.

Ce a făcut-o dificilă

Această clasă de sisteme este dificilă din motive care nu au legătură cu interfața. Casa trebuie să finalizeze vânzarea și să emită un bon valid indiferent dacă legătura locației cu sediul central funcționează. Imprimantele fiscale și terminalele de plată sunt dispozitive fizice cu protocoale proprii, ciudățenii de firmware și o idee proprie despre ce înseamnă o eroare — și nu pot fi simulate complet, pentru că modurile de eșec care contează apar doar pe echipament real. În plus, regulile fiscale sunt stabilite pe țară, deci același produs trebuie să satisfacă regimuri diferite.

Ce am construit

  • POS desktop în Flutter pentru operațiuni multi-locație
  • SDK Dart proprietar care ascunde accesul la dispozitive în spatele unei singure interfețe
  • Integrare cu imprimante fiscale ATOL și terminale de plată PAX
  • Terminal chioșc self-service în JavaFX
  • Servicii Serverpod în spatele casei

Rezultate

>99.5% disponibilitate la casă
12 case în 4 locații, pe parcursul a 6 luni de producție (ian–iun 2026). Sonde blackbox o dată pe minut către /health și către un scenariu real de plasare a comenzii, plus Sentry pentru 5xx. Downtime-ul a fost considerat două sau mai multe sonde eșuate consecutiv. Deploy-urile planificate nu au fost excluse din cifră.

Tehnologii

  • Flutter
  • Dart
  • Serverpod
  • JavaFX
  • ATOL
  • PAX
  • PostgreSQL