Hi
I have a chat application and I want to add a feature of sending sticker messages.
I plan to make the sticker packages available for purchase via IAP.
As I understand, my packages falls under the definition of a nonConsumable product, once the user had bought a sticker package he can use it endlessly and can not buy it again.
As many other chat application my user login method rellay on the user's MSISDN (that's the user ID). The user registers with his phone number and can start sending chat messages to his friends. In addition a user can also use different user IDs, meaning that a single user can hold multiple accounts, each of the accounts is managed in my sevrer independantely from he's other accounts.
The nonConsumable package type raises a problem in my flow, in my DB every account is unique, there is no value for a situation where two accounts are associated with a single user (a single Apple ID), if a user previously bought a sticker package under one account, deactivates and registers with another account he should not be able to restore the purchase. However, when the package is of type nonConsumable and the user tries to buy it with his second account, he receives a system message indicating the package is already purchased and he is able to restore it. This happens because the user is still using the same Apple ID to buy his sticker package.
To my understanding, it appears that either IAP is lacking the mechanism to deal with this flow, or i'm missing it.
I would have liked to classify my stickerPackages in iTunes as consumable product and allow only one purchase for each account, but then, I guess my app will be rejected in the review process (on the count it can only be purchased once).
Do you have any suggestions?
Thank you.