Link to app manage subscriptions in app store

IosApp StoreIn App-PurchaseNewsstand KitOpenurl

Ios Problem Overview


Currently with In app purchase the only way to cancel an auto-renewing subscription is to do the following with the device:

Settings > Store > View my account > Manage my subscription

Is it possible programmatically to link directly to the Manage my subscription page in the app store? I know I can open the app store via something like

NSURL *url = [NSURL URLWithString:@"itms-apps://itunes.apple.com"];
[[UIApplication sharedApplication] openURL:url];

I have seen other apps do this but I can't seem to figure out how.

Ios Solutions


Solution 1 - Ios

The new and official way (according to WWDC 2018 Session 705) is the following url: https://apps.apple.com/account/subscriptions

Link for doc: https://developer.apple.com/documentation/storekit/in-app_purchase/subscriptions_and_offers/handling_subscriptions_billing

Solution 2 - Ios

Following this iTunes Connect guide, this URL works:

https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions

> You can link directly to the Manage Subscriptions page in the App > Store without having to write your own manage subscriptions page. To > do so, link to this URL: > https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions

However this will redirect to Safari before redirecting to App Store App. So the user will see app switching twice in their device. Changing https to itms or itms-apps does not seem to just work.

Btw, this only works on the device. It wouldn't work on the simulator.

Solution 3 - Ios

As of Nov 2018, this is the best approach.

if let url = URL(string: "itms-apps://apps.apple.com/account/subscriptions") {
    if UIApplication.shared.canOpenURL(url) {
        UIApplication.shared.open(url, options: [:])
    }
}

Solution 4 - Ios

2018 on IOS its a combination of the answers above. This URL will open the App Store App with the correct view:

itms-apps://apps.apple.com/account/subscriptions

Solution 5 - Ios

The above answers are possibly slightly out of date (including Apple's documentation grrr) as I am receiving a Safari error when trying to use the link:

// old way
https://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions

Using XCode 5.1 and iOS 7.x, I am able to correctly link to the "Manage Subscriptions" section for the app in question using the following openURL: call:

// new way
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"itms-apps://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions"]]

Solution 6 - Ios

use this link to skip past safari and right to the screen in the appstore:

itmss://buy.itunes.apple.com/WebObjects/MZFinance.woa/wa/manageSubscriptions

have fun

Solution 7 - Ios

It seems like the new URL used by Apple in its support pages is https://finance-app.itunes.apple.com/account/subscriptions. This will open the iTunes Store app on any iOS device.

Solution 8 - Ios

In iOS15+, the showManageSubscriptions(in:) function presents the App Store sheet for managing subscriptions.

enter image description here

Solution 9 - Ios

My app has recently been rejected for providing an external subscription management option in my app. The message I got from Apple Dev Team was: "We still found that while you have submitted In App Purchase products for your app, the In App Purchase functionality is not present in your binary. Specifically, the 'Manage Subscriptions' option links out of the app to iTunes Store."

I provided an view so the user can "Restore/Subscribe" to a yearly auto-renewable subscription (of course I have added the underlying logic to detect when the user is subscribed / not subscribed, and a "Manage my subscriptions" button that allows the user to manage his subscription via itunes (which is something I got out from various sources including this post).

I think this should be avoided in order to have the IAP product accepted. Perhaps you faced the same issue when submitting the app to review.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionOneDimensionalmcView Question on Stackoverflow
Solution 1 - IosChaosCoderView Answer on Stackoverflow
Solution 2 - IosEnrico SusatyoView Answer on Stackoverflow
Solution 3 - IosRoborisView Answer on Stackoverflow
Solution 4 - IosmklbView Answer on Stackoverflow
Solution 5 - IosmandersonView Answer on Stackoverflow
Solution 6 - IosgrahamView Answer on Stackoverflow
Solution 7 - IosEthan O.View Answer on Stackoverflow
Solution 8 - IosKazunori TakaishiView Answer on Stackoverflow
Solution 9 - Iosuser740413View Answer on Stackoverflow