# DfCartRecovery — Recupero carrello abbandonato per Shopware 6

> Panoramica DfCartRecovery porta in Shopware 6 (Community Edition) il recupero dei carrelli abbandonati, normalmente riservato al piano Commercial: rilevamento dei carrelli, fino a 3 email di promemoria pianificate, un codice…

- Pagina: <https://www.datafirefly.com/it/documentation/dfcartrecovery/>
- Lingua: it
- Aggiornato il: 2026-07-22
- Altre lingue: [fr](https://www.datafirefly.com/documentation/dfcartrecovery/index.md), [en](https://www.datafirefly.com/en/documentation/dfcartrecovery/index.md), [es](https://www.datafirefly.com/es/documentation/dfcartrecovery/index.md), [de](https://www.datafirefly.com/de/documentation/dfcartrecovery/index.md), [pl](https://www.datafirefly.com/pl/documentation/dfcartrecovery/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfcartrecovery/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfcartrecovery/index.md)
- Indice: <https://www.datafirefly.com/it/documentation/llms.txt>

## Panoramica

DfCartRecovery porta in Shopware 6 (Community Edition) il recupero dei carrelli abbandonati, normalmente riservato al piano Commercial: rilevamento dei carrelli, fino a 3 email di promemoria pianificate, un codice sconto unico per cliente, un link di ripristino del carrello in 1 clic e tracciamento degli ordini recuperati. Nessun servizio esterno, nessuna build di amministrazione: tutto si configura nelle impostazioni del plugin.

## Requisiti

- Shopware 6.5, 6.6 o 6.7 (Community Edition self-hosted — Shopware Cloud SaaS non supportato)
- PHP 8.1 o superiore (8.2+ consigliato)
- Consumer dei messaggi ed esecuzione dei task pianificati attivi (raccomandazione standard di Shopware in produzione)
- Invio email funzionante sul negozio (i promemoria passano dal servizio mail nativo di Shopware)

## Installazione

1. Decomprimi l'archivio e posiziona la cartella `DfCartRecovery` in `custom/plugins/`.
2. Dalla root di Shopware, esegui:

```
bin/console plugin:refresh
bin/console plugin:install --activate DfCartRecovery
bin/console cache:clear
```

Il task pianificato `df_cart_recovery.process` viene registrato automaticamente e gira ogni 15 minuti. Verifica che i tuoi worker siano attivi:

```
bin/console scheduled-task:run
bin/console messenger:consume async low_priority
```

L'installazione crea la tabella di tracciamento `df_cart_recovery` e il template email «Promemoria carrello abbandonato (DataFirefly)», pretradotto in IT, EN, DE, FR e ES.

## Configurazione

Vai in **Estensioni → Le mie estensioni → DfCartRecovery → Configurazione**. Tre schede di impostazioni:

### Generale

- **Attivare il recupero carrelli** — interruttore globale del plugin.
- **Valore minimo del carrello** — i carrelli sotto questo importo vengono ignorati (0 = nessun minimo).
- **Conservazione dei dati (giorni)** — le schede di tracciamento più vecchie vengono eliminate automaticamente (30 giorni di default, vedi la sezione GDPR).

### Email di promemoria

- **Numero di promemoria** — 1, 2 o 3 (2 di default).
- **Promemoria 1** — minuti dopo l'abbandono del carrello (60 di default, cioè 1 ora).
- **Promemoria 2** — minuti dopo il promemoria 1 (1440 di default, cioè 24 ore).
- **Promemoria 3** — minuti dopo il promemoria 2 (4320 di default, cioè 72 ore).

La sequenza 1 h / +24 h / +72 h è lo standard collaudato del retargeting via email: mantienila come punto di partenza e regolala in base alle tue statistiche di recupero.

### Codice sconto

- **Includere un codice sconto unico** — attiva la generazione dei codici individuali.
- **Promozione per i codici generati** — seleziona la promozione Shopware che porterà i codici (vedi sotto).
- **Inviare il codice con il promemoria n°** — 2 di default: i clienti che tornano dopo la prima email ordinano senza sconto.
- **Prefisso del codice** — CART di default; i codici generati hanno la forma `CART-7F3A91B2`.

## Creare la promozione per i codici unici

1. Nell'admin di Shopware, apri **Marketing → Promozioni** e crea una promozione (o riutilizzane una esistente).
2. Nella scheda generale, attiva **Codici promozionali individuali**.
3. Definisci lo sconto (percentuale o importo), le condizioni e il periodo di validità come di consueto.
4. Attiva la promozione e selezionala nella configurazione del plugin.

La promozione deve obbligatoriamente avere i codici individuali attivati: il plugin inserisce i suoi codici generati in quella lista. Senza questa opzione, i codici inviati via email non saranno accettati al checkout.

## Personalizzare l'email di promemoria

Il contenuto si modifica in **Impostazioni → Template email**, tipo «Promemoria carrello abbandonato (DataFirefly)», per ogni lingua del negozio. Variabili Twig disponibili:

- `firstName` / `lastName` — nome e cognome del cliente
- `items` — articoli del carrello, ciascuno con `label` e `quantity`
- `total` e `currency` — importo del carrello e codice valuta
- `recoveryUrl` — link di ripristino del carrello (da posizionare sul pulsante di azione)
- `voucherCode` — codice sconto unico (vuoto se disattivato o nei promemoria senza codice: racchiudi il suo blocco in una condizione Twig)
- `shopName` — nome del negozio del canale di vendita
- `reminderNumber` — numero del promemoria in corso (1, 2 o 3)

## Il link di ripristino

Ogni email contiene un link unico della forma `/df-cart-recovery/token`, generato sul dominio del canale di vendita del cliente, nella sua lingua. Al clic, il plugin ricostruisce il carrello articolo per articolo, segnala i prodotti non più disponibili con un messaggio nello storefront, registra la data del clic e reindirizza alla pagina del carrello. I link non validi o scaduti reindirizzano alla home con un messaggio esplicito.

## Tracciamento del recupero

Non appena un ordine viene effettuato, il plugin confronta l'email del cliente con i carrelli abbandonati in corso: la scheda passa a «recuperato» con l'identificativo dell'ordine, la data e il numero di promemoria inviati. I promemoria si fermano immediatamente per quel carrello. I dati risiedono nella tabella `df_cart_recovery` (token, stati, clic, ordini collegati) per i tuoi report SQL o BI.

## GDPR e dati

- Nessun dato lascia il tuo server; nessun servizio di terze parti viene chiamato.
- Le schede di tracciamento vengono eliminate automaticamente dopo il periodo di conservazione configurato.
- Alla disinstallazione, scegli «Rimuovere tutti i dati dell'applicazione» per eliminare la tabella, il template email e la configurazione — oppure conservali per mantenere lo storico.

## Risoluzione dei problemi

### Nessuna email viene inviata

- Verifica che il task pianificato funzioni: `bin/console scheduled-task:list` deve mostrare `df_cart_recovery.process` come scheduled, e i tuoi worker messenger devono essere attivi.
- Testa l'invio email globale del negozio (Impostazioni → Mailer): il plugin usa il servizio mail standard.
- Controlla il valore minimo del carrello e il ritardo del promemoria 1: un carrello abbandonato 20 minuti fa con un ritardo di 60 minuti non è ancora idoneo.

### Gli ospiti non ricevono nulla

È il comportamento previsto: senza indirizzo email, nessun promemoria è possibile. Gli ospiti vengono tracciati non appena si identificano (login o creazione account durante il checkout) — la fusione del carrello aggiorna la scheda con il loro indirizzo.

### Il codice sconto non compare nell'email

- Verifica che «Includere un codice sconto unico» sia attivo e che una promozione sia selezionata.
- La promozione deve esistere, essere attiva e avere i codici individuali attivati.
- Il codice viene allegato solo a partire dal promemoria configurato (il 2° di default): il promemoria 1 non ne contiene nella configurazione standard.

### Il link di ripristino reindirizza alla home

Il token non è valido o la scheda è stata eliminata (conservazione superata) — il cliente vede un messaggio che lo invita a rifare il carrello. Aumenta il periodo di conservazione se i tuoi ritardi di promemoria sono lunghi.
