Per User Based IAP

Im using a package called EasyIAP. This works pretty good except the fact that when a user signs out of their account and signs into another one, the previous users purchases are still active… Is there anyway to clear purchases on sign out? I feel theres gotta be a workaround for this cause it seems ludicrous that you would be forced to store purchases if you have different users that have 2 accounts or so and dont want the purchases across all user sub accounts.

It depends. Normally if your IAP are through Google, they are signed in on their device, so the purchases aren’t tied to the account, but to the device itself. I believe Apple works the same that if a user removes the app, then re-installs it they will get the option to restore purchases which will use the account on the Apple device.

The only way to probably save it on the account is to monitor the purchases and store some information on your backend to determine if they own the IAP.

And it’s designed that way because honestly, most people don’t share phones or even tablets that often, so the account on the device is the one making the purchases normally.

Yeah i get that but say the user signs in to one account on my app and then they want to sign out and back in to another account, it would be nice to not save that purchase info. Cause the way my app works is they can buy a subscription for a feed. If they switch accounts or let someone check their feed on their own account, it wouldn’t be fair that they now get the subbed feed.

Try to find out how many people actually share accounts (I would be amazed if it is even 1% of the phone userbase), and try to imagine how much more money you might make by doing all this extra engineering, which could a) have bugs, b) irritate already-paying users to expect to share content, etc.

In general, don’t waste your time coding for 1% edge cases, unless you’re already making enough money that 1% of that money is worth your time.

You can always reauth every purchase whenever the app runs past a decision point about presenting extra content, but keep in mind now you are irritating the much larger crowd of people who play offline, such as people on airplanes and/or in subway systems. That will likely be far more than 1% of your userbase if it’s a mobile app.

Finally, if you’re so concerned about this, gather some data. Integrate an analytic event that reports the user’s UserID whenever they open some IAP content. I think you’ll be surprised by how often it doesn’t happen.

Also, don’t forget that you now need to be GDPR and CCPA compliant because you’re gathering user data!!

4 Likes