Win-back et promotional offers sur l’App Store : faire revenir les abonnés
Les win-back et promotional offers d’Apple pour les anciens abonnés iOS : éligibilité, limites, liens directs, vérifications serveur et un plan de reconquête.
Quand un abonnement iOS expire, vous ne pouvez pas simplement envoyer un coupon par email et prélever une carte. Apple détient le paiement, donc toute remise doit être une offre qu’Apple connaît. Apple vous donne deux outils conçus pour cela : les win-back offers, faites pour les personnes dont l’abonnement est déjà terminé, et les promotional offers, qui marchent pour les anciens comme pour les abonnés actuels.
Ce guide explique comment fonctionne chacune, laquelle utiliser et quand, et comment bâtir un plan de reconquête simple autour d’elles. Il s’en tient à la documentation d’Apple : Supporting win-back offers in your app, l’aide d’App Store Connect sur la mise en place des win-back offers et des promotional offers, et Implementing promotional offers in your app (tous consultés en novembre 2026).
Les win-back offers
Apple définit une win-back offer comme une offre gratuite ou à prix réduit pour les clients dont l’abonnement a « churné » : sa date d’expiration est passée et il ne se renouvellera pas automatiquement. Vous les configurez dans App Store Connect, et Apple décide qui est éligible selon les critères que vous choisissez.
L’éligibilité que vous pouvez régler
| Critère | Ce qu’il signifie | Valeurs possibles |
|---|---|---|
| Minimum Paid Duration | Combien de temps le client doit avoir payé l’abonnement | 1 à 24 mois, ou 3, 4 ou 5 ans |
| Time Since Last Subscribed | Il y a combien de temps l’abonnement s’est terminé | Une plage entre 1 et 24 mois ; les deux bornes sont obligatoires |
| Wait Between Offers | Combien de temps après la fin d’une win-back offer le même client peut en utiliser une à nouveau | 2 à 24 mois, facultatif |
Les offres se règlent par produit d’abonnement, pas par groupe. La page d’aide d’Apple précise que les clients ne sont éligibles que pour leur produit expiré le plus récent dans chaque groupe, donc il vous faut une offre sur chaque produit que vous voulez couvrir.
Limites et règles
D’après la page d’aide d’App Store Connect :
- L’abonnement doit être approuvé par App Review avant que vous puissiez créer une win-back offer.
- Jusqu’à 350 win-back offers par abonnement, et au plus 5 par storefront et par abonnement à la fois.
- Types d’offre : pay as you go, pay up front ou gratuite.
- Le début le plus proche est un jour après la création, et une offre doit durer au moins 3 jours.
- Vous ne pouvez pas changer le prix, le nom de référence ni l’identifiant de l’offre après sa création.
- Quand plusieurs offres se chevauchent, Apple en choisit une à afficher selon le prix, la durée et d’autres facteurs comme l’ancienneté payée. Un réglage « High Priority » indique à Apple quelles offres comptent le plus pour vous.
Où les clients les voient
C’est le principal avantage des win-back offers : Apple les affiche pour vous. Une fois en ligne, une offre apparaît sur la page Manage Subscriptions du client (iOS 14.3 et plus) et dans votre app via une feuille StoreKit de win-back offer (iOS 18 et plus). Si vous mettez l’offre en avant avec une image d’abonnement approuvée, elle peut aussi apparaître sur votre page produit et dans les recommandations de l’App Store (iOS 18 et plus).
App Store Connect crée aussi un lien direct de la forme https://apps.apple.com/win-back/ suivi de l’Apple ID de l’offre. Vous pouvez l’envoyer par vos propres canaux, comme l’email.
Vérifiez l’éligibilité avant d’envoyer un lien
Le guide StoreKit d’Apple est explicite : avant d’envoyer un lien direct, appelez Get All Subscription Statuses depuis votre serveur et lisez eligibleWinBackOfferIds dans les informations de renouvellement. N’envoyez le lien qu’aux clients éligibles. Si le tableau contient plusieurs ID, Apple les classe avec la meilleure offre en premier.
Gérez les utilisations hors de votre app
Les clients peuvent utiliser une win-back offer sur l’App Store ou dans les réglages de leur compte, pas seulement dans votre app. Avec Streamlined Purchasing activé (par défaut), l’achat se fait hors de votre app et celle-ci reçoit la transaction plus tard, via Transaction.updates pendant qu’elle tourne ou Transaction.all et currentEntitlements au lancement. Votre app doit les écouter au lancement, débloquer l’accès et finaliser la transaction. Avec Streamlined Purchasing désactivé, votre app reçoit à la place un PurchaseIntent et finalise l’achat elle-même, ce qui est utile si le client doit d’abord se connecter.
Sur votre serveur, une win-back offer utilisée apparaît comme une notification SUBSCRIBED avec le subtype RESUBSCRIBE (d’après le tableau notificationType d’Apple), et la transaction a un offerType de 4.
Les promotional offers
Les promotional offers sont plus anciennes et plus souples. Le guide StoreKit d’Apple dit qu’elles « peuvent être efficaces pour faire revenir les abonnés partis ou retenir les abonnés actuels ». Toute personne ayant un abonnement en cours ou expiré dans votre app est éligible aux yeux d’Apple ; tout critère supplémentaire est à vous de le décider dans votre propre code.
Les compromis :
- C’est vous qui ciblez. Apple n’affiche pas ces offres pour vous. Votre app décide qui voit quelle offre.
- Chaque offre est signée par votre serveur. La signature utilise une clé générée dans App Store Connect, est limitée dans le temps et ne peut servir qu’une fois.
- L’utilisation se fait dans votre app. Apple dit que vous pouvez présenter les offres par des canaux comme l’email, « mais ils doivent interagir avec l’offre dans l’interface de votre app ».
- Limites. Jusqu’à 10 promotional offers actives par abonnement ; elles s’appliquent à tous les storefronts où l’abonnement est vendu, avec des prix par storefront facultatifs. Après la création, seul le prix peut être modifié.
Utiliser une introductory offer n’affecte pas l’éligibilité à une promotional offer.
Laquelle utiliser
| Situation | Le meilleur choix |
|---|---|
| Ancien abonné qui n’ouvre plus votre app | Win-back offer : Apple l’affiche dans les réglages du compte, et vous pouvez envoyer le lien direct par email |
| Ancien abonné qui ouvre encore la version gratuite de votre app | L’une ou l’autre ; une promotional offer vous laisse choisir le moment et le message exacts |
| Abonné qui a désactivé le renouvellement automatique mais est encore actif | Promotional offer (une win-back offer exige que l’abonnement ait expiré) |
| Vous avez besoin de règles fines (par usage, par raison d’annulation) | Promotional offer, avec la logique sur votre serveur |
Beaucoup d’apps utilisent les deux : les promotional offers pour les clients encore dans l’app, les win-back offers comme filet de sécurité qu’Apple affiche partout ailleurs.
Un plan de reconquête concret
- Sachez pourquoi ils sont partis. Une notification
EXPIREDavec le subtypeVOLUNTARYsignifie que le client a désactivé le renouvellement ;BILLING_RETRYque la facturation a définitivement échoué ;PRICE_INCREASEqu’il n’a pas accepté une hausse de prix. Chacun appelle un message différent. Si vous demandez une raison quand les clients gèrent leur abonnement dans votre app, gardez-la aussi. - Attendez un peu. Une résiliation est une décision ; une offre dès le lendemain matin peut paraître insistante. Laissez passer du temps avant le premier message. Votre plage Time Since Last Subscribed doit correspondre à ce plan.
- Adaptez l’offre à la raison. Les raisons liées au prix appellent une remise ; « je ne m’en sers pas assez », un rappel de ce qui a changé, peut-être une courte période gratuite ; un échec de facturation ne demande aucune remise, juste un moyen de revenir.
- Utilisez les canaux que vous avez vraiment. Les notifications App Store ne contiennent pas l’adresse email du client. Vous ne pouvez écrire qu’aux personnes qui vous ont donné leur adresse dans votre propre système de comptes, et il vous faut l’
appAccountTokendéfini à l’achat pour relier leur transaction App Store à ce compte. - Vérifiez l’éligibilité au moment de l’envoi. Appelez Get All Subscription Statuses juste avant d’envoyer un lien de win-back, pas au moment où vous programmez la campagne.
- Mesurez correctement les utilisations. Comptez les notifications
SUBSCRIBED/RESUBSCRIBEdont la transaction porte votre identifiant d’offre, et comparez avec un groupe qui n’a reçu aucune offre. Puis regardez de nouveau quelques mois plus tard : une reconquête qui churne au premier renouvellement au plein tarif vaut moins qu’elle n’en a l’air.
Erreurs fréquentes
- Ne pas gérer les utilisations hors de l’app, si bien que le client paie et que l’app ne débloque rien.
- Envoyer des liens directs sans vérifier l’éligibilité, ce qui mène à un « offre indisponible ».
- Proposer la même remise à tout le monde, y compris aux clients partis à cause d’une carte refusée.
- Oublier l’image si vous voulez que l’offre soit mise en avant sur l’App Store.
Le faire avec NoChurn
NoChurn lit vos App Store Server Notifications, donc il sait qui est parti, quand et pourquoi : volontairement, à cause de la facturation ou d’une hausse de prix. Il peut envoyer des emails de reconquête à J30, J60 et J90 selon la raison de l’annulation, aux clients dont vous avez partagé l’email depuis votre app, et y inclure votre lien direct de win-back ou les renvoyer vers votre app pour une promotional offer. Apple décide toujours de l’éligibilité, affiche l’offre et encaisse le paiement. Détails sur NoChurn + App Store.