Analizăm procesul dvs. de vânzări și propunem arhitectura
Catalogul, comenzile, plățile și schimbul cu sistemul de evidență — pe schemă, înainte de începerea dezvoltării.
Sistemul de comerț electronic duce marfa de la fișa din catalog până la comanda plătită și livrată. Mai jos — modulele sistemului, procesele pe care le acoperă și legătura cu CRM, ERP, depozitul și casele de marcat.
Software pentru comerț electronic — un sistem care păstrează datele despre produse, prețuri și stocuri, primește comenzi prin internet, procesează plata și transmite comanda spre execuție: în depozit, în livrare și în evidență.
Se deosebește de un site obișnuit prin faptul că operează nu cu pagini, ci cu obiecte de evidență: produs, preț, stoc, comandă, plată, expediere, retur — înregistrări cu stare și istoric proprii. Aceeași comandă poate veni din aplicație, dintr-un automat, de la un manager sau de pe un marketplace.
Este un circuit de evidență peste vitrină, nu vitrina în sine. Vitrina poate fi înlocuită sau dublată fără a rescrie evidența.
Șase sarcini pentru care se implementează o platformă de e-commerce. Până la implementare fiecare se acoperă manual — cu tabele, corespondență și telefoane.
Caracteristicile, fotografiile, prețul și stocul sunt păstrate într-un singur loc și ajung în toate canalele de vânzare. Nu există neconcordanțe între site, aplicație și casa de marcat.
Comanda se creează, se verifică și se plătește automat, non-stop. Omul este necesar acolo unde se cere o decizie: livrare nestandard, retur în litigiu, angro.
Rezervarea la plasarea comenzii nu permite vânzarea aceluiași produs de două ori. Anulările din lipsă de marfă în depozit se reduc la cazuri izolate.
Prețurile și reducerile se stabilesc prin reguli, nu prin editarea manuală a fișelor. Reevaluarea unui catalog cu mii de poziții durează minute și este reversibilă.
Comanda, plata și expedierea ajung în contabilitate și în evidența de depozit fără reintroducere. Reconcilierea încetează să mai fie o muncă separată.
Se vede ce se cumpără, ce se caută și nu se găsește, unde se abandonează plasarea comenzii, ce produse se returnează. Sortimentul se planifică pe date.
Automatizarea nu înseamnă «un robot în locul vânzătorului», ci trecerea operațiunilor repetitive în reguli pe care sistemul le aplică singur și al căror rezultat îl scrie în istoric.
Regula acționează până când i se schimbă condițiile. Controlul rămâne: fiecare acțiune automată are autor, oră și valoarea anterioară în jurnal.
Ce trece în regim automat:
| Ora | Ce a făcut sistemul singur |
|---|---|
| 09:41 | Adaos 18%: recalculate 1 240 poziții |
| 10:00 | Promoția «−15% la ceai» a pornit conform programării |
| 10:03 | Refuz la comanda nr. 14 190: +2 buc în stoc |
| 10:06 | Stoc redus SKU 77-1043: notificare către achiziții |
Catalogul — un depozit structurat de date despre produse: ce se vinde, prin ce se deosebesc produsele între ele și după ce criterii sunt găsite.
Din ce se compune un catalog funcțional:

