Hello Samuel,
I've come across your post from Dec 7, 2016 about your error received when user tries to modify an active in-app purchase (IAP):
[ Unfortunately I get this error every time I receive the "Do you want to modify your subscription to..." dialogue and then top continue. I receive a failed transaction immediately at that point. If the dialogue starts with "Do you want to upgrade to...", then it succeeds. ]
I am experiencing the same thing with implementing auto-renewing monthly subscriptions in my app, and I am wondering if you were able to resolve your issues.
In my situation... When my sandbox user tries to modify (i.e. DOWNGRADE) a currently-active in-app purchase -- where they receive the "Do you want to modify your subscription to..." dialogue -- the store returns the following error info:
SKError(_nsError: Error Domain=SKErrorDomain Code=0 "Cannot connect to iTunes Store" UserInfo={NSLocalizedDescription=Cannot connect to iTunes Store})
At this point, if I just wait until current IAP purchase renews, the new renewal receipt that comes back from the store actually DOES modify the user's IAP according to what the user chose when downgrading the IAP. So the user's downgrade appears to work.
However -- as best I can tell, this appears to create an unwanted side effect. Because my app received this store error, I am guessing that the downgrade transaction never finished (i.e. needsFinishTransaction), which results in repeated future prompts from the device to sign into the Apple ID account (i.e. the sandbox user) I was using for that test purchase. (I presume these prompts are happening because the store is trying to finish any pending transactions (which are pending because it resulted in an error as described).)
Conversely -- if user tries to change their IAP (e.g. UPGRADE) a currently-active in-app purchase -- where they receive the "Do you want to upgrade to..." dialogue -- the purchase succeeds just like you would expect it to, the store immediately returns a new receipt with the new IAP user just upgraded to, and all is fine.
Were you able to find a cause or successful solution to this "user downgrades IAP" error issue?
Thanks!