Reconquérir les abonnés partis sur Polar
Reconquérir les abonnés partis sur Polar : résiliation en fin de période, uncancel, raisons de résiliation, remises et une séquence de reconquête par raison.
Polar rend la résiliation facile, volontairement. Son portail client permet toujours aux abonnés de résilier en fin de période, et cette option ne peut pas être désactivée. C’est bon pour la confiance. Cela veut aussi dire que votre stratégie de reconquête doit composer avec le modèle de Polar plutôt que de le contourner.
Ce guide explique ce qui se passe sur Polar quand un abonné résilie, les deux fenêtres pendant lesquelles vous pouvez le faire revenir, et comment utiliser les raisons de résiliation et les remises pour y parvenir. Il s’en tient à la documentation de Polar : Managing subscriptions, le Customer Portal, les événements webhook, Discounts et la référence API Update Subscription (tous consultés en novembre 2026).
Comment fonctionne la résiliation sur Polar
Polar distingue deux façons de mettre fin à un abonnement.
Résiliation en fin de période
C’est ce que fait le client dans le portail, et ce que vous faites avec cancel_at_period_end: true sur l’abonnement (Managing subscriptions). L’abonnement reste actif, le client garde ses avantages, et il prend fin à current_period_end.
La documentation du Customer Portal indique que « cancel at period end » est toujours disponible pour les clients et que le portail ne peut pas être désactivé. Polar le relie à l’Automatic Renewal Law de Californie, qui exige que les clients puissent résilier de la même façon qu’ils se sont inscrits. Vous pouvez désactiver d’autres actions du portail (changements d’offre, modification de l’email), mais pas celle-ci.
Révocation
La révocation met fin à l’abonnement immédiatement. Elle est réservée au marchand et, selon Polar, irréversible. Elle a aussi lieu automatiquement quand les tentatives de paiement sont épuisées après des renouvellements échoués (paiements échoués).
Les événements
La page des événements webhook décrit la séquence :
| Ce qui se passe | Événements envoyés |
|---|---|
| Le client ou le marchand résilie en fin de période | subscription.updated et subscription.canceled, immédiatement |
| Le client annule la résiliation en attente | subscription.uncanceled |
| La période se termine | subscription.updated et subscription.revoked |
| Le marchand révoque immédiatement | subscription.updated, subscription.canceled et subscription.revoked ensemble |
subscription.canceled veut donc dire « va se terminer », et subscription.revoked « s’est terminé ». Votre logique de reconquête s’appuie sur les deux.
Fenêtre 1 : avant la fin de la période
Entre subscription.canceled et la fin de la période, l’abonnement peut encore être sauvé sans nouveau checkout. La page Managing subscriptions de Polar indique que vous pouvez annuler la résiliation (uncancel) à tout moment avant la date de fin, ce qui annule la résiliation planifiée et envoie subscription.uncanceled.
Que faire dans cette fenêtre :
- Affichez la date de fin dans votre app, avec un bouton « Garder mon abonnement » qui remet
cancel_at_period_endàfalsevia l’API. - Envoyez un rappel quelques jours avant
current_period_end: ce qu’il perd et quand, avec le même bouton. - Ne commencez pas par une remise. Le client a encore l’accès et a déjà choisi de partir une fois. Rappelez-lui d’abord la valeur.
Enregistrer la raison
Polar a des champs natifs pour cela. L’abonnement porte customer_cancellation_reason et customer_cancellation_comment, et Managing subscriptions liste les valeurs de raison : too_expensive, missing_features, switched_service, unused, customer_service, low_quality, too_complex et other.
Polar recommande de ne les renseigner qu’avec ce que le client a réellement dit, par exemple dans un questionnaire de résiliation ou une conversation avec le support. Il prévient aussi que les clients peuvent voir leur commentaire de résiliation dans leur historique d’achats : n’y mettez jamais de notes internes.
Si vous résiliez via votre propre app, passez la raison dans le même PATCH qui définit cancel_at_period_end. L’endpoint List Subscriptions peut ensuite filtrer par customer_cancellation_reason, ce dont une campagne de reconquête par raison a précisément besoin.
Fenêtre 2 : après la révocation de l’abonnement
Une fois révoqué, l’abonnement n’existe plus. Faire revenir le client passe par un nouveau checkout. C’est là que les remises de Polar aident.
Des remises pour les abonnés qui reviennent
Les Discounts de Polar proposent trois durées pour les abonnements :
- Once : la première facture seulement.
- Repeating : un nombre de mois fixé (
duration_in_months, obligatoire pour ce type ; Polar indique de multiplier par 12 pour les prix annuels). - Forever : chaque renouvellement.
Une remise peut avoir un code, de 3 à 256 caractères alphanumériques, que les clients saisissent au checkout. Sans code, elle ne peut être appliquée que via l’API. Pour un email de reconquête, une remise repeating (« -40 % sur vos 3 premiers mois de retour ») est en général plus claire que forever.
Des remises sur les abonnements encore en cours
Pour la fenêtre 1, Polar permet aussi de rattacher une remise à un abonnement existant. La référence Update Subscription indique que vous définissez discount_id, que le changement s’applique à partir du prochain cycle de facturation, et que discount_id: null la retire. Cela rend possible « restez et profitez de 3 mois à prix réduit » sans nouveau checkout, combiné à l’annulation de la résiliation.
Une séquence de reconquête par raison
La documentation de Polar que nous avons utilisée ne décrit pas de fonctionnalité intégrée de reconquête ou d’emails marketing : la séquence part donc de votre propre outil d’emailing, déclenchée par subscription.revoked.
Adaptez le message à la raison
customer_cancellation_reason |
Quoi envoyer |
|---|---|
too_expensive |
Un code de remise limité dans le temps, ou une offre moins chère |
missing_features |
Un mot quand la fonctionnalité sort ; pas besoin de remise |
unused |
Ce qui a changé depuis son départ, et une offre plus légère si vous en avez une |
switched_service |
Un message honnête sur ce que vous faites différemment, puis on s’arrête |
too_complex |
Un guide court ou une proposition de mise en place ensemble |
customer_service, low_quality |
Une réponse personnelle du fondateur ou du responsable d’équipe, pas une campagne |
other ou vide |
Une prise de nouvelles courte et générique |
Le calendrier
Trois contacts suffisent : vers 30, 60 et 90 jours après la révocation. Arrêtez-vous à la première réponse, désinscription ou nouvel abonnement (subscription.created pour le même client).
Le consentement
Un ancien client n’est pas automatiquement quelqu’un qui a accepté de recevoir du marketing. Vérifiez votre base de consentement pour chaque région avant d’envoyer, gardez un message pertinent par rapport à sa raison, et ajoutez une désinscription en un clic.
Mesurer
Suivez, par raison et par offre : combien d’abonnés révoqués démarrent un nouvel abonnement dans les 90 jours, et combien d’abonnés ayant résilié annulent leur résiliation avant la fin de la période. Les Analytics de Polar comptent séparément les abonnements résiliés (canceled) et churnés (churned), ce qui aide à voir les deux fenêtres.
Les erreurs courantes
- Retirer l’accès sur
subscription.canceled. Le client a payé la période, et Polar garde l’abonnement actif jusqu’à sa fin. - Écrire des notes internes dans
customer_cancellation_comment. Le client peut les voir. - Deviner la raison. Polar demande que ces champs viennent du client. Une mauvaise raison envoie le mauvais message de reconquête.
- Lutter contre le portail. Les clients peuvent toujours y résilier. Améliorez plutôt le chemin dans l’app : demandez la raison, proposez une alternative adaptée, gardez la résiliation à un clic.
Le faire avec NoChurn
Polar garde l’abonnement, le checkout et le portail, et son option de résiliation reste telle quelle. NoChurn lit vos webhooks Polar, ajoute un parcours d’annulation dans votre app (raison, une offre adaptée comme une remise, une pause ou un changement d’offre, et un bouton d’annulation en un clic toujours visible), et envoie des emails de reconquête à J30, J60 et J90 selon la raison. Chaque client reçoit un churn score de 0 à 100. Les litiges restent chez Polar, en tant que marchand officiel, et sont affichés en lecture seule. Voir NoChurn + Polar.