Unitatea de bază a catalogului este poziția de produs cu cod unic (SKU): date imuabile, descriere editabilă și obiecte asociate — imagini, documente, prețuri, stocuri.
Operațiunile în masă se fac prin import și export: fișier, API sau extragere din sistemul de evidență. Importul trece întotdeauna printr-o verificare: ce va fi creat, ce modificat, ce respins și de ce.
Respinse: cod de produs duplicat — 9, atribut obligatoriu «Brand» gol — 5, categorie necunoscută — 3. Până la confirmare nu a fost scris în catalog niciun rând.
Prețul — nu un câmp din fișa produsului, ci rezultatul unui calcul după reguli, la momentul cererii. Pentru un produs există simultan mai multe prețuri, iar sistemul îl alege pe cel aplicabil.
De aceea prețul nu trebuie corectat în mii de fișe: e suficient să schimbi regula sau lista de prețuri de bază.
Straturile de formare a prețului:
Fiecare schimbare de preț se scrie în istoric: cine, când, după ce regulă și care era valoarea. Pe el se sprijină rapoartele de marjă și analiza comenzilor în litigiu.
Regulile se rezolvă după prioritate, nu se însumează orbește. Ordinea tipică de calcul al prețului unei poziții:
Compatibilitatea se stabilește explicit: ce reduceri se cumulează, care se exclud reciproc, care este prețul minim admis. Limita de preț minim nu permite ca mai multe reduceri corecte împreună să ducă poziția în pierdere.
Promoția — o regulă pe care sistemul o aplică singur comenzilor potrivite. Codul promoțional — aceeași regulă, activată de cumpărător printr-un cuvânt-cod. Ambele se descriu la fel: condiție, mecanică, termen, limite.
Ce trebuie să fie în comandă: produse, categorie, brand, sumă minimă, mod de livrare, segment de client, canal de vânzare, ora din zi sau ziua săptămânii.
Procent, sumă fixă, preț nou, reducere la cel mai ieftin produs din set, livrare gratuită, cadou, puncte în loc de reducere.
Datele de început și de sfârșit, ferestre repetate (de exemplu, în fiecare vineri), pornire și oprire automate, fără intervenția unui angajat.
Limita totală de utilizări, limita pe client, coduri personale de unică folosință, interdicția de suprapunere cu alte promoții, prețul minim al poziției.
Un cod unic pentru o campanie sau un lot de coduri unice pentru destinatari. Lotul se descarcă într-un fișier și se urmărește pentru fiecare cod.
Pentru fiecare promoție se vede: câte comenzi, suma reducerilor, venitul și marja ținând cont de reducere, câte coduri au fost activate și câte au rămas.
Coșul — ciorna comenzii: un set de poziții care nu a creat încă obligații nici pentru cumpărător, nici pentru magazin. Produsul din el nu este rezervat, prețul nu este fixat, de aceea coșul se recalculează la fiecare deschidere.
Recalcularea verifică patru lucruri: produsul se vinde, este suficient în depozit, prețul nu s-a schimbat, reducerile sunt valabile. Modificările sunt văzute de cumpărător înainte de plată, nu după debitarea banilor.
Ce trebuie să poată face coșul:
Total pentru plasare: 3 poziții, 11 640 som. Ambele neconcordanțe sunt arătate cumpărătorului înainte de plată, nu după debitarea banilor.

Lângă coș trăiesc liste care nu duc la cumpărare: favorite, listă de așteptare, comparare după caracteristici, repetarea unei comenzi anterioare. Sunt separate intenționat — altfel totalul comenzii încetează să fie univoc.
Cea mai mare parte a coșurilor nu devine comandă. Sistemul le păstrează cu marcaj de timp și poate readuce cumpărătorul: memento pe e-mail sau în mesagerie, link de restaurare a conținutului, ofertă personalizată.
Mementoul se trimite o singură dată, la eveniment, și nu se transformă în newsletter — dezabonarea costă mai mult decât comanda recuperată.
Comanda — un document care fixează conținutul cumpărăturii, prețurile la momentul plasării, cumpărătorul, condițiile de livrare și de plată. Mai departe comanda trăiește printr-un set finit de statusuri, iar fiecare tranziție se înregistrează.
Prețurile și reducerile se fixează la plasare: schimbarea prețului sau finalul promoției nu afectează o comandă deja creată — altfel suma de plată ar diferi de suma de pe bon.
Plasarea pas cu pas:

