Updating In App Apple Subscription pricing smoothly - ios

I have published an iOS app version with Apple subscription with $6/month, now in next update I have to update pricing to $12/year.
When I use edit option on iTunesconnect it only allow to edit price i.e. from $6 to $12 but it doesn't allow to edit subscription period i.e. from month to year. Therefore I thought there is only one possibility that create new subscription and associate with app, but still what to do with old subscription like if I remove it from iTunes what will happen to existing users what next update is published?

In our case we don't delete the old in app purchases so that users that already purchased them can keep using them.
In the next app release we make sure that the app display only the new in app purchases with the updated prices.
This way new prices effects only users that are trying to purchase now and have the most updated app version.

Related

How can update the UI of an In App purchase?

I have some doubts using In app purchase. AFAIK only the first In app purchase is approved along with the binary. This is my current state,
I have my app already in AppStore with one weekly subscription.
Now I wonder if the following roadmap is possible:
Update the current IAP UI
Send to apple Apple Review more Weekly and Monthly subscriptions plans(some of them just change the introductory price)
My backend will decide which plan will showed to the user.
My problem now is I'm not able to update my current approved IAP, I modify the name, description and screenshot but when I save the changes the IAP is still Approved. Is it possible update a approved IAP? what about if I want to change the background?
On the other hand, I have another IAP waiting for review the last 5 days. Is it normal? Have I to send along with the binary to the app store review?

How to offer a paid update to existing users in an iOS app?

I have an iOS app, where users can unlock full functionality with an in-app purchase (IAP). I plan to release a major paid update to this app and want to offer a discount for existing users.
Since my app relies on iCloud for user authentication, I wonder how to approach this. If I implement a second IAP solely for existing users, how can the App Store reviewer validate it? As far as I know, the reviewer always uses a fresh account and will therefore only see the IAP for new users.
I see the same problem if I release the update as a separate app. I can set a value in the app group from the old app to decide if the user is eligible for the discount. But the App Store reviewer won't have my old app installed and is, therefore, unable to see and validate the discounted IAP.

How to handle "Limited time only" in-app purchases on Apple App Store?

I want to create some in-app purchases that are available for a limited time only. For example, I want my app to display a product for sale from March-April.
My concern is for the users who buy the product in that time frame. Will they be able to "restore" their purchase after I remove it from sale in April?
I want users who have purchased the product to be able to see it when they launch their app and have access to it if they get a new device or uninstall and reinstall my app.
Yes, it is a very standard behavior across iOS to have a Restore Purchases button in your app. Checkout StoreKit's method: func restoreCompletedTransactions(). This function should return the product they purchased even if you remove it from sale.
Reference: https://developer.apple.com/documentation/storekit/skpaymentqueue/1506123-restorecompletedtransactions

Making changes to existing IAP auto-renewable subscription in App Store Connect

I have an existing app with a $0.99 monthly auto-renewing subscription. I need to change this to a $2.99 yearly auto-renewing subscription, but ensure users are notified by apple of the change so they can accept or decline it, just like when changing price of an existing subscription.
My plan right now is to create a 2.99/yr subscription in the same subscription group as the 0.99/mo subscription and then cancel the 0.99/mo subscription.
Will this notify users to cross grade to new subscription and just drop all my users without giving them option to change to new plan?
After opening a ticket with Apple Technical support, the response was
For price changes to existing auto renew product in App Store
connect, users are alerted and can accept
for duration changes to existing auto renew product in App Store
connect, its not documented what the behavior is
So the path I had to take was
create a 2nd auto-renew product
hide the 1st product in app so users don't see it as an option
show banner in app to prompt the cross grade
send push notifications to prompt the cross grade
I'd be curious what would have happened if I changed price and duration and hit save in App Store connect, but not worth it when I have millions of subscriptions.

while creating an ios app with in app purchase, i have a query

As we all know that once we purchased apple subscription plan from a device with Apple id the same will be resume on other device if have login with that same Apple id.
But here we need that every time the user will login on different device with the same Apple id or different Apple Id, we want's the to user purchase the subscription plan. e.g., If user has purchased 2 Subscriptions then he will be able to use app on two different devices So for that we created multiple subscription products.
Can someone help how we can create multiple products for same functionality So that Apple can approve it.
That would go against Apple's guidelines for allowing users to restore their in app purchases on any new or existing devices.
https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/StoreKitGuide/Chapters/Restoring.html
Users restore transactions to maintain access to content they’ve
already purchased. For example, when they upgrade to a new phone, they
don’t lose all of the items they purchased on the old phone.

Resources