My team is working on a digital music app where users can buy music from local artists on their smartphone. We are targeting Android and iOS platforms to start with. We have the following payment mechanisms on our Android app (among others):
- PayTM wallet
- Credit card
- Netbanking
Our Android app passed the review and is live on the play store.
We used the same payment mechanisms on iOS - Apple rejected our submission saying:
We noticed that your app enables the purchase of content, services, or functionality in the app by means other than the In-App Purchase API, which is not allowed on the App Store. Specifically, your app utilises the PayTM wallet system.
Given our business model, what is the best possible way to comply with Apple's In-App Purchase guidelines, yet function in a truly cross-platform manner. Fundamentally, content purchased for an account should sync to all the devices the user is logged in, irrespective of the platform.
We don't mind using Apple's IAP model, however:
- The user's purchase on iOS is mapped to his Apple ID which does not map to his account on our platform. As per Apple's guidelines:
Non-Consumables are In-App Purchases that only need to be purchased once by the user and are available to all devices registered to a user.
Our music is priced by the artists($0.5, $2.4) whereas Apple requires their in-app purchase products to be in specific tiers (Tier1: $0.99, Tier2: $1.99, etc.)
App store allows a maximum of 1000 IAP ids per app. How can we possibly map a product Id uniquely to a piece of music when we have more than 1000 different items to sell?