SW Shopware 6 Principiante

DataFirefly Loyalty — Programma Fedeltà Shopware 6

Programma fedeltà Shopware 6: installazione, punti, livelli, buoni e risoluzione dei problemi.

Aggiornato Versione del modulo 1.0.0

Panoramica

DataFirefly Loyalty aggiunge un programma fedeltà completo a Shopware 6: i tuoi clienti guadagnano punti a ogni ordine, salgono di livello con moltiplicatori e convertono i punti in buoni basati sulle promozioni native di Shopware. L’estensione funziona su Shopware 6.5, 6.6 e 6.7 con un unico ZIP, senza alcuna compilazione.

Installazione

Dall’amministrazione

  1. Vai in Estensioni > Le mie estensioni.
  2. Fai clic su Carica estensione e seleziona il file DfLoyalty-1.0.0.zip.
  3. Fai clic su Installa, poi attiva l’estensione.

Da riga di comando

bin/console plugin:refresh
bin/console plugin:install --activate DfLoyalty
bin/console cache:clear

L’installazione crea due tabelle dedicate: df_loyalty_account (una riga per cliente) e df_loyalty_transaction (il registro di tutte le operazioni sui punti).

Non serve alcuna compilazione JavaScript: l’estensione non include alcun modulo di amministrazione compilato, il che garantisce la compatibilità con i rami 6.5, 6.6 e 6.7.

Configurazione

Apri Estensioni > Le mie estensioni > DataFirefly Loyalty > Configura. Tutte le impostazioni sono disponibili per canale di vendita: puoi attivare il programma su un solo negozio o applicare tassi diversi per canale.

Accredito dei punti

  • Attiva il programma: interruttore generale. Se disattivato, la pagina account del cliente restituisce un errore 404 e non viene accreditato alcun punto.
  • Trigger di accredito: Pagamento incassato (stato transazione paid, consigliato) o Ordine completato (stato ordine completed).
  • Punti per unità monetaria: punti guadagnati per unità spesa. Predefinito: 1.
  • Base di calcolo: importo dell’ordine lordo o netto.
  • Includere le spese di spedizione: per impostazione predefinita, la spedizione è esclusa dal calcolo.

Livelli

Sono configurabili tre livelli, ciascuno con nome, soglia e moltiplicatore. Le soglie si applicano ai punti accumulati nel tempo (che non diminuiscono mai con un riscatto), il moltiplicatore si applica a tutti i guadagni futuri.

  • Livello 1 — predefinito: Bronzo, da 0 punti, moltiplicatore ×1.0
  • Livello 2 — predefinito: Argento, da 500 punti, moltiplicatore ×1.25
  • Livello 3 — predefinito: Oro, da 2 000 punti, moltiplicatore ×1.5

Esempio: un cliente Argento (×1.25) che effettua un ordine di 100 € lordi con un tasso di 1 punto per euro guadagna 125 punti.

Riscatto dei buoni

  • Tasso di conversione: punti necessari per 1 € di buono. Predefinito: 100 (100 punti = 1,00 €).
  • Minimo di riscatto: punti minimi per riscattare. Predefinito: 200.
  • Incremento di riscatto: i punti si convertono in multipli di questo valore. Predefinito: 100.
  • Validità dei buoni: durata del buono in giorni. Predefinito: 90.

Funzionamento per il cliente

Una voce Programma fedeltà compare nel menu dell’account cliente. La pagina /account/loyalty mostra:

  • il saldo punti disponibile e il totale dei punti accumulati nel tempo;
  • il livello attuale con una barra di avanzamento verso il livello successivo;
  • il modulo di riscatto dei buoni;
  • la cronologia delle ultime 50 operazioni (guadagni, riscatti, revoche).

Quando un cliente riscatta i punti, l’estensione crea una promozione nativa di Shopware: un codice unico del tipo LOYAL-XXXXXXXX, riservato al suo account, monouso, con uno sconto fisso sul carrello. Il codice si applica nel carrello come qualsiasi codice promozionale. Tutte le promozioni generate si trovano in Marketing > Promozioni.

Annullamenti e rimborsi

Quando un ordine passa allo stato Annullato o il suo pagamento passa allo stato Rimborsato, i punti guadagnati su quell’ordine vengono revocati automaticamente. L’operazione è tracciata nella cronologia del cliente con l’etichetta «Annullati». La revoca è idempotente: può avvenire al massimo una volta per ordine.

Nella versione 1.0, un rimborso parziale non viene ripartito pro quota: è il passaggio del pagamento completo allo stato Rimborsato che attiva la revoca di tutti i punti dell’ordine.

Sicurezza e integrità dei dati

  • L’addebito dei punti è atomico a livello di database: due riscatti simultanei non possono spendere due volte lo stesso saldo.
  • Ogni operazione viene inscritta in un registro append-only, con riferimento all’ordine, tipo, punti con segno e codice del buono quando applicabile.
  • La creazione del buono e la scrittura contabile avvengono nella stessa transazione SQL: mai un buono senza addebito, mai un addebito senza buono.

Risoluzione dei problemi

L’estensione inserisce il suo link tramite il blocco Twig page_account_sidebar_link_orders. Se il tuo tema personalizzato ha rimosso o rinominato questo blocco, aggiungi il link manualmente nel template della sidebar dell’account, puntando alla route frontend.account.dfloyalty.page.

I punti non vengono accreditati

  1. Verifica che il programma sia attivo per il canale di vendita interessato.
  2. Verifica il trigger configurato: con Pagamento incassato, la transazione deve raggiungere lo stato paid; con Ordine completato, l’ordine deve raggiungere completed.
  3. Svuota la cache dopo ogni modifica di configurazione: bin/console cache:clear.

Disinstallazione

Durante la disinstallazione, Shopware propone di conservare i dati. Se deselezioni questa opzione, le tabelle df_loyalty_account e df_loyalty_transaction vengono eliminate definitivamente — i buoni già generati restano, poiché sono promozioni standard di Shopware.

Questa pagina ti è stata utile?

Ancora bloccato? Contatta l'assistenza