Statusuri tipice: nouă → așteaptă plata → plătită → în pregătire → predată la livrare → livrată → finalizată. În paralel merg ramurile de anulare și de retur. Setul se configurează după procesul companiei, dar rămâne finit și explicit.
Editarea comenzii este o operațiune separată, cu drepturi de acces: adăugarea unei poziții, înlocuirea unui produs, schimbarea cantității, plata suplimentară sau returul parțial. Fiecare modificare păstrează versiunea anterioară a conținutului.
Call-centerul — nu un program separat, ci un loc de muncă peste aceeași coadă de comenzi. Operatorul vede aceleași obiecte ca și cumpărătorul în contul personal, plus operațiuni închise pentru client: modificarea conținutului, reducerea în limita permisă, ridicarea rezervării, restituirea banilor.
Solicitarea este o înregistrare cu status și istoric, la fel ca o comandă: are canal, temă, comandă asociată, responsabil și termen de răspuns. De aceea conversația nu se pierde la predarea între ture, iar rezultatul ei se vede în fișa clientului.
Traseul unei solicitări pas cu pas:
Munca de ieșire este construită la fel: confirmarea comenzii înainte de pregătire, apel pentru o livrare nestandard, revenirea la coșul abandonat, apeluri pentru un retur în litigiu. Fiecare contact se scrie în același istoric ca și solicitările primite.

Magazinul nu păstrează datele cardurilor și nu efectuează el însuși plata: îl transmite pe cumpărător procesatorului de plăți, primește rezultatul operațiunii și îl leagă de comandă. Restul este gestionarea ciclului de viață al plății.

| Comanda | Operațiune | Sumă | Status |
|---|---|---|---|
| 14 208 | Blocare | 12 480 | Blocat |
| 14 201 | Debitare | 6 350 | Efectuată |
| 14 177 | Restituire | 2 100 | Efectuată |
| 14 206 | Ridicarea blocării | 3 940 | Ridicată |
| 14 209 | Refuz al băncii 05 | 890 | Reluare |
Blocarea a fost ridicată fără plată de restituire: produsul nu s-a găsit în depozit. Retrimiterea cererii cu aceeași cheie de idempotență nu creează un al doilea rând.
Card bancar, QR și sistemul de plăți instant, portofele electronice, plata la primire, cont bancar pentru persoane juridice, rate și credit, plata cu puncte.
Mai întâi blocarea: suma este blocată pe card, dar nu debitată. Debitarea — după pregătirea comenzii. Dacă produsul nu s-a găsit, blocarea se ridică fără plată de restituire.
Rezultatul operațiunii vine printr-o cerere separată de server, nu prin revenirea cumpărătorului pe site. Un browser închis nu strică plata: statusul se actualizează la notificare.
Retrimiterea aceleiași cereri de plată nu creează o a doua plată. Fiecare operațiune are o cheie după care procesatorul și sistemul recunosc duplicatul.
După plată, casa de marcat online generează bonul fiscal și îl trimite cumpărătorului. La retur se generează bonul de retur pentru pozițiile returnate.
Compararea zilnică a operațiunilor din sistem cu registrul procesatorului și cu extrasul bancar. Neconcordanțele ajung într-o listă separată și se analizează manual.
Stocul — cantitatea de produs disponibilă la vânzare chiar acum. Nu este cantitatea fizică din depozit: o parte este rezervată pentru comenzi, o parte este în tranzit, o parte este blocată ca defect.
Disponibil la vânzare = stoc fizic − rezervări − blocări + livrări confirmate în tranzit (dacă este permisă precomanda).
Când există mai multe depozite și puncte, stocul se calculează separat pentru fiecare depozit, iar vitrinei i se arată suma depozitelor din care este posibilă livrarea în regiunea aleasă.
Cum este construit schimbul:
Rezervarea are întotdeauna un termen de viață: o comandă neplătită la timp eliberează produsul înapoi la vânzare — altfel coșurile abandonate «mănâncă» tot stocul disponibil.
| Depozit | Faptic | Rezervat | Defect | Disponibil |
|---|---|---|---|---|
| Central | 1 420 | 310 | 24 | 1 086 |
| Magazinul «Est» | 96 | 12 | — | 84 |
| Punct de ridicare nr. 3 | 40 | 8 | 2 | 30 |
| Livrare în tranzit | 600 | — | — | 600 |
| Disponibil la vânzare | 2 156 | 330 | 26 | 1 800 |
Faptic — stocul fizic, defect — cantitatea blocată. Livrarea în tranzit intră în disponibil doar acolo unde este permisă precomanda. Vitrinei i se arată suma depozitelor din care este posibilă livrarea în regiunea aleasă.
Livrarea se descrie prin trei obiecte: metoda de livrare, zona și tariful. Returul este un proces invers cu document propriu, nu o «anulare retroactivă».
Curier la adresă, punct de ridicare, automat de colete, ridicare personală, firmă de transport pentru gabarit mare, livrare digitală pentru produse electronice.
Costul depinde de regiune, greutate, volum și suma comenzii. Regulile stabilesc pragul livrării gratuite, suplimentele pentru urcat la etaj și pentru gabarit.
Datele și ferestrele de timp se calculează după programul depozitului, timpul de pregătire și orarul transportatorului. Sloturile ocupate se închid automat.
Comanda este transmisă transportatorului prin API, sistemul primește numărul expedierii și statusurile de mișcare și le arată în contul personal.
Cumpărătorul alege pozițiile și motivul, sistemul verifică termenul și admisibilitatea returului după tipul produsului și generează documentul cu instrucțiuni.
După recepție produsul revine în stoc sau este descărcat ca defect, banii pleacă spre metoda inițială de plată, se generează bonul de retur.
Returul parțial este normal: dintr-o comandă se returnează o poziție din cinci. De aceea returul se calculează pe poziții, iar reducerea pe toată comanda se distribuie proporțional între ele — altfel suma returului ar diferi de bon.
Gestionarul de depozit — angajatul care mută fizic marfa: primește livrarea, o pune în celulă, scoate pozițiile pentru comandă și predă cutia pregătită curierului. Sistemul nu află despre aceste acțiuni din spusele angajatului: fiecare operațiune este confirmată prin scanarea codului de bare.
Diferența este de principiu. Bifa «gata» dintr-o listă confirmă intenția, scanarea confirmă faptul: cod de produs concret, celulă concretă, angajat concret, ora cu precizie de secundă. O greșeală de tastare în cod iese la iveală la inventar peste o lună; un cod de bare greșit aplicația nu îl acceptă deloc.
Ce face gestionarul de depozit într-o tură:

