Riconquistare gli abbonati che disdicono su Polar
Riconquistare gli abbonati Polar che hanno disdetto: disdetta a fine periodo, uncancel, motivi di disdetta, sconti e una sequenza di win-back per motivo.
Polar rende facile disdire, di proposito. Il suo customer portal permette sempre agli abbonati di disdire a fine periodo, e questa opzione non si può disattivare. È un bene per la fiducia. Significa anche che la tua strategia di win-back deve lavorare con il modello di Polar, non aggirarlo.
Questa guida spiega cosa succede su Polar quando un abbonato disdice, le due finestre in cui puoi riportarlo indietro e come usare motivi di disdetta e sconti per farlo. Si attiene alla documentazione di Polar: Managing subscriptions, il Customer Portal, webhook events, Discounts e il riferimento API Update Subscription (tutti consultati a novembre 2026).
Come funziona la disdetta su Polar
Polar distingue due modi in cui un abbonamento può terminare.
Disdetta a fine periodo
È ciò che fa il cliente nel portale, e ciò che fai tu con cancel_at_period_end: true sull’abbonamento (Managing subscriptions). L’abbonamento resta attivo, il cliente mantiene i suoi benefit, e termina a current_period_end.
La documentazione del Customer Portal dice che la «disdetta a fine periodo» è sempre disponibile per i clienti e che il portale non si può disattivare. Polar lo collega alla legge californiana sul rinnovo automatico (Automatic Renewal Law), che richiede che i clienti possano disdire nello stesso modo in cui si sono iscritti. Puoi disattivare altre azioni del portale (cambi di piano, modifica dell’email), ma non questa.
Revoca
La revoca termina subito l’abbonamento. È riservata al commerciante e, secondo Polar, irreversibile. Avviene anche automaticamente quando i nuovi tentativi di pagamento sono esauriti dopo rinnovi falliti (failed payments).
Gli eventi
La pagina webhook events descrive la sequenza:
| Cosa succede | Eventi inviati |
|---|---|
| Il cliente o il commerciante disdice a fine periodo | subscription.updated e subscription.canceled, subito |
| Il cliente annulla la disdetta in sospeso | subscription.uncanceled |
| Il periodo finisce | subscription.updated e subscription.revoked |
| Il commerciante revoca subito | subscription.updated, subscription.canceled e subscription.revoked insieme |
Quindi subscription.canceled significa «finirà», e subscription.revoked significa «è finito». La tua logica di win-back si basa su entrambi.
Finestra 1: prima che il periodo finisca
Tra subscription.canceled e la fine del periodo, l’abbonamento può ancora essere salvato senza un nuovo checkout. La pagina Managing subscriptions di Polar dice che puoi annullare la disdetta in qualsiasi momento prima della data di fine, il che ripristina l’abbonamento e invia subscription.uncanceled.
Cosa fare in questa finestra:
- Mostra la data di fine nella tua app, con un pulsante «Mantieni il mio abbonamento» che riporta
cancel_at_period_endafalsetramite l’API. - Invia un solo promemoria qualche giorno prima di
current_period_end: cosa perde e quando, con lo stesso pulsante. - Non partire con uno sconto. Il cliente ha ancora accesso e ha già scelto una volta di andarsene. Ricordagli prima il valore.
Registrare il motivo
Polar ha campi nativi per questo. L’abbonamento contiene customer_cancellation_reason e customer_cancellation_comment, e Managing subscriptions elenca i valori del motivo: too_expensive, missing_features, switched_service, unused, customer_service, low_quality, too_complex e other.
L’indicazione di Polar è di compilarli solo con ciò che il cliente ha effettivamente detto, per esempio da un sondaggio di disdetta o da una conversazione con il supporto. Avverte anche che i clienti possono vedere il loro commento di disdetta nello storico acquisti, quindi non metterci mai note interne.
Se disdici dalla tua app, passa il motivo nella stessa PATCH che imposta cancel_at_period_end. L’endpoint List Subscriptions può poi filtrare per customer_cancellation_reason, che è esattamente ciò che serve a una campagna di win-back basata sul motivo.
Finestra 2: dopo la revoca dell’abbonamento
Una volta revocato, l’abbonamento non c’è più. Riportare indietro il cliente significa un nuovo checkout. È qui che aiutano gli sconti di Polar.
Sconti per gli abbonati che tornano
Gli sconti di Polar supportano tre durate per gli abbonamenti:
- Once: solo la prima fattura.
- Repeating: un numero fisso di mesi (
duration_in_months, obbligatorio per questo tipo; Polar dice di moltiplicare per 12 per i prezzi annuali). - Forever: ogni rinnovo.
Uno sconto può avere un codice, da 3 a 256 caratteri alfanumerici, che i clienti inseriscono al checkout. Senza codice, può essere applicato solo tramite l’API. Per un’email di win-back, uno sconto repeating («40% di sconto sui primi 3 mesi al tuo ritorno») è di solito più chiaro di forever.
Sconti sugli abbonamenti ancora in corso
Per la finestra 1, Polar ti permette anche di associare uno sconto a un abbonamento esistente. Il riferimento Update Subscription dice che imposti discount_id, la modifica si applica dal prossimo ciclo di fatturazione, e discount_id: null la rimuove. Questo rende possibile «resta e ottieni 3 mesi a un prezzo più basso» senza un nuovo checkout, insieme all’annullamento della disdetta.
Una sequenza di win-back basata sul motivo
La documentazione di Polar che abbiamo usato non descrive una funzione integrata di win-back o di email marketing, quindi la sequenza parte dal tuo strumento di email, attivata da subscription.revoked.
Abbina il messaggio al motivo
customer_cancellation_reason |
Cosa inviare |
|---|---|
too_expensive |
Un codice sconto a tempo, o un piano più economico |
missing_features |
Una nota quando la funzione esce; non serve uno sconto |
unused |
Cosa è cambiato da quando se n’è andato, e un piano più leggero se ne hai uno |
switched_service |
Un messaggio onesto su cosa fai di diverso, poi basta |
too_complex |
Una breve guida o un’offerta di configurarlo insieme |
customer_service, low_quality |
Una risposta personale dal fondatore o dal responsabile del team, non una campagna |
other o vuoto |
Un breve messaggio generico per sentirsi |
Tempi
Tre contatti bastano: intorno a 30, 60 e 90 giorni dopo la revoca. Fermati alla prima risposta, disiscrizione o nuovo abbonamento (subscription.created per lo stesso cliente).
Consenso
Un ex cliente non è automaticamente qualcuno che ha accettato di ricevere marketing. Verifica la base del consenso per ogni regione prima dell’invio, mantieni il messaggio pertinente al suo motivo e includi una disiscrizione in un clic.
Misura
Monitora, per motivo e per offerta: quanti abbonati revocati avviano un nuovo abbonamento entro 90 giorni, e quanti abbonati che hanno disdetto annullano la disdetta prima della fine del periodo. Gli Analytics di Polar riportano separatamente abbonamenti disdetti e in churn, il che ti aiuta a vedere entrambe le finestre.
Errori comuni
- Rimuovere l’accesso su
subscription.canceled. Il cliente ha pagato il periodo e Polar mantiene l’abbonamento attivo fino alla fine. - Scrivere note interne in
customer_cancellation_comment. Il cliente può vederle. - Indovinare il motivo. Polar chiede che questi campi vengano dal cliente. Un motivo sbagliato fa partire il messaggio di win-back sbagliato.
- Combattere il portale. I clienti possono sempre disdire lì. Rendi migliore il percorso nella tua app: chiedi il motivo, offri un’alternativa adatta, tieni la disdetta a un clic.
Farlo con NoChurn
Polar mantiene l’abbonamento, il checkout e il portale, e la sua opzione di disdetta resta com’è. NoChurn legge i tuoi webhook Polar, aggiunge un flusso di disdetta nella tua app (motivo, un’offerta adatta come uno sconto, una pausa o un cambio di piano, e una disdetta in un clic sempre visibile) e invia email di win-back a 30, 60 e 90 giorni in base al motivo. Ogni cliente riceve un churn score da 0 a 100. Le contestazioni restano a Polar come merchant of record e sono mostrate in sola lettura. Vedi NoChurn + Polar.