Skip to main content

Comenzi WooCommerce

Achizițiile de abonamente, workshop-uri și add-on-uri generează comenzi WooCommerce standard. Pluginul Dentisity extinde comenzile cu metadate suplimentare și actualizează profilul participantului la finalizarea comenzii.

Lista comenzilor WooCommerce cu comenzi Dentisity vizibile, conținând produse tip pass și workshop

Stările comenzilor relevante​

StareSemnificație în contextul Dentisity
pendingComanda a fost creată, plata nu a fost inițiată. Locul din workshop este rezervat: nu poate fi cumpărat a doua oară cât timp comanda e deschisă
on-holdPlata a fost autorizată dar nu capturată. Nu se acordă nimic
processingPlata a fost confirmată. Pluginul promovează imediat comanda la completed — o comandă Dentisity nu ar trebui să rămână în această stare
completedSingura stare în care se acordă accesul. Pass, workshopuri, add-on-uri, credite, apartenențe la grupuri și emailuri de confirmare
cancelledPlata a fost anulată. Accesul și creditele rămân neschimbate; se deschide un incident
refundedComanda a fost rambursată. Accesul și creditele rămân neschimbate; se deschide un incident
failedPlata a eșuat. Dacă accesul fusese deja acordat, se deschide un incident critic
Când se activează accesul

Accesul se acordă la tranziția în completed, nu în processing. Statusul completed este echivalentul unei plăți confirmate în tot pluginul — de aceea finalizarea manuală a unei comenzi neplătite acordă integral accesul.

Plățile cu cardul prin BT iPay ajung în processing, iar pluginul le promovează la completed în același request. Dacă o comandă Dentisity rămâne în processing, accesul nu a fost acordat și se deschide un incident critic.

Ce se întâmplă la finalizarea unei comenzi​

La tranziția în completed, pluginul execută în ordine fixă:

  1. Pass — apartenența la grupul congresului și la grupul pass-ului, dentisity_pass_product_id, dentisity_pass_order_id, creditele incluse, emailul de confirmare
  2. Add-on-urile incluse gratuit în pass — adăugate în comandă ca linii de 0 lei și acordate
  3. Workshopuri — apartenența la grup, dentisity_ws_order_<id>, emailuri de confirmare și remindere; dacă linia a fost plătită cu un credit, creditul se consumă
  4. Add-on-uri cumpărate — apartenența la grup și dentisity_addon_order_<id>
  5. Contorul de tranșă de preț (dentisity_increment_wave_sold) pentru fiecare produs
  6. Note în comandă și în dosarul participantului, plus data plății dacă lipsea

Operațiunea este protejată de meta _dentisity_completion_processed_at și de chei unice în registrul de credite: rularea repetată nu poate dubla nici accesul, nici creditele.

Transienți de stare draft​

În timpul procesului de înregistrare (înainte de finalizarea plății), pluginul folosește transienți WordPress pentru a menține starea temporară:

TransientConținut
dentisity_pending_pass_$uidID-ul pass-ului selectat de utilizator
dentisity_ws_draft_$uidWorkshop-urile selectate (înainte de plată)
dentisity_ao_draft_$uidAdd-on-urile selectate (înainte de plată)

Transienții au o durată de viață limitată și sunt șterși automat la finalizarea comenzii. Dacă un utilizator abandonează procesul de înregistrare, transienții expiră natural.

Vizualizarea detaliilor unei comenzi​

  1. Mergeți la WooCommerce → Comenzi
  2. Apăsați pe numărul comenzii pentru a o deschide
  3. Secțiunea Articole comandă listează produsele Dentisity achiziționate
Detaliul unei comenzi WooCommerce cu produse Dentisity (pass + workshop) listate în secțiunea de articole

Anulare și rambursare​

Pluginul nu retrage nimic automat la anularea sau rambursarea unei comenzi. Nici accesul, nici creditele.

Motivul este că decizia nu îi aparține: o rambursare poate însemna „anulăm achiziția" sau „participantul pierde banii și locul rămâne al lui", iar numai un om știe care dintre ele. În plus, calea poate fi declanșată de procesatorul de plăți — o notificare de anulare de la bancă ajunge în WooCommerce ca anulare de comandă, fără ca nimeni din echipă să fi decis ceva.

Ce se întâmplă în schimb:

Ce se scrieUnde
Notă permanentăDosarul participantului
Notă în comandăComanda WooCommerce
Incident deschisDentisity → Incidente
EmailDoar dacă accesul fusese deja acordat

Incidentul rămâne deschis până când cineva consemnează ce s-a decis. Din dosarul participantului, secțiunea Comenzi WooCommerce, fiecare comandă anulată sau rambursată oferă două acțiuni independente:

  • Restituie creditul — pune creditele consumate de comandă înapoi în balanța participantului, fără a atinge înscrierile
  • Retrage accesul — deschide dialogul de confirmare cu fiecare workshop și add-on pe un rând separat, pornind toate pe „păstrează". Pass-ul se retrage doar dacă bifați explicit
Rambursare parțială

O rambursare parțială se raportează la fel ca una integrală, iar rambursările create de modulul BT iPay nu conțin linii de produs — deci nu se poate deduce automat ce anume a fost returnat. Verificați comanda înainte de a retrage acces.

Incidente de comandă​

Ecranul Dentisity → Incidente adună evenimentele de comandă pe care pluginul le semnalează fără să acționeze. Numărul de incidente deschise apare ca insignă în meniu.

TipGravitateCând apare
Plată anulată după acordarea accesuluiCritic, cu emailComanda a trecut din completed în cancelled, failed sau refunded după ce accesul fusese acordat
Comandă Dentisity fără cont asociatCritic, cu emailComanda a fost plătită dar nu are un cont de utilizator. Nu se acordă și nu se leagă automat nimic
Comandă plătită rămasă neconfirmatăCritic, cu emailComanda a rămas în processing fără să fie promovată, deci accesul nu s-a acordat
Comandă anulatăAtenționareAnulare fără ca accesul să fi fost acordat
Comandă rambursatăAtenționareRambursare fără ca accesul să fi fost acordat

Adresa pentru emailurile critice se configurează în Dentisity → Setări; lăsată goală, se folosește adresa de administrare WordPress. Anulările și rambursările obișnuite nu generează email, ca cele critice să nu se piardă în zgomot.

Fiecare incident este deduplicat: notificările repetate ale procesatorului de plăți pentru același eveniment produc un singur rând.