Fiecare scanare este o înregistrare contabilă: stocul pe celulă se schimbă în momentul operațiunii, nu seara, la transcrierea hârtiilor. Vitrina, casa de marcat și call-centerul citesc aceleași stocuri, de aceea «pe site există, pe raft nu» încetează să mai fie o situație de lucru.
Acuratețea pregătirii — 99,4%: 7 blocări de scanare într-o tură, toate corectate pe loc. Datele sunt luate din aceleași înregistrări, nu dintr-un pontaj separat.
Curierul — ultima verigă a execuției și singurul angajat pe care cumpărătorul îl vede personal. Aplicația lui rezolvă două sarcini: să îl conducă pe traseu și să consemneze predarea astfel încât faptul să nu trebuiască confirmat ulterior prin telefoane.
Operațiunea-cheie este scanarea codului QR la predare. Codul este tipărit pe eticheta comenzii sau este arătat de cumpărător de pe ecran. Scanarea răspunde la întrebarea care altfel se rezolvă prin dispută: această comandă a fost predată, acestui destinatar și în ce minut.
Logisticianul lucrează la celălalt capăt al aceleiași aplicații: formează trasee după zone, greutate, volum și intervale, repartizează curierii, vede harta turei și analizează eșecurile — întârzierea, apelul fără răspuns, refuzul în prag.
Tura curierului pas cu pas:

