Will deleting a subscription from iTunes Connect cancel all subscriptions? - app-store

If I delete a subscription-based product in iTunes Connect, will that cancel all active subscriptions users are having for that product?

Yes. (Sorry, I am answering my own question.)
I just found the following on Apples documentation:
"Important: Removing a product from sale prevents auto-renewable subscriptions from renewing, but it doesn't keep users from being able to restore products that they purchased previously."
See https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectInAppPurchase_Guide/Chapters/WorkingWithYourProductsStatus.html

Related

User can restore the same purchase on different accounts

In my app user can log in with a phone number (account) and purchase auto-renewable subscription. This subscription will be associated with his account so he can log in on another device and see his purchased items. The problem is that he can log in with different phone numbers (accounts) on the same device where the subscription was purchased and restore purchases. So he can restore purchased item for other accounts using the same subscription.
Question: Can we remove Restore Purchases functionality in that case? If we can't how can we handle such situations?
I heard that all apps in Store should have restore purchase button but it doesn't make sense in our case.
See this answer here: https://stackoverflow.com/a/54153169/3166209
In summary, you're required you to have restore functionality, but it doesn't have to be implemented through StoreKit. You'll notice large, cross-platform, subscription apps like Netflix don't have a restore purchases button anywhere for the exact reason you mentioned.

Check if an In-App Purchased has already been purchased iphone

I submitted an iPhone app to the store that got approved, but some things with the inApp purchasing weren't working. The consequence is that the users that tried to install the inApp purchases were charged, and Apple has recorded that they already purchased the additional feature. I have fixed the issue, and I use NSUserDefaults to track whether or not a user has purchased the feature. The problem is the users that have already paid for it. Is there a way to check through Apple whether or not the feature has already been paid for?
Thanks.
See the Restoring Transactions section of the In-App Purchase guide. Specifically:
Store Kit provides built-in functionality to restore transactions for
non-consumable products, auto-renewable subscriptions and free
subscriptions. To restore transactions, your application calls the
payment queue’s restoreCompletedTransactions method. The payment queue
sends a request to the App Store to restore the transctions. In
return, the App Store generates a new restore transaction for each
transaction that was previously completed.
If it is a consumable product (it shouldn't be) then I don't think there is a way to do it via Apple.

Is there an API to cancel an auto-renewable subscription?

I don't currently use any apps that have an in app subscription, so I am not sure what the UI looks like in iTunes when do an in app renewable subscription.
I assumed there was an api, given a receipt id or original transaction id, to cancel the auto-renewable subscription from within the application. It doesn't look like this exists.
Am I missing something or do users cancel auto-renewable subscription through their iTunes account settings? This just isn't the developer's responsibility?
There is no API for this.
The only way to cancel a auto-renewable subscription is from Settings > Store > View my account > Manage my subscription on you iPhone.
Update (as this is fairly old by now): There is no API to cancel an auto-renewable subscription. Apple's documentation suggests that the app links to:
https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions
"Opening this URL launches iTunes or iTunes Store, and then displays the Manage Subscription page."
Recently Apple introduced their new service called "Status Update Notifications" which in essence is simple webhook that's being called when certain events occur on Apple servers. One of these events can be "CANCEL" when Apple's customer support cancels user's subscription. You setup a webhook and they send you a notification with details about this event. More information can be found here: https://help.apple.com/itunes-connect/developer/#/dev0067a330b
I added this reply because this is what Apple recently introduced.

Help with iPhone In-App purchase

We want to sell digital content through subscription model in our app. Is it possible to support a subscription bundle? Let's say content in question is magazine subscription for $0.99 a month. Is it possible to support a bundle of subscription such that user can subscribe to any three magazine by buying a bundle for let's say $1.99? Or is it possible to support eat-all-you-can model - $3.99 for subscribing to all magazines in our app?
According to the official documents from Apple, yes you can. What you need to do is design your iAP store and items according to Apple's requirements.
Getting Started with In App Purchase
on iPhone OS (Version 2.0)
...
Subscriptions
Subscriptions and subscription
renewals to content or services can be
offered to customers for purchase. You
can offer customers the opportunity to
renew their content or service
subscriptions using In App Purchase,
but be sure to define a reasonable
renewal frequency to avoid bothering
users with unwelcome reminders. Be
aware that you are responsible for
both tracking subscription expirations
and for renewal billing; the App Store
does not monitor subscription duration
and does not offer an automatic
billing mechanism. Be sure to indicate
when an item is a subscription when
entering its product information into
iTunes Connect.
Both of these features are supported, they are called consumable and non-consumable in-app purchases.

Remember user purchase info in server model of in-app purchase

IN BUILT_IN MODEL
If i purchase feature through Non-consumable for on application,if i delete it,
If i purchase it again,will apple remember my user_id to purchase it as free?
IN SERVER MODEL?
suppose the app uses server model, may the server use apple to remember that user?
any help please?with explaination?
If your user purchases an item and then loads your app onto another device and purchases the same item, it will not charge the user for the purchase. The answers to your questions are in the docs here:
http://developer.apple.com/iphone/library/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Introduction/Introduction.html
In particular, on the chapter on making a purchase the docs say:
If the user attempts to purchase a
nonconsumable item they have already
purchased, your application receives a
regular transaction for that item, not
a restore transaction. However, the
user is not charged again for that
product. Your application should treat
these transactions identically to
those of the original transaction.