PARCOURS D’ANNULATIONCHARGEBEE

Ajouter un parcours d’annulation à Chargebee

Un parcours d’annulation sur Chargebee : réglages du portail, reason codes, API de résiliation, résiliations programmées et offres loyales.

Publié le 6 min de lecture

Chargebee vous donne beaucoup de contrôle sur la façon dont un abonnement se termine : quand la résiliation prend effet, ce que deviennent les avoirs, si une raison est obligatoire et si les clients peuvent le faire eux-mêmes. Ce qu’il ne vous donne pas par défaut, c’est un parcours : une courte séquence qui demande pourquoi le client part et lui propose quelque chose d’utile avant qu’il ne s’en aille.

Ce guide montre comment fonctionne la résiliation dans Chargebee Billing, quels réglages comptent et comment construire un parcours d’annulation loyal par-dessus, soit avec le produit de rétention de Chargebee, soit avec votre propre page et l’API. Il s’en tient à la documentation de Chargebee : Subscription Cancellation, le Self-Serve Portal, Reason Codes, l’API Cancel a subscription, les types d’événements et le cas d’usage des offres ciblées de Chargebee Growth (tous consultés en novembre 2026).

Comment fonctionne la résiliation dans Chargebee

Les valeurs par défaut du site

La documentation sur la résiliation de Chargebee place les valeurs par défaut sous Settings › Configure Chargebee › Billing LogIQ › Customers & Subscriptions › Subscription cancellation. Vous y réglez :

  • Quand elle prend effet : immédiatement, à la fin de la période en cours, à une date précise ou à la fin de la période de facturation.
  • Ce que devient le temps non utilisé : comment les avoirs sont gérés.
  • Les dérogations : « Allow overriding via Chargebee interface » permet à votre équipe de modifier la valeur par défaut au cas par cas, et « Add condition to this rule » permet un comportement différent selon le canal (interface web, API, Self-Serve Portal, résiliations programmées).

En fin de période : non-renewing

Quand une résiliation est programmée pour la fin de la période, l’abonnement ne se termine pas tout de suite. D’après l’API Cancel a subscription, son statut devient non_renewing et ses cycles de facturation restants passent à 0. Il est ensuite résilié à la fin de la période. Chargebee envoie subscription_cancellation_scheduled quand la résiliation est programmée, un subscription_cancellation_reminder 6 jours avant qu’elle ne prenne effet, et subscription_cancelled quand elle prend effet (types d’événements).

Un abonnement non-renewing peut encore être conservé. Chargebee dispose d’une opération « Remove scheduled cancellation » précisément pour ce cas.

Les périodes contractuelles

Pour les abonnements avec une période contractuelle, la documentation sur la résiliation indique qu’une résiliation depuis le Self-Serve Portal n’a lieu qu’à la fin de la période contractuelle. Dans l’API, ces abonnements utilisent contract_term_cancel_option au lieu de cancel_option.

Laisser les clients résilier eux-mêmes

Dans les réglages du Self-Serve Portal, « Allow customers to cancel subscription » active la résiliation en libre-service. Vous choisissez quand elle prend effet : immédiatement, à la fin de la période, ou au choix du client (qui peut alors aussi choisir une date dans la période d’abonnement). La même section propose la collecte facultative d’un retour, la réactivation et la suppression des résiliations programmées.

Activez-la. Obliger les clients à écrire au support pour résilier crée une friction qui se traduit en chargebacks et en avis mécontents, et dans beaucoup d’endroits la loi attend désormais que résilier soit aussi simple que s’inscrire.

Les reason codes

Chargebee a une liste native de raisons de résiliation. Vous la configurez sous Settings › Configure Chargebee › Reason Codes › Subscriptions › Subscription Cancellation (Reason Codes). Les codes apparaissent ensuite comme choix quand un abonnement est résilié depuis l’interface Chargebee ou le Self-Serve Portal, et vous pouvez les rendre obligatoires.

Dans l’API, l’endpoint Cancel a subscription prend cancel_reason_code : une chaîne sensible à la casse, de 100 caractères au plus, qui doit correspondre à l’un des codes configurés et doit être passée si vous avez rendu les raisons obligatoires.

Gardez la liste courte et exploitable. Six à huit raisons qui appellent chacune une réponse différente valent mieux que vingt que personne ne lit :