Același status pus de curier îl vede cumpărătorul în contul personal, iar operatorul — în fișa comenzii. Nu există un «jurnal al curierului» separat: evenimentul este unul singur și îl citesc toate cele trei părți.
Gestionarul de depozit și curierul lucrează în aplicații diferite și în locuri diferite, dar conduc una și aceeași comandă. Nu rapoartele de la finalul zilei îi leagă, ci șase reguli comune.
Sarcina de pregătire, lista de ambalare și foaia de traseu nu sunt hârtii de sine stătătoare, ci reprezentări ale aceleiași comenzi. O poziție adăugată de operator ajunge la gestionar fără reîntocmire.
Marfa trece de la depozit la curier și de la curier la cumpărător prin scanare. În orice moment se vede la cine se află fizic comanda și din ce minut.
Marcajul îl pune cel care a executat acțiunea, acolo unde a executat-o. Dispecerul nu transferă statusurile manual, de aceea între fapt și înregistrare nu există o ruptură de câteva ore.
Ambele aplicații scriu operațiunile într-o coadă locală și le trimit când apare conexiunea. Fiecare operațiune are o cheie, de aceea retrimiterea nu creează o a doua pregătire sau o a doua predare.
Lipsa la recepție, sortarea greșită, spargerea, refuzul parțial la adresă — fiecare caz devine o înregistrare separată cu motiv și responsabil, nu o corectură tăcută a stocului.
Poziții pe oră la pregătire, acuratețea pregătirii, ponderea livrărilor în interval, timpul la adresă, ponderea refuzurilor parțiale. Încărcarea și prima se calculează pe aceste date, nu după impresie.
De aici și cerința pentru implementare: depozitul și livrarea se conectează la sistem împreună. Aplicația gestionarului fără aplicația curierului dă un stoc exact care nu ajunge nicăieri dincolo de expediere.
Contul personal — accesul cumpărătorului la propriile date fără a apela la un operator: comenzi, documente, adrese, metode de plată, returi. Fiecare întrebare rezolvată în cont este un apel care nu a ajuns la suport.
Contul nu păstrează date proprii: arată aceleași obiecte pe care le vede operatorul în panoul de administrare, dar doar înregistrările acestui client și doar operațiunile permise lui.
Ce conține:
În B2B contul este mai complex: organizația are mai mulți angajați cu drepturi diferite. Achizitorul formează comanda, conducătorul o aprobă, contabilul preia documentele de închidere. Comanda este una, acțiunile sunt separate.
Autentificare prin cod de unică folosință sau parolă, al doilea factor la operațiunile cu bani și la schimbarea contactelor, jurnal de sesiuni cu deconectarea unui dispozitiv străin. Schimbarea e-mailului sau a telefonului se confirmă la adresa veche și la cea nouă.
Aceleași înregistrări le vede operatorul în fișa comenzii: evenimentele sunt comune, nu există un jurnal separat pentru cont. Bonul și avizul se află în secțiunea «Documente».
Integrarea — un schimb de date convenit cu un program extern: ce se transmite, în ce format, cât de des, cine deține datele și ce se întâmplă la o defecțiune.
Cu ce se conectează sistemul:

