In-App purchase not renew all subscriptions under sandbox? - swift

It's been tested for several test accounts, auto renewal only works on two subscriptions when there are three in total(they were bought within one minute). I then tried to buy the missing subscription individually with a new account, its renewal work well!
Does Apple disable multiple subscriptions renewal under sandbox? if not, any idea what make this error happen?
Thanks.

I guess you're trying to renew more than 6 times per day. Sandbox doesn't work well with renews if you purchase subscriptions too often.
Best practice is testing each subscription group in a new sandbox account.
Do you really have an app with three subscription groups?

Related

Auto Renewable Subscription Free Trial Not Working

I have been trying to add a free trial to my Auto-Renewable subscription in itunes connect. Currently I have added the duration of 1 month trial for a 1 month subscription, however in the app during the purchase flow there is no mention of the trial. Instead it gives the typical dialog "your subscription will start on ...."
Am I missing something? Do I need to enable free trials in a different manner? I have tried using a sandbox user to test in a dev build on a IAP that was not cleared for sale. I have also tried testing on a normal account with an IAP that is currently available and cleared for sale.
PS: please let me know if I should post this kind of question somewhere else.
Thanks
We have an auto-Renewable subscription with free trial. You don't need anything else in addition.
Have you modified an existing already approved purchase or is it a new one? Try creating a new IAP, send it for approval and once cleared for sale test it with a sandbox user.
I needed to create a new subscription product and submit to review. Only after that, I was able to test. Without sending it to review, I wouldn't be able to retrieve it in the app.

iOS in-app subscription / auto-renewable subscription conversion

I'm trying to write an app that has two auto-renewable subscriptions: one regular, one premium. Suppose a user has the regular subscription, is there a way to convert it to a premium subscription and have it be auto-renewable?
Your response is very much appreciated. Thanks!
Because Apple manages much of an Auto-Renewable subscription once it has begun, you have limited control over it. You can always have a user buy a new subscription to your premium account, but I don't think you can force a user to stop auto-renewing on the regular account without removing it from iTunes Connect (or asking them to manually cancel it themselves).

Apple - Suspend / refund in-app auto-renewable subscription

I have an iPhone/iPad application that offers a monthly subscription to a service. Although, this service is totally useless during 2 months in the whole year.
Is there any way to either suspend all my users subscription for 2 months, or give them a 2 months refund every year so they don't pay for a useless service ?
After a good talk with an Apple employee, it is not possible to suspend an auto-renewable product.
Also, 0$ subscriptions do not exist outside NewsStand apps for the moment.
In order to solve our problem, we will have to delete the in-app product in iTunes Connect. This will automatically cancel all active subscriptions we have so the users will not be charged for nothing.
A big downside to this solution is that we will lose all current subscribers, so next year we have to build up a new subscriber bank from scratch.
Maybe you can give two months for free to your users instead of refund them.
Have you found any better alternative, since posting your answer about canceling all subscribers every year?
In addition to 1-year subscriptions, apple lets you do other terms as well, including 1-month subscriptions, for both renewable and non-renewable subscriptions.
Maybe you could make your in-app UI look as if the user is signing up for a long-term subscription, but behind the scenes, your app only sends a 1-month non-renewable subscription request to apple. Then, each month, your app automatically requests another 1-month subscription, and another... just skip the months you want to skip.
The user fills out the subscription form in your UI 1 time. Your app logic remembers how many times to start a new 1-month subscription.

App with Initial time-limited subscription then Auto-Renewable

I have an app that I plan to introduce soon, but I still have a couple of questions even after reading everything I could find. Maybe I'm just missing the obvious. The App requires a service subscription, because of the server monitoring and analysis required in the background.
I'd like the original App purchase to include a one year subscription to the service and then allow the user to renew (preferably I'd like to use the auto-renew option) towards the end of that period.
Can I just note the in the iTunes Store App description that the purchase includes a one year subscription, then prompt with a renewal notice after that period?
I've seen some comments about offering the App for free with limited usability, then doing an In-App Purchase, but I'd like to avoid having customers downloading the app, going through the initialization steps, but then not subscribing.
Any suggestions will be appreciated.
Can I just note the in the iTunes Store App description that the purchase includes a one year subscription, then prompt with a renewal notice after that period?
Yes.

How to handle a auto-renewing subscriptions as a developer

In the this Article Apple wrote how to enable an auto-renewing subscription from the users point of view. But my question is how to handle this auto-renewing subscription as the developer of an app?
In my app (currently in developing) the user can buy some subscriptions (30 days, 3 months and 1 year) via in-app-purchase. After a successful payment I send the bought item identifier to my server to save the new subscription time (also used for other platforms). This works perfectly in the sandbox-environment.
But if I correctly understand the article the auto-renewing subscriptions is performed from inside the AppStore and inside my app. How can I now track the subscription?
If a subscription is autorenewed, the transaction won't pass the paymentQueue:updateTransactions method. The renew just happens on the Store.
If you want to test for it you have to either:
Revalidate the receipt on your application server, if you store the receipt there.
Revalidate the receipt on your iOS client
See: http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/VerifyingStoreReceipts/VerifyingStoreReceipts.html#//apple_ref/doc/uid/TP40008267-CH104-SW1
In order to avoid testing for an autorenew each launch/activation you should store the endDate of the subscription period to test for a renew afterwards.
Also see: http://developer.apple.com/library/ios/#documentation/NetworkingInternet/Conceptual/StoreKitGuide/RenewableSubscriptions/RenewableSubscriptions.html#//apple_ref/doc/uid/TP40008267-CH4-SW4
However, there seems to be a bug in the sandbox. Subscriptions sometimes get renewed, sometimes not. Hard to test....
based on the (rather scant) info found in apple's in-app-purchase documentation, my impression is that whenever you need to determine the state of a user's auto-renewal subscription, you would restore their transactions.
this would cause the app store to send all auto-renewal transactions to your app, at which point you would process the receipts and make the appropriate content available.
presumably, you would only need to do this when the user's current subscription (which you can track locally) is set to expire, or when they are first installing the app.