Come riconquistare gli abbonati che hanno disdetto su Stripe
Come riconquistare gli abbonati Stripe che hanno disdetto: cosa conserva Stripe, come leggere cancellation_details, i tempi delle offerte e la ripresa.
Un abbonato che ha disdetto non è uno sconosciuto. Sai cosa ha comprato, quanto è rimasto e spesso perché se n’è andato. Questo lo rende tra le persone più facili a cui rivendere, se chiedi al momento giusto con l’offerta giusta.
Questa guida spiega cosa conserva Stripe dopo una disdetta, come leggere il motivo, come pianificare una sequenza di win-back e come far ripartire la fatturazione in modo pulito quando qualcuno torna. I dettagli su Stripe vengono dal riferimento API cancel subscription, dalla pagina di disdetta del customer portal, dalle retention rules, da coupon e codici promozionali e da using webhooks with subscriptions (tutti consultati a novembre 2026).
Cosa conserva Stripe dopo una disdetta
Quando un abbonamento termina, Stripe invia customer.subscription.deleted. L’abbonamento passa a canceled e, come dice il riferimento API cancel, non puoi più modificarlo. Tornare significa un nuovo abbonamento.
L’oggetto Customer è un’altra cosa. Resta, con la sua email, le fatture e lo storico dei pagamenti. È questo che rende pratico il win-back: non parti da zero, e se colleghi il nuovo abbonamento allo stesso Customer, i tuoi report mostrano un cliente che torna invece di uno nuovo.
Le disdette programmate non sono ancora disdette
Molte disdette sono impostate per avere effetto alla fine del periodo pagato (cancel_at_period_end). Fino a quella data, l’abbonamento è ancora attivo e la disdetta può essere annullata. Questa finestra è il tuo win-back più economico: una breve email «Il tuo accesso termina il [data]» con un modo per tenere il piano in un clic spesso fa più di qualsiasi campagna successiva.
Leggi il motivo prima di scrivere una parola
Stripe salva il motivo per cui un abbonamento è terminato in cancellation_details sull’abbonamento, documentato nel riferimento API cancel:
| Campo | Cosa contiene |
|---|---|
reason |
Perché l’abbonamento è terminato, per esempio cancellation_requested, payment_failed o payment_disputed |
feedback |
Il motivo scelto dal cliente: too_expensive, unused, missing_features, switched_service, too_complex, low_quality, customer_service o other |
comment |
Testo libero scritto dal cliente, fino a 5.000 caratteri |
reason separa il churn volontario da quello involontario. Un abbonamento terminato con payment_failed non è mai stato una decisione; il win-back giusto lì è un link per aggiornare la carta, non uno sconto. Per approfondire questa distinzione, vedi churn involontario.
feedback e comment vengono compilati quando il cliente te lo dice. Se usi il customer portal di Stripe, puoi attivare una pagina di disdetta che chiede un motivo dall’elenco di Stripe, con testo libero quando il cliente sceglie «Altro». Se costruisci il tuo flusso di disdetta, passa la risposta alla chiamata di cancel così resta con l’abbonamento.
Tratta comment con cura. È scritto dal cliente e può contenere dati personali. Salvalo, leggilo, ma non incollarlo nei modelli.
Retention al momento della disdetta
Le retention rules di Stripe permettono al customer portal di presentare un’offerta quando un cliente prova a disdire, in base al motivo della disdetta. Stripe valuta le regole nell’ordine che definisci e mostra l’offerta della prima corrispondenza; se nulla corrisponde, il cliente prosegue con la disdetta. Le offerte possono essere un coupon di sconto o, se l’opzione di cambio piano è attiva nel portale, un cambio di piano. Le retention rules sostituiscono la vecchia impostazione del coupon di retention nella configurazione del portale.
Questa è prevenzione, non win-back, ma conta per un motivo: se un cliente ha già rifiutato uno sconto durante la disdetta, è difficile che lo stesso sconto inviato una settimana dopo vada a segno. Registra cosa è stato offerto e rifiutato.
Pianifica la sequenza di win-back
Una sequenza pratica per la maggior parte dei prodotti in abbonamento:
| Quando | Chi | Messaggio |
|---|---|---|
| Prima della fine del periodo | Disdette programmate | Promemoria della data di fine, un clic per tenere il piano |
| Giorno 30 | Tutto il churn volontario | Cosa è cambiato da quando se ne sono andati, legato al loro motivo |
| Giorno 60 | Chi non è tornato | Un’offerta specifica, se il motivo era il prezzo |
| Giorno 90 | Chi non è tornato | Un ultimo messaggio senza pressione, e un modo facile per non ricevere più email |
Abbina il messaggio al valore di feedback:
too_expensive: apri con un piano più economico o uno sconto a tempo per chi torna.missing_features: aspetta di rilasciare qualcosa di pertinente, poi di’ cos’è. Nessuno sconto necessario.unusedotoo_complex: offri aiuto per iniziare, una breve chiamata o una guida, non soldi.switched_service: chiedi cosa fa meglio l’altro strumento. Alcuni tornano; la cosa più preziosa è la risposta.customer_serviceolow_quality: scusati in modo specifico e di’ cosa hai sistemato. Uno sconto da solo suona sbrigativo.
Esempi di email complete sono nei nostri esempi di email di win-back.
Tieni pulita la lista
- Escludi i clienti che hanno contestato un addebito (
reasonèpayment_disputed). - Escludi chiunque abbia chiesto di non essere contattato, e rispetta le regole sul consenso al marketing dove operi.
- Ferma la sequenza nel momento in cui qualcuno si riabbona.
Far ripartire la fatturazione quando qualcuno torna
Usa lo stesso Customer
Crea il nuovo abbonamento sull’ID Customer esistente. Se mandi le persone su Stripe Checkout, passa il cliente esistente invece di lasciare che Checkout ne crei uno nuovo, così storico dei pagamenti e report restano collegati.
Sconti per i clienti che tornano
I coupon di Stripe hanno una durata che stabilisce per quanto tempo si applicano a un abbonamento:
once: solo la prima fattura.repeating: un numero fisso di mesi, che devi specificare.forever: ogni fattura.
Per il win-back, di solito basta un coupon once o un repeating breve. Uno sconto forever per chi torna insegna alle persone a disdire per ottenere un prezzo migliore.
Se condividi un codice, usa un codice promozionale sopra il coupon. Una trappola: i codici promozionali di Stripe possono essere limitati con restrictions.first_time_transaction, e Stripe considera non nuovo un cliente con pagamenti precedenti o fatture non annullate. Un cliente che torna non passerà quel controllo. Usa un codice di win-back dedicato senza quella restrizione, e limitalo invece con una data di scadenza o un numero di utilizzi.
Controlla il metodo di pagamento
La carta registrata quando se n’è andato potrebbe essere scaduta o sostituita nel frattempo. Fai passare il percorso di ritorno da una pagina in cui il cliente conferma o aggiorna la carta, invece di addebitare in silenzio.
Misuralo con onestà
Segui, per mese di disdetta:
- Quanti clienti sono tornati entro 90 giorni, e su quale piano.
- Quali valori di
feedbacktornano di più, e quali mai. - Quanti clienti tornati hanno usato uno sconto, e quanto sono rimasti dopo.
Conta una riattivazione solo quando il nuovo abbonamento è sullo stesso Customer. Senza questo, il tuo tasso di churn e il conteggio dei nuovi clienti sono entrambi sbagliati. Vedi come calcolare il tasso di churn.
Farlo con NoChurn
NoChurn legge le disdette da Stripe, compresi cancellation_details e le risposte del suo flusso di disdetta, e invia email di win-back a 30, 60 e 90 giorni in base al motivo della disdetta. Per gli abbonamenti terminati per un pagamento fallito, la strada migliore è il recupero: smart retry, email di recupero che controlli e una pagina hosted di aggiornamento della carta. La ripartenza dell’abbonamento e il pagamento restano in Stripe. Vedi NoChurn + Stripe.