Reason code Ce que vous pouvez proposer
Trop cher Une remise pendant quelques mois, ou une offre moins chère
Je ne m’en sers pas assez Une pause, ou une offre plus petite
Je fais une pause / saisonnier Une pause avec une date de reprise
Fonctionnalité manquante Rien à vendre ; notez-la et dites si elle est prévue
Je passe à un autre outil Rien ; demandez ce qu’il a choisi et laissez-le partir
Problèmes techniques Un accès rapide au support
Autre Texte libre

Construire le parcours

Option 1 : le produit de rétention de Chargebee

Chargebee propose des offres sur la page de résiliation via Chargebee Growth (qui a absorbé le produit autrefois appelé Chargebee Retention). Son cas d’usage des offres ciblées décrit trois offres sur une page de résiliation : une remise (liée à un coupon dans Chargebee Billing), une pause et un passage à une offre inférieure, appliqués dans Billing quand le client accepte. Il précise aussi que les abonnés sans moyen de paiement enregistré ne peuvent pas finaliser le changement ni reprendre automatiquement après une pause. Si vous payez déjà Growth, commencez par là.

Option 2 : votre propre page et l’API

Si vous préférez votre propre page, toutes les briques sont dans Chargebee Billing :

  1. Interceptez le bouton d’annulation dans votre app. Affichez votre propre page avant que quoi que ce soit ne soit résilié.
  2. Demandez la raison. Une question, avec vos reason codes Chargebee comme options.
  3. Montrez une offre adaptée à la raison, ou aucune. Utilisez un coupon pour les remises, l’API de pause pour les pauses, ou un changement d’offre.
  4. Gardez « Résilier mon abonnement » visible à chaque étape. Un clic, pas d’écran en plus.
  5. Résiliez avec la raison. Appelez l’endpoint de résiliation avec cancel_option à end_of_term (ou contract_term_cancel_option pour les abonnements sous contrat) et le cancel_reason_code. Notez que end_of_term en booléen est déprécié au profit de cancel_option.
  6. Confirmez clairement. Affichez la date de fin et envoyez un email de confirmation.
  7. Proposez un retour en arrière. Jusqu’à la date de fin, un bouton « Garder mon abonnement » qui supprime la résiliation programmée.

Utiliser la raison après la résiliation

Chargebee indique que cancel_reason_code peut ne pas être renvoyé par défaut pour les abonnements non-renewing quand vous les récupérez ; un réglage au niveau du site l’inclut, pour que vous puissiez agir sur la raison avant l’exécution de la résiliation (Subscription Cancellation). Activez-le si vous voulez des rappels fondés sur la raison pendant la période restante.

Des règles de loyauté à garder

  • La résiliation est toujours à un clic. Une offre est un choix, pas une barrière.
  • Pas plus d’une offre. Une deuxième offre après un « non » ressemble à du marchandage.
  • Ne demandez pas la raison deux fois. Si le client a répondu sur votre page, transmettez-la ; ne lui faites pas choisir à nouveau dans le portail.
  • Appliquez la résiliation immédiatement. S’il refuse l’offre, résiliez, confirmez, et arrêtez-vous là.

Le mesurer

Suivez, par raison : combien de clients ont atteint la page de résiliation, combien ont accepté une offre, et combien de ceux-ci payaient encore 90 jours plus tard. Une rétention qui résilie un mois plus tard est un report, pas une rétention. Les événements subscription_cancellation_scheduled et subscription_cancelled de Chargebee, avec les journaux de votre propre page, vous donnent les trois chiffres.

Le faire avec NoChurn

La résiliation elle-même reste dans Chargebee : NoChurn appelle Chargebee pour résilier, mettre en pause ou appliquer une offre, et le portail de Chargebee continue de fonctionner comme configuré. NoChurn fournit le parcours : raisons, une offre par raison (remise, pause ou changement d’offre) et une annulation en un clic visible à chaque étape, en version hébergée ou headless via l’API. Les réponses alimentent un score de churn de 0 à 100 et des emails de reconquête à J30, J60 et J90 selon la raison. Voir NoChurn + Chargebee.

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.

Arrêtez de perdre du revenu.

  • Gratuit jusqu’à $300 de MRR
  • Sans carte bancaire
  • Prêt en 10 minutes
  • Jamais une commission sur ce que nous récupérons