Vous devrez peut-être effectuer des actions de gestion sur les abonnements ou les achats uniques dans le cadre des activités quotidiennes. Par exemple, votre service client peut avoir besoin effectuer des remboursements totaux ou partiels pour les utilisateurs, ou vous devrez peut-être révoquer des droits d'accès dans certains cas. Vous pouvez gérer les commandes depuis la Play Console ou, depuis votre propre système, vous pouvez utiliser API Google Play Developer :
Annuler les abonnements
Les utilisateurs peuvent résilier un abonnement Google Play à tout moment sur le Play Store, mais vous devez aussi leur donner la possibilité de résilier leur abonnement dans votre application et sur votre site Web, le cas échéant.
Le moyen le plus simple d'autoriser les utilisateurs à résilier volontairement est d'utiliser un lien profond vers le sur le Play Store, sur lequel ils peuvent consulter et gérer leur abonnement.
Vous devrez peut-être également déclencher des annulations à partir du backend.
purchases.subscriptions.cancel
vous permet d'annuler un abonnement.
Par exemple, vous pouvez utiliser cette méthode pour désactiver un ancien service.
L'annulation d'un abonnement n'entraîne pas de remboursement et l'utilisateur continue de
jusqu'à la fin de la période de facturation en cours. Annulation d'un
l'abonnement avec cette méthode empêche l'utilisateur de le restaurer
sur le Play Store, mais les utilisateurs pourront toujours se réinscrire via l'application s'ils
nécessaire.
Cette action déclenche un SUBSCRIPTION_CANCELED
pour les développeurs en temps réel.
. Gérez ces résiliations comme décrit dans
Résiliations.
Reporter la facturation
Utiliser subscriptions.defer
pour prolonger la période d'accès d'un abonnement. Pendant la période de report,
l'utilisateur reste abonné à votre contenu, mais le supplément n'est pas facturé.
en temps réel. Lorsque vous reportez la facturation d'un abonnement, les informations d'état sont
sont mis à jour en conséquence et apparaissent dans le champ expiryTime
de la section
informations sur l'état de l'achat:
- Pour les abonnements récurrents actifs, la facturation différée s'étend date de renouvellement.
- Pour les forfaits prépayés, la facturation différée prolonge la date d'expiration.
Voici quelques exemples d'utilisation de la facturation différée:
- Proposer aux utilisateurs un accès sans frais sous la forme d'une offre spéciale, par exemple en leur offrant une semaine sans frais à vos abonnés existants pour qu'ils répondent à une enquête de satisfaction.
- Proposez aux clients un accès sans frais en tant qu'action du service client, par exemple après une interruption prolongée qui a pu affecter leur capacité à utiliser votre service.
La facturation peut être différée pour une période allant d'un jour à un an par appel d'API. Pour différer davantage la fin du droit d'accès, appelez à nouveau l'API. avant la nouvelle date d'expiration.
Cette action déclenche un SUBSCRIPTION_DEFERRED
pour les développeurs en temps réel.
. Pour savoir comment gérer ces événements, consultez Différer la facturation d'un abonné dans À propos des abonnements.
Exemple :
Le service de streaming FitnessGoals souhaite proposer une promotion à encouragez-le à faire de l'exercice régulièrement en février.
Elle décide d'offrir un mois de service supplémentaire à tout abonné qui fait de l'exercice avec FitnessGoals au moins 10 fois au cours du mois de février.
Ils suivent les résultats du défi et, le 1er mars, ils appellent la méthode API
subscriptions.defer
pour chaque achat d'abonnement actif appartenant à qui ont relevé le défi en février.Ces utilisateurs bénéficient d'un mois complet d'exercice régulier supplémentaire des vidéos sans frais, et les utilisateurs indiquent à tous leurs amis comment FitnessGoals les aide à rester en bonne santé !
Effectuer des remboursements et des révocations
Dans de nombreux cas, il peut être utile d'effectuer un remboursement ou de révoquer un abonnement ou un achat unique.
Rembourser intégralement une commande par ID de commande
Avec le orders.refund
API, vous pouvez effectuer le remboursement intégral de toute commande dans les trois ans suivant l'achat.
La méthode orders.refund
reçoit un paramètre de révocation indiquant si oui ou non
l'accès doit être révoqué en plus de fournir le remboursement.
Si vous émettez une révocation avec l'appel de remboursement d'un abonnement, le
est immédiatement résilié et déclenche une SUBSCRIPTION_REVOKED
Notification en temps réel pour les développeurs Lire la gestion du cycle de vie des abonnements
guide Section sur les révocations
pour apprendre à gérer ces événements.
Exemple :
Pour fêter le début de la nouvelle Coupe du monde, l'appli d'e-sport L'équipe Football-Not-Soccer décide de tirer des maillots virtuels sans frais pour tous ses joueurs. qui achètent de nouveaux kits d'équipe dans les premières 24 heures.
Football-Not-Soccer utilise
orders.refund
API sans transmettre de paramètre de révocation pour rembourser les achats de maillots gagnants.
Révoquer et rembourser un abonnement par jeton d'achat
Pour certains cas d'utilisation, vous devrez peut-être révoquer l'accès à l'abonnement d'un utilisateur
et procéder à un remboursement. Play Billing propose des méthodes de révocation, y compris
et les remboursements au prorata via la subscriptionsv2.revoke
API. Avec ce point de terminaison, vous pouvez spécifier revocationContext
pour déterminer le mode de calcul du remboursement.
Cette action déclenche un SUBSCRIPTION_REVOKED
en temps réel pour les développeurs.
Notification. Votre application doit gérer ces résiliations comme décrit dans
Révocations.
Exemple :
- Achat avec le jeton d'achat
1a2b3c4d5e6f7g8h9i0j
- Application avec le nom de package
com.your.app
- Intention d'émettre un remboursement au prorata
Requête HTTP POST:
https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.your.app/purchases/subscriptionsv2/tokens/1a2b3c4d5e6f7g8h9i0j:revoke
Corps de la requête:
{
"revocationContext": {
"proratedRefund": {}
}
}
Remboursements totaux
Si vous devez résilier un abonnement et rembourser le montant total
période de facturation en cours, émettez un remboursement total. Utilisez les
purchases.subscriptionsv2.revoke
et définissez "fullRefund": {}
comme type de remboursement.
Exemple :
Marie dispose d'un abonnement de 30 jours à renouvellement automatique pour le streaming SuperMovies mensuel. Maria a rencontré des problèmes techniques qui l'empêchent de qui accède au contenu. Elle contacte le service client le troisième jour de la facturation. annonçant qu'elle n'a jamais eu accès à l'abonnement.
Le service client trouve les détails de l'achat de l'abonnement de Marie dans son système et déclenche un appel à
purchases.subscriptionsv2.revoke
demandant un remboursement intégral.Le service client indique à Marie qu'elle doit obtenir 100 % le prix de l'abonnement a été remboursé et elle n'est plus abonnée à l'abonnement.
Remboursements calculés au prorata
Si vous devez résilier un abonnement et rembourser partiellement le montant restant
durée des droits d'accès, émettez un remboursement au prorata. Utilisez les
purchases.subscriptionsv2.revoke
et définissez "proratedRefund": {}
comme type de remboursement.
Exemple :
Marie dispose d'un abonnement de 30 jours à renouvellement automatique pour le streaming SuperMovies mensuel. Elle utilise le service avec plaisir depuis un certain temps. Maria contacte le service client le 15e jour de son cycle de facturation, en indiquant qu'elle qui déménage à l'étranger et ne pourra plus utiliser le service le lendemain.
Le service client trouve les détails de l'achat de l'abonnement de Marie dans son système et déclenche un appel à
purchases.subscriptionsv2.revoke
demandant un remboursement au prorata.Le service client indique à Marie qu'elle devrait recevoir environ 50 % de l'abonnement remboursé et que l'accès au service a pris fin immédiatement.