Cancel All Subscriptions in Google Play - google-play

We currently try to cancel all subscriptions of an app in Google Play. We already contacted the Google Play support, but they told us that there are only two ways to do this:
Manually for every subscriptions in the UI
Using the Google Play API
For the API we need the purchase token of each subscription. I couldn't find a way to get all purchase tokens. The only way I found to get a purchase token is by manually requesting it through the UI.
We need to cancel a lot of subscriptions, so manually clicking around in the UI is no option for us. Is there a way to get all purchase tokens? Or is there a different way to cancel all subscriptions?

If anyone has the same problem, as of right now, it seems it's not possible to cancel all subscriptions using the Google Play API.
We have built a webhook for real-time developer notifications. So for every subscription renewal that is triggered, we immediately revoke the subscription and refund the payment. This seems to work, but is far from great.

Related

Validate more than one receipt at a time from Google developer API

I have a react native app and using react-native-iap library to communicate with Google server to buy the subscriptions. I am using PHP to validate/auto-renewing status of receipt using Google's API i.e https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{{packageName}}/purchases/subscriptions/{{subscriptionId}}/tokens/{{purchaseToken}}. But i am only able to check one subscriptions at a time. Is there any way to check auto-renew status of subscriptions in bulk rather than calling Google's API for each subscription/purchase token ?
I've never heard of this.
What you can do though, is subscribe to real time notifications to know in real time the statuses of your subscriptions:
https://developer.android.com/google/play/billing/getting-ready#configure-rtdn
https://developer.android.com/google/play/billing/rtdn-reference

Cancelling subscriptions for App and Play Store

We have an app for both IOS and Android and it will be ending soon. We have quite a few users who have subscribed on a monthly or annual basis. We will be offering them a deal with another vendor but need to cancel everyone subscription with this app so they don't get rebilled. If we simply pull the apps from the stores will this also cancel their subscriptions or is there something else we need to do?
Also is there an easy way to see how many active subscriptions we have for the app in the various categories?
Thanks in advance.
S

Play & App Store Webhooks / Server Side Code on subscription start and cancel

I need to add server side logic when a user buys and cancels a subscription. To me this seems like a basic feature that many apps probably use. However as it turns out it's not that simple to setup up the need webhooks.
My App will be available on android and iOS, so I will need to configure both, which is why I thought about using RevenueCat. But it turns out, this is a paid feature for $110/month, which is way too much for a/my new app. This is probably the biggest time saver for RevenueCat compared to using the official InApp Purchases packages, so I don't see why they would make it a paid feature.
Anyways what the best way to handle webhooks with the Play Store and the App Store? Any Guides and Tipps would be very helpful!
Apple and Google both offer server-to-server notifications that will notify you when a subscriber cancels.
Apple guide: Enabling Server-to-Server Notifications
Google guide: Real-time developer notifications
If you have your own user Ids, they won't be present in these server notifications so on your server you can save the user Id along with the transaction identifier of their original purchase. That way when a notification comes in you can look up the user from the transaction identifier and flag them as cancelled.
Alternatively, the RevenueCat API is included on their free plan so you can periodically poll their GET /subscribers endpoint to get the latest subscription status for a user. This obviously won't be real-time, but may be enough for your use-case.
Update: I decided to solve this issue similar as #enc_life suggested with the RevenueCat API. For validation the purchase, I send a request to my server, that checks with if the user actually bought the subscription. For canceling the subscription, I execute a function everyday on my server, that checks for all subscribers if the subscription is still valid.

Cancel and refund ALL google play subscriptions

We have an app in the Google Play Store that we will no longer support in the future.
Users were able to buy subscriptions for the app's content.
We want to cancel all running subscriptions and refund the users.
The Google Play Developer Api offers the revoke method that expects the details (subscription id, token) for a single subscription and will cancel & refund that subscription.
We would have to do that for a couple of thousands of users (probably via a script).
Is there a better way to revoke all subscriptions?
Has someone probably faced a similar scenario?
I did not find a method of revoking all subscriptions at once so I wrote a little program that reads subscription data from a file and revokes them, one after another.
You can check it out here: https://github.com/asco33/reimburser

how can I get list of the users data in google play subscriptions

Our app has already implemented in-app purchase.
But, we previously don't keep track of it, and only relies on the google's service whether a user's level is premium or regular.
Now, we want to track it in our server as well.
Is it possible to get the users data who've bought our subscriptions? (especially his/her email)
Based from the following documentations, there is no currently existing method to get a list of your app's subscriber's.
Google Play Developer - API Reference
In-app Subscriptions
Currently existing features with Google Play Developer API is that, it offers an HTTP-based API that lets you perform such tasks as:
Remotely query the validity of a specific subscription at any time
Cancel a subscription
Defer a subscription's next billing date
Refund a subscription payment without canceling the subscription
Refund and revoke a subscription
The API is designed to be used from your backend servers as a way of securely managing subscriptions, as well as extending and integrating subscriptions with other services.
For complete information, you may go through Google Play Developer API.

Resources