Non-consumable In App Purchases for Million items - ios

Problem
I am working on app that has millions digital items . I want to implement InAppPurchases for this . So as this is digital content and only once unlock-able/Purchase-able.
What i have already done.
I tried to do this via consumable for same price tier but apple rejected my app and forcing to use **non-consumable.
How to handle the following:
1 - Do i need to create 30k in App Purchases at iTunes ???? (I read somewhere there is a limit of 10k)
2- Is there a way to reuse one in app purchase for type non-consumable.

I'd recommend to you to make user buy points, each point opens one item, and whenever user purchases an item, you record it to user's purchases list (for restore purposes).

Related

In-app purchase, consumable

This is a Cocoa in-app purchase question.
I have a game where you can buy a set of 10 lives, and this is a consumable in-app purchase -- once the lives are used up, the user must buy more.
What happens if the user uses a subset of the lives, say, 5, and then deletes the app, reinstalls, and restores purchases? Apple will tell the user that they purchased a set of 10 lives, and my program will happily oblige and give them 5 extra lives.
Does my server need to keep track of this data? I haven't found any information in the in-app purchase documentation about how to proceed for this.
What happens if the user uses a subset of the lives, say, 5, and then deletes the app, reinstalls, and restores purchases?Apple will tell the user that they purchased a set of 10 lives, and my program will happily oblige and give them 5 extra lives.
No! the consumable products cannot be restored. Even if you provide a Restore IAP, consumable products cannot be restored back. So your concern that the user will get 5 extra lives is baseless, but yes you need to keep track of the lives that are used by the user if your app is syncing data with server.
Here is what Apple docs say,
https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Products.html#//apple_ref/doc/uid/TP40008267-CH2-SW2
Consumable products, by their nature, aren’t synced or restored. Users
understand that, for example, buying ten more bubbles on their iPhone
doesn’t also give them ten more bubbles on their iPad. All other types
of products are made available across all of the user’s devices.
They’re also restored so users can continue to access their purchased
content even after buying a new device. Store Kit handles the syncing
and restoring process for auto-renewable and free subscriptions and
for non-consumable products.
Products that expire or get used up—consumable products,
auto-renewable subscriptions, and non-renewing subscriptions—can be
purchased multiple times to get the consumable item again or extend
the subscription.

iOS: Can i create my own store with consumable in-app purchase?

i want to build the app and it has consumable in-app purchase feature.
Users can buy coins (consumable in-app purchase), and spend their coins to buy some virtual goods.
The question is, can i build my own store for them to spend their coins?
Every item has each price, users tap on it to buy and pay with coin. All those items on this store can be remote updated online by me, i can change the price, data, add new item every time i want.
So will it fit with Apple policies? Or each item on my store have to be approved by Apple?
And if it works, when user switch the device (change their phone) , how can i do the restore purchase feature?
AS long as your user buy coins, what he does with it is not the matter of Apple. A good example is Free-2-Play games like "Clash of Clans". You only have to create an inApp for each pack of coins you want to sell.
In short, you have to store the coins credit of each user on server side and restore it when your user is authenticated.
If you need a simple solution without any server of yours, I recently used Parse (parse.com) that let you have a database without having your own server.

Sell offline maps as in-app purchases

I plan to sell offline maps in my app:
http://developer.skobbler.com/#plans
To do this I would like to add two consumable items to iTunes Connect:
- one small map
- one large map
After a purchase it will be possible to download the map until it'll be downloaded successfully. Then map will be marked as "downloaded". If user deleted or reinstalled the app, he'll have to buy the item again. But if app data will be transfered to another phone or restored then purchase will be saved.
How does it fit to AppStore policy? Does anyone have this kind of experience?
If you are planning to add the Map feature with inApp purchase than I have some suggestions that you should follow to keep it under the App Store review guidelines & to make sure it gets approved easily without any issues.
Important Points :
First highlight this as a pro feature. You have 2 different Maps with 2 different inApp purchases. So you can highlight inApp purchase screen with 2 different pro features
Second important thing is you have mentioned here you wants to keep it consumable. Which is not possible. You must keep it Non consumable inApp purchase.
As per the current rules you will have to add Restore purchases button into inApp purchase screen. So if any user has already purchased can restore it & use it again.
Hope this helps to everyone.

