Passer au contenu

Suivi des abonnements Google Play

Aperçu de l’intégration

Anchor link to

Les notifications en temps réel pour les développeurs (RTDN) sont le service de serveur à serveur de Google Play qui envoie un message en temps réel chaque fois que le statut d’un abonnement change.

En connectant les RTDN de Google Play à Pushwoosh, vous pouvez réagir à l’ensemble du cycle de vie de l’abonnement, y compris les achats, les renouvellements, les annulations, les problèmes de facturation, les expirations et les remboursements — sans avoir à construire votre propre infrastructure backend. Chaque fois que le statut d’un abonnement change dans le compte Google Play d’un utilisateur, Google en informe Pushwoosh, et Pushwoosh déclenche l’événement PW_Subscription* correspondant sur le profil de l’utilisateur.

Type d’intégration

Anchor link to

Source : Les notifications en temps réel pour les développeurs sont envoyées de Google Play à Pushwoosh.

Événements suivis

Anchor link to

Pushwoosh mappe chaque notification Google Play prise en charge à un ensemble d’événements unifiés PW_Subscription*, afin que vous puissiez déclencher des campagnes à n’importe quelle étape du cycle de vie de l’abonnement.

ÉvénementSe déclenche lorsque
PW_SubscriptionStartUn utilisateur achète l’abonnement pour la première fois.
PW_SubscriptionRenewL’abonnement se renouvelle automatiquement pour une nouvelle période de facturation.
PW_SubscriptionCancelUn utilisateur désactive le renouvellement automatique. L’abonnement reste actif jusqu’à son expiration.
PW_SubscriptionResumeUn utilisateur réactive l’abonnement avant son expiration.
PW_SubscriptionBillingIssueUn paiement de renouvellement échoue et l’abonnement entre dans sa période de grâce.
PW_SubscriptionRecoveredUn renouvellement qui avait échoué est finalement accepté et l’abonnement est de nouveau actif.
PW_SubscriptionExpiredL’abonnement a complètement expiré et n’est plus actif.
PW_SubscriptionRefundGoogle Play révoque l’abonnement (par exemple, après un remboursement).

Chaque événement comporte les mêmes attributs :

  • productID : l’identifiant de produit Google Play de l’abonnement.
  • expiresAt : la fin de la période payée actuelle, sous forme d’horodatage Unix en secondes. Inclus lorsque Google le fournit.
Correspondance des événements avec les notifications en temps réel pour les développeurs

Pour les développeurs qui vérifient l’intégration, chaque événement Pushwoosh correspond à ces valeurs notificationType des RTDN :

Événement PushwooshnotificationType des RTDN
PW_SubscriptionStartSUBSCRIPTION_PURCHASED (4)
PW_SubscriptionRenewSUBSCRIPTION_RENEWED (2)
PW_SubscriptionCancelSUBSCRIPTION_CANCELED (3)
PW_SubscriptionResumeSUBSCRIPTION_RESTARTED (7)
PW_SubscriptionBillingIssueSUBSCRIPTION_IN_GRACE_PERIOD (6)
PW_SubscriptionRecoveredSUBSCRIPTION_RECOVERED (1)
PW_SubscriptionExpiredSUBSCRIPTION_EXPIRED (13)
PW_SubscriptionRefundSUBSCRIPTION_REVOKED (12)

Les autres types de notification, tels que la mise en attente, les changements de prix, les reports et les pauses, sont pris en compte mais ne publient pas d’événement.

Comment ça marche

Anchor link to

Une notification Google Play ne contient aucun identifiant Pushwoosh. Elle inclut uniquement un jeton d’achat et le packageName de l’application. Votre application tague donc chaque achat avec l’identifiant dont Pushwoosh a besoin, et Pushwoosh le relit à partir de l’achat chaque fois qu’une notification arrive.

  1. Le statut d’un abonnement change dans le compte Google Play d’un utilisateur (un achat, un renouvellement, une annulation, etc.).
  2. Google Play publie un message RTDN sur le sujet partagé de Pushwoosh.
  3. Pushwoosh lit l’obfuscatedAccountId de l’achat, que votre application a défini sur <AppCode>:<hwid> au moment de l’achat.
  4. Pushwoosh résout l’appareil dont le HWID correspond, trouve l’utilisateur qui y est lié et publie l’événement PW_Subscription* correspondant pour cet utilisateur.

Cas d’utilisation

Anchor link to

Reconquérir les abonnés sur le départ : La désactivation du renouvellement automatique ne met pas fin à l’accès immédiatement. L’abonnement reste actif jusqu’à la fin de la période payée, et c’est votre fenêtre d’opportunité pour reconquérir l’utilisateur. Sur PW_SubscriptionCancel, lancez un Customer Journey avec une notification push de rétention, un e-mail sur les fonctionnalités qu’il perdrait, ou un message in-app avec une réduction sur le renouvellement avant que l’accès n’expire.

