Question

Does an In App Purchase's Product ID have to begin with a Reverse-DNS like com.mycompany.My_Awesome_Game.Level_Pack_1 or can it just be standalone like Level_Pack_1?

Was it helpful?

Solution

Product IDs can be whatever you want, although it is recomend you follow the reverse domain name style. But in the end there's no restriction over the naming of your product IDs. It also does not need to use your app bundle ID as a prefix.

From the source:

Q: I am implementing In App Purchase and must register my product identifiers. What are product identifiers and how do I create and use them in my application?

A: A product identifier is a string used to uniquely identify every product you wish to sell from your application. The App Store uses it to retrieve information about a product. It is a string identifier that can only contain alphanumeric (A-Z,a-z,0-9), underscore (_), and period (.) characters. You can use any sequence of these characters for your identifier. However, we recommend that you use the reverse domain name style (for example, com.companyname.application.productid) when creating your identifier.

So 'Level_Pack_1' —as in your example— would be a valid product id.

OTHER TIPS

i have encountered "no in-app products received (0)" for many months tried to solve this problem. the result:

credits_1 was not allowed, but credits1 is working fine! so, don't use any _- symbols

This is an old question but I'm directed here since recently I've been wondering about the same question. Eventually as I walked through the implementation of IAP in my project this has become clear to me:

  1. if you don't need App Store to host content for your In-App Purchase the Product ID can be any combination of Alphanumeric (A-Za-z0-9), underscore (_) and dot (.);
  2. if you do need App Store to host content the Product ID must be reverse-DNS like (com.yourCompany.yourProduct) and must match the bundle identifier of your In-App Purchase Content project. Later when you archive the content project and upload it with Xcode archive uploader this is how App Store Connect knows how to associate the uploaded content with the in-app purchase product.
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top