WIN-BACKSTRIPE

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.

Pubblicato il 5 min di lettura

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:

  1. too_expensive: apri con un piano più economico o uno sconto a tempo per chi torna.
  2. missing_features: aspetta di rilasciare qualcosa di pertinente, poi di’ cos’è. Nessuno sconto necessario.
  3. unused o too_complex: offri aiuto per iniziare, una breve chiamata o una guida, non soldi.
  4. switched_service: chiedi cosa fa meglio l’altro strumento. Alcuni tornano; la cosa più preziosa è la risposta.
  5. customer_service o low_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 feedback tornano 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.

PROMPT

Read https://www.nochurn.sh/llms.txt,
then follow https://www.nochurn.sh/docs/quickstart/
to add NoChurn to this app. Use a test key
(nc_test_…) until I say we go live.

Smetti di perdere ricavi.

  • Gratis fino a $300 MRR
  • Nessuna carta richiesta
  • Attivo in 10 minuti
  • Mai una quota di ciò che recuperiamo