Decizia-cheie a integrării este răspunderea pentru date. Pentru fiecare entitate se stabilește sistemul-proprietar: nomenclatorul și prețurile vin din ERP, clienții — din CRM, stocurile — din depozit, comenzile se nasc în e-commerce. Editarea bidirecțională a aceluiași câmp în două sisteme produce neconcordanțe permanente, de aceea se evită.
| Sistem | Ce transmite | Mesaje | Rezultat |
|---|---|---|---|
| ERP | nomenclator, prețuri | 4 120 | Fără erori |
| Depozit | stocuri, rezervări | 18 640 | 2 reluări |
| CRM | clienți, segmente | 1 305 | Fără erori |
| Marketplace | comenzi, stocuri | 2 470 | 1 în analiză |
Integrarea nu se strică la lansare, ci peste jumătate de an — când sistemul extern s-a actualizat, canalul a dispărut pentru o oră sau în nomenclator a ajuns o valoare neprevăzută. Șase reguli decid dacă schimbul supraviețuiește unor astfel de evenimente.
Plasarea comenzii nu așteaptă răspunsul sistemului extern: mesajul este pus în coadă și procesat separat. Un depozit indisponibil nu oprește vânzările.
O transmitere eșuată se repetă cu interval crescător. Mesajul care nu a trecut după toate încercările ajunge în coada de analiză, nu se pierde.
Un mesaj livrat repetat nu creează o a doua comandă și nu descarcă stocul de două ori. Receptorul recunoaște duplicatul după cheia operațiunii.
Schimbarea formatului apare ca versiune nouă, cea veche continuă să funcționeze. Consumatorii externi trec la ea după propriul grafic.
Fiecare mesaj se păstrează cu corp, oră, rezultat și număr de încercări. Analiza unui incident se sprijină pe jurnal, nu pe amintiri.
Reconcilierea periodică a indicatorilor-cheie: comenzi, sume încasate, stocuri. Neconcordanța devine o sarcină, în loc să fie descoperită la inventar.
Catalog și comenzi
Plăți
Stocuri și depozit
Analiza
Analiza se construiește pe date proprii despre vânzări și comportament, nu doar pe contoare externe de trafic. Contorul știe despre vizualizări, sistemul — despre bani, produse și returi.
Rapoartele se calculează pe secțiuni: perioadă, canal de vânzare, categorie, brand, depozit, regiune, segment de client, promoție. Orice indicator este disponibil în fiecare secțiune și se exportă într-un fișier sau într-un depozit de date.

