We have an app with auto renewing subscriptions and we're looking to change our subscription model. The new subscriptions will be different enough in scructure that we'd like offer current subscribers the ability to be grandfathered in on their current subscription, continue to auto renew, but have the subscription not be available to new users.
So, Sub A @ $0.99/m will be replaced with Sub B @ $0.99/m
A current user on Sub A will renew on Sub A until they cancel or choose to migrate to Sub B.
A new user would not know Sub A was available and only be able to subscribe to Sub B.
Obviously I can just not show Sub A to new users, but it would still be visible on the App Store listing. Also if the subscriptions are in the same subscription group the user would be able to select it in Apple's subscription management area. If they are not in the same subscription group then the user could put themselves in the position of being subscribed to the same content twice.
Ideally there would be some way to mark the subscription as not "Cleared for Sale" but still be "Cleared for Renewal"
If you unmark cleared for sale then current subscriptions will not be renewed.
1) Don't show anyone subscription A. Current subscribers to subscription A will continue to autorenew subscription A.
2) If a user asks about a subscription then do a restoreCompletedTransactions or a refresh receipt (these might require a log in so only do it after the user asks about a subscription). If they are not subscribed to subscription A show them subscription B.
3) If they are subscribed to subscription A tell them they are already subscribed. Maybe ask if they want to cancel that subscription and convert to subscription B - or don't tell them about subscription B.