0

In my app (a paid app without in-app purchase) i want to give a "present" to every new user. The "present" is a bonus item (the app isn't a game, this is only an example) that i'll unlock only one time each app purchase. So i have some alternative:

1. Identify the new purchase by new user registration in my server

This is not a real solution because an user can register multiple times with different emails and get multiple bonus items with only one purchase.

2. Identify the new purchase by user's phone number

This is not a solution because i can't get user's phone with public API

3. Identify the app purchase by the transaction id

This is not a solution because i can't get the transaction id of an app purchase, it is possible only for in-app purchase.

Some of the answers i have found are old, so maybe today something is changed. My question there is a way today to identify in an unique way an app download/purchase without system that use external service (like sms) ?

user31929
  • 1,115
  • 20
  • 43
  • You could use the device check API to provide the gift once per device or a $0 in app purchase to provide it once per Apple ID – Paulw11 Aug 26 '19 at 21:04
  • Thank you, but how i can get an unique id from the device ? I know that i can't use udid anymore. And for Apple ID i can extract the mail of the connected account ? – user31929 Aug 27 '19 at 07:37
  • If you use the Device Check API then Apple takes care of the device identifier - You can set and query two bits associated with the device - You don't need to actually know a device identifier; your server simply asks if "this device" has a bit set or not and sets a bit for "this device". If you use a free IAP then then purchase is in the receipt, so again you don't need to know the Apple ID you simply find out whether "this" Apple ID has purchased the item. – Paulw11 Aug 27 '19 at 09:48
  • thanks again, it seems the right answer, if you want ,set it as an answer and i'll mark it as correct – user31929 Aug 27 '19 at 16:17

0 Answers0