Cea mai abruptă cădere este între coș și plasare: acolo se analizează pasul de înregistrare, calculul livrării și metodele de plată.
Securitatea se sprijină pe trei lucruri: datele de plată nu ajung în sistemul magazinului, datele personale se păstrează limitat și sub control, iar orice acțiune cu bani și comenzi lasă urmă.
Numărul cardului se introduce la procesatorul certificat și nu ajunge în sistemul magazinului. Pentru debitările repetate se păstrează un token, nu cardul.
Tot traficul merge pe HTTPS. Câmpurile sensibile din bază sunt criptate, copiile de rezervă se păstrează criptate, separat de circuitul principal.
Model pe roluri: managerul de conținut nu vede plățile, operatorul nu schimbă prețurile. Accesul administrativ — cu autentificare în doi factori.
Cine a schimbat prețul, cine a anulat comanda, cine a exportat baza de clienți. Înregistrările sunt imuabile și se păstrează separat de datele de lucru.
Setul minim necesar de date, termenul de păstrare, ștergerea la cerere, acordurile de prelucrare și de comunicare cu dată și sursă.
Limitarea frecvenței cererilor, protecția formularelor împotriva încercărilor repetate, controlul reutilizării codurilor promoționale, verificări antifraudă ale comenzilor înainte de pregătire.
Un circuit separat este restaurarea. Copiile de rezervă sunt inutile până nu este verificată restaurarea lor: desfășurarea de test se face conform programării, nu în momentul avariei.
Scalarea este capacitatea de a susține creșterea fără rescriere. Cresc trei mărimi: dimensiunea catalogului, numărul de vizitatori simultani și numărul de comenzi pe oră.
Catalogul se lovește de căutare și filtrare, traficul de vârf — de livrarea paginilor, fluxul de comenzi — de baza de date și de integrările externe. Și soluțiile sunt diferite, iar implementarea se face pe măsura necesității.
Tehnici folosite în practică:
| Indicator | Măsurat | Prag |
|---|---|---|
| Răspunsul catalogului, p95 | 180 ms | 400 ms |
| Comenzi pe oră la vârf | 3 000 | 2 400 |
| Răspunsuri din cache | 86% | 70% |
| Reindexarea catalogului | 9 min | 20 min |
| Restaurarea din copie | 22 min | 60 min |
Sistemul se asamblează din module: fiecare acoperă propria zonă de date și operațiuni, iar legăturile dintre ele sunt descrise explicit. Proiectul pornește pe părți — mai întâi catalogul și comenzile, apoi fidelitatea, analiza și canalele externe.
Poziții de produs, coduri, descrieri, statusuri de publicare, versiuni ale fișelor și arhiva produselor retrase de la vânzare.
Arborele de secțiuni, asocierea produsului la mai multe ramuri, sortarea, pagini dedicate pentru selecții și secțiuni sezoniere.
Nomenclatorul de proprietăți cu tipuri de date și reguli de afișare — baza filtrelor, a comparării și a transferurilor către marketplace-uri.
Mărimi, culori și volume într-o singură fișă, cu coduri și stocuri separate. Seturi care descarcă mai multe poziții.
Fotografii, video și documente, generarea automată a formatelor și rezoluțiilor, filigrane, asocierea la produse.
Liste de prețuri, reguli de adaos, grile de volum, prețuri personalizate și contractuale, valute, rotunjire, taxe, istoric.
Condiții de declanșare, mecanici de reducere, programare, limite, generarea loturilor de coduri, compatibilitate, preț minim.
Coș între dispozitive, recalcularea prețurilor și a disponibilității, pașii de plasare, comandă fără cont, revenirea la coșul abandonat.
Coadă unică de comenzi din toate canalele, statusuri și tranziții, modificări de conținut, plăți suplimentare, împărțirea pe expedieri, anulări.
Conectarea procesatorilor, blocarea și debitarea, returi parțiale și complete, procesarea notificărilor, reconcilierea.
Bonuri de vânzare și de retur, schimbul cu casele de marcat online, trimiterea bonului către cumpărător, controlul documentelor netrimise.
Stocuri pe depozite, rezervări cu termen de viață, blocarea defectelor, recepția livrărilor și a returilor, praguri de stoc redus.
Metode de livrare, zone, tarife, intervale și sloturi, crearea expedierilor, urmărirea statusurilor, tipărirea documentelor.
Cereri pe poziții, verificarea termenelor și a admisibilității, recepția, restituirea banilor, revenirea în stoc sau descărcarea ca defect.
Conturi, adrese, persoane juridice și contracte, istoricul comenzilor, segmente, acorduri de prelucrare a datelor.
Puncte, niveluri, reguli de acordare și de consum, valabilitatea punctelor, oferte personalizate, recomandări.
Index de căutare, morfologie și sinonime, greșeli de tastare, filtre după atribute, sortări, căutări fără rezultate.
Produse asociate și similare, «se cumpără împreună», selecții manuale și reguli bazate pe istoricul comenzilor.
Pagini, articole, bannere, metataguri și adrese de pagini, marcaj structurat al produselor, harta site-ului, fluxuri de produse.
E-mailuri, SMS, mesagerie și push pe evenimentele comenzii, șabloane de mesaje, programare, jurnal de livrare.
Rapoarte de vânzări, marjă, stocuri, pâlnie și returi, secțiuni libere, exporturi, vitrine de date.
Schimb cu CRM, ERP, depozitul, casele de marcat, serviciile de plată și de logistică, marketplace-urile. API, webhook-uri, cozi.
Roluri și permisiuni pe secțiuni și operațiuni, autentificare în doi factori, jurnalul acțiunilor angajaților.
Mai multe vitrine pe același nucleu, multilingv și multivalută, mai multe persoane juridice și depozite, regiuni.
Sistemul nu se lansează integral într-un singur release. Ordinea de mai jos reflectă dependențele: fiecare pas se sprijină pe datele apărute la cel anterior.
Procesele curente, nomenclatoarele și sistemele-proprietar ale datelor. Rezultatul — schema entităților și harta integrărilor.
Migrarea nomenclatorului, configurarea atributelor și a categoriilor, schimbul de prețuri și stocuri. Verificarea pe date reale.
Plasarea, statusurile, procesatorul de plăți, fiscalizarea, transmiterea spre execuție. Lansarea pe o parte din sortiment.
Livrare și returi, fidelitate, analiză, canale noi de vânzare. Fiecare bloc — un release separat, cu măsurare.
Descrieți ce funcționează deja: sistemul de evidență, depozitul, casele de marcat, vitrina actuală. Vom analiza procesul și vom propune arhitectura soluției.