Accueillir les nouveaux abonnés : Déclenchez une série de bienvenue sur PW_SubscriptionStart pour aider les utilisateurs à tirer profit de leur abonnement dès le début et préparer le terrain pour le renouvellement.

Récupérer les paiements échoués : Lorsque PW_SubscriptionBillingIssue se déclenche, un paiement de renouvellement n’a pas abouti et l’abonnement est dans sa période de grâce. Invitez l’utilisateur à mettre à jour son mode de paiement avant de perdre l’accès, et faites un suivi avec PW_SubscriptionRecovered pour confirmer une fois le problème résolu.

Ré-engager les utilisateurs inactifs : Lancez une campagne de réactivation sur PW_SubscriptionExpired avec une offre de retour pour les abonnés qui ont complètement résilié.

Configuration de l’intégration

Anchor link to

Avant de commencer, assurez-vous d’avoir une application Pushwoosh avec FCM configuré (déjà requis pour les notifications push), une application Google Play avec un abonnement, et un accès administrateur à la Play Console.

Définir l’identifiant de compte lors de l’achat

Anchor link to

Pushwoosh identifie le bon utilisateur à partir du HWID de l’appareil, combiné à votre code d’application. Le SDK Android de Pushwoosh expose une fonction d’assistance, getSubscriptionAccountId(), qui renvoie cette valeur déjà formatée en <AppCode>:<hwid>. Passez-la à BillingFlowParams.setObfuscatedAccountId() lorsque vous lancez le flux de facturation de Google Play.

val billingParams = BillingFlowParams.newBuilder()
.setProductDetailsParamsList(productDetailsParamsList)
// Tag the purchase with the Pushwoosh account identifier "<AppCode>:<hwid>"
.setObfuscatedAccountId(Pushwoosh.getInstance().subscriptionAccountId)
.build()
billingClient.launchBillingFlow(activity, billingParams)

Diriger les notifications en temps réel pour les développeurs vers Pushwoosh

Anchor link to
  1. Dans la Google Play Console, allez à Monétiser → Configuration de la monétisation.
  2. Trouvez Notifications en temps réel pour les développeurs et définissez le Nom du sujet sur :
projects/pw-playstore-subscriptions/topics/play-rtdn
  1. Cliquez sur Enregistrer. L’autorisation de publication est déjà accordée au service de notification de Google, il n’y a donc rien d’autre à configurer ici.

Accorder l’accès au compte de service de Pushwoosh

Anchor link to
  1. Dans la Google Play Console, allez à Utilisateurs et autorisations → Inviter un nouvel utilisateur.
  2. Saisissez l’e-mail du compte de service de Pushwoosh :
play-api@pw-playstore-subscriptions.iam.gserviceaccount.com
  1. Sous Autorisations de l’application, ajoutez votre application et accordez l’autorisation Afficher les données financières, les commandes et les réponses à l’enquête sur les annulations (ainsi que l’autorisation d’information sur l’application en lecture seule).
  2. Cliquez sur Enregistrer. Un compte de service n’a pas besoin d’accepter l’invitation. L’accès est actif immédiatement.

Confirmer les événements dans Pushwoosh

Anchor link to

Pushwoosh enregistre chaque événement PW_Subscription* dans votre projet la première fois qu’il se produit, avec les attributs productID et expiresAt. Après un test, ouvrez Audience → Événements pour vérifier que les événements apparaissent. Ils sont alors prêts pour la segmentation, les statistiques et les Customer Journeys.

Construire votre campagne

Anchor link to

Créez un Customer Journey avec une entrée basée sur un déclencheur sur n’importe quel événement PW_Subscription*, par exemple PW_SubscriptionCancel pour la reconquête ou PW_SubscriptionStart pour l’accueil, et ajoutez les messages que vous souhaitez envoyer.

Pour vérifier l’intégration de bout en bout :

  1. Dans la Google Play Console, ouvrez Configuration de la monétisation et cliquez sur Envoyer une notification de test. Un message de succès devrait s’afficher, confirmant que le sujet est correctement configuré.
  2. Effectuez un achat d’abonnement avec l’identifiant de compte défini comme décrit ci-dessus (cela déclenche PW_SubscriptionStart), puis annulez-le depuis Play Store → Abonnements → Annuler (cela déclenche PW_SubscriptionCancel).
  3. Dans le panneau de contrôle de Pushwoosh, ouvrez le profil de l’utilisateur et allez à l’historique des événements.
  4. Confirmez que les événements apparaissent après quelques instants.