Maintaining in-app-purchases in iOS

I am implementing ios app in which I want to add In-App purchase (IAP).
I want to use in-app purchase for below situation:
1) User will make registration and pay $10.
2) Now, my app will allow user to download songs. (For ex. 10 songs of $1. So user can download 10 songs.)
3) User can add more credit by again making purchase of $10. (So if user wants to pay 2 times then he/she will get $20 in his/her account. And he can download 20 songs of $1.)
4) While downloading song, my app will check whether user has enough balance or not, then only he can download data. (If there is no balance then it will ask to make payment of $10 first.)
I have make research for above situation and also looked into in-app purchase guidelines from Apple.
From that, I come across below:
1) If I will use subscription: But in that case, user will be charged after some duration (for ex. monthly payment, 3 month payment). Which I don't want. Because I want user to pay only if he wants to download data and not have balance. So I think, subscription is not ideal.
2) If I will user Consumable in-app purchase: Here, I can use it, so user can pay as many times as he want. And I need to track his balance from server side. So, from server APIs, I can check user's balance. But I think, it may conflict with Apple rules.
"Consumable items are the one exception to the requirement that your content be available on all the user’s devices. Consumable items are digital items that are used up or disappear after use and can never be reused. Examples of consumable items include virtual poker chips, in-game ammunition, or virtual supplies such as construction materials."
So, user can make payment from his iPhone device. And he can download songs from his iPad device as well. Means, purchase is sharable.
But,
Consumables are device-by-device items, so their purchase needs to be made with the understanding that they are tied to the specific device. Apple does not let you restore a purchased consumable. You should warn your users that consumables are not shareable, and make it easy for users to purchase smaller blocks of items.
So can someone helps what kind of in-app purchase is suitable for above and also according to Apple Rules regarding in-app purchase.
Thanks in advance.
User "Non-Renewing Subscription" should fit your requirement https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectInAppPurchase_Guide/Chapters/CreatingInAppPurchaseProducts.htm

Purchase non-consumable in app feature multiple times

not sure if this pass as a Stackoverflow question (close if not).
The problem we're facing at the moment is we have an app that we want to allow user to pay to unlock additional content space so they can create more content but be able to purchase multiple copies of that item without being charged twice unless they've exceeded what they've initially purchased.
So a concrete example is this:
Think of a item bag in World of Warcraft that lets user carry more items. (Our app isn't a game but it's the same concept). Users can buy many copies of the bag and at the same time, it doesn't matter if the user log into the app from their home computer or another computer, the bags are still tied to their account.
I'm aware that I have two options really:
Non-Cosumable In App Purchase
User buys the in app purchase item once but does not buy another copy. In other words, they can only ever have 1 copy of that item, not 10 or 20 copies (which our business logic requires in this case).
Consumable In App Purchase
Allows purchasing multiple copies of the item BUT they are non-transferable purchases. This would mean users would need to pay for the same item again even if they bought a new iPad, they can't transfer those "bags" to the new iPad or if they delete the app and reinstall the app, they would still need to pay for those items again.
Subscription based in app purchase doesn't exactly fit our model.
So is there a special type of non-consumable in app purchase but allows the user to buy multiple copies of that item/feature?
Additional Considerations
We do not have a third party server to track users and the number of copies of that item/feature they unlocked.
It also doesn't make sense to make a hundred copies of the in app purchase in iTunes Connect manually.
I think only making a consumable in app purchase is our only option. We're reluctant to force to user to have to pay for unlocking the same content twice but at the same time don't want users to be able to keep creating additional "bags" for free.
If user purchases a non-consumable purchase twice, I am sure Apple store has mechanism to prevent the purchase.
Instead, it would simply say: You have already purchased this product. It will be downloaded again. You will get all the delegates being called normally, and content delivery will happen as per what you have coded, but the customer will not be charged.
To avoid the payment flow, you can store the purchased item under itunes user's keychain, too.

Resources