google-play-servicesin-app-billingin-app-subscription

Sharing a Single Subscription Across Multiple Apps on Google Play


I have two applications designed for the same users and providing similar content, but they are data incompatible. Existing users of the old app have active subscriptions, and I would like to enable them to use this subscription for the new app as well.

Is it possible on Google Play to set up multiple apps to share one subscription? I need to allow users a smooth transition to the new app without needing to purchase a new subscription.


Solution

  • That's not possible on Google Play, but you can run your own licensing server:
    https://developer.android.com/google/play/billing/backend

    This means, subscribing to Pub/Sub and recording everything;
    then this database can be queried, independent of package-name.

    You'd need one Cloud Function or self-hosted API method, which records, and one which queries. Basically very simple, it's just read and write; some NodeJS, Python or PHP skills might be required.

    Each app has it's own Pub/Sub channel, therefore you'd have to subscribe to both.
    Obviously, there won't be any records, unless SUBSCRIPTION_RENEWED once occurred,
    because you've missed to record the previous SUBSCRIPTION_PURCHASED event.

    The data-format looks alike this: