google-playgoogle-play-developer-api

Dynamic monthly bill per user in Google Play Billing API


I'd like to dynamically calculate the monthly bill of each paying user in my Android app. I thought about creating a new subscription per user and update it occasionally according to the user's current use - but Google seems to limit a maximum of 1000 in-app subscriptions (products) so I can't create a new subscription for all users as I have more than 1000 paying users.

I can't constantly ask for users approval (bad UX) as my app's nature is enabling the user to perform a specific action that raises the monthly bill, with his full consent and knowledge obviously.

This is kind of "agreement" (at least in PayPal) rather than a classic fixed-price subscription.

Is there a solution for that use case?


Solution

  • Short answer is "no" - this is not possible with in-app purchases from Google (or Apple).

    If you look at apps like Notion which have a "per seat" based billing model (which sounds similar to what you're trying to do), they only offer an individual license for purchase through Apple/Google IAP. If you want a business license that has per-seat billing the only way to buy that is through their website where they have more control over invoicing.

    I've seen other apps that are only using in-app purchases create some pre-set tiers of "buckets" of usage customers could subscribe to. For example single seat, up to 3 seats, up to 10 seats, etc. So the UX isn't as bad every time the customer wants to change their usage, only when they move to a different tier.