Fiecare punct de vânzare (magazin, locație, casă din mall) este o entitate distinctă în sistem, cu:
┌── Magazinul Centru (POS-001)
│ casier: maria, casier: ion
├── Magazinul Botanica (POS-002)
LANT ───┤ casier: andrei
├── Magazinul Riscani (POS-003)
│ casier: oxana, manager: vlad
└── Magazinul Buiucani (POS-004)
casier: dorinMaria de la Centru vinde un produs → stocul POS-001 scade. Andrei de la Botanica vinde simultan altceva → stocul POS-002 scade. Operațiunile lor nu se blochează una pe alta. Sistemul actualizează doar punctul respectiv, fără ca cele 4 puncte să "concureze" pentru aceeași resursă.
Pentru lanțuri cu depozit central (vezi Multi-depozit), transferurile pot fi:
Fiecare drept poate fi limitat la unul sau mai multe POS-uri. Exemple reale:
casier oxana → vinde la POS-003 (Riscani), nu poate la altele
manager vlad → vinde + aprobă transferuri la POS-003
director → vede rapoarte la toate POS-urile, nu vinde nicăieri
contabil → vede doar rapoartele financiare consolidateSistemul nostru de permisiuni acceptă scoping pe POS direct în textul rolului — exemple:
STOCK_TRANSFER:POS:POS-002:POS-003 → poate transfera DOAR Botanica → Riscani
E_FACTURA_STOCK_SELL:POS:POS-001 → poate emite e-Factura DOAR la Centru
FOLDER_INVOICE__VIEW → vede facturile (toate POS-urile)
FOLDER_INVOICE__VIEW:POS:POS-003 → vede facturile DOAR de la RiscaniDrept urmare: fiecare operator are exact ce-i trebuie, nici mai mult, nici mai puțin.
În Retail Mare cu 10 POS-uri și 30 de operatori, sistemul a fost gândit să nu se "trezească" niciodată cu un punct de vânzare blocat pentru că alt punct salvează ceva. Modificările pe stocul fiecărui punct se fac independent — nimeni nu așteaptă pe nimeni.
Concret: dacă 5 casieri scanează simultan produse pe 5 puncte diferite, fiecare bon iese în <1 secundă, indiferent de încărcătura celorlalți.
Fiecare transfer are propriul jurnal:
Toate înregistrările sunt inalterabile prin proiectare — interfața normală nu permite ștergerea istoriei sau modificarea retroactivă. Operatorii non-admin nu pot edita istoria în niciun fel. Administratorul contului are acces deplin la propria platformă și răspunde pentru acțiunile lui. Pentru audit / suspectare furt → în 1 click vezi exact ce s-a întâmplat.