New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error when upgrade subscriptions plan #525
Comments
Do we have any solution to fix this? Please help me :( |
so i think the only solution at this time is check if user already bought a subscription before, the UI app shouldn't let user update to another subscriptions plan. |
@tybq93 Could you provide some ideation for the implementation? Maybe I can go over it after that. |
I'm running into this problem too. Related to #274 and #306 (comment) I have 2 subscriptions in the same subscription group (so you can downgrade/upgrade). One for 4.99 and one for 9.99. When I upgrade ( The topic start has a problem during upgrade, but i might think these problems are related. After failure, when I press the "downgrade" button ( Some extra info:
Below some screenshots: Right after pressing Upgrade and calling Next step... Next step, confirming, looks good... Next step, "All set"? But nothing in Next step, |
I've been doing some Google searching, found this from an Apple employee:
@tybq93 have you checked the order of your subscription plans in iTunes Connect? 6 months needs to be on top of the 3 months, since it's an upgrade according to you. You can drag and drop to re-order in iTunes connect in your subscription group Because of this, I think your current situation suggests a "downgrade" and why I think the problem you describe is related to my "downgrade" problem. That Apple topic might also explain why I see the error on downgrade:
I think "downgrading" / "crossgrading" is not testable on the Sandbox environment, but I can't confirm it just yet. Stackoverflow comments suggest it just does not work in Sandbox. But the error is really confusing and wonder if that's still there in Production. Guess the only way to find out is to put it in Production... |
@jvandenaardweg Hey man, thanks for your technical analysis. I am also getting this problem with the sandbox environment. Not sure if it will fix in the production environment or not. Did you have some luck finding out what is causing this problem and how to solve this? |
Also getting this issue in #803 any more insight into this? Any further pointers would be very much appreciated. |
I have similar experience when implementing in-app purchase subscription in iOS native code. And I would suggest:
The iOS in-app purchase sandbox environment is really confusing and even buggy. Upgrading does work, and it should get receipt immediately. Downgrading only happens at next billing period, so does your downgrading receipt. But sandbox environment gives you "maximum 5 automatic renewals", which you cannot (easily) expect how many renewals will occur. What's more, you cannot cancel subscription in sandbox environment, because App Store subscription management page doesn't work in sandbox environment. These have made subscription testing really painful. Read more on my blog post Unpredictable Sandbox Environment for IAP Auto-renewable Subscriptions if you're interested. I got "Cannot connect to iTunes Store" error message at quite a few scenarios (ex. tap some subscription plan), which was confusing for the users, and it does not help error handling at all. That was the reason I got rid of in-app page for upgrading/downgrading subscription on production app. The iOS subscription implementation isn't complete without having your own server for validating receipt and receiving Server-to-Server Notifications. Because iOS users can switch or cancel subscription plans at any time or on any device, without entering the app (i.e. through App Store subscription management page). And you'd better not rely on Abstraction does leak. Deal with it. |
I will get back to this in the next month or two hopefully and will let you know thE outcome @hyochan |
Hey there, it looks like there has been no activity on this issue recently. Has the issue been fixed, or does it still require the community's attention? This issue may be closed if no further activity occurs. You may also label this issue as "For Discussion" or "Good first issue" and I will leave it open. Thank you for your contributions. |
Closing this issue after a prolonged period of inactivity. If this issue is still present in the latest release, please feel free to create a new issue with up-to-date information. |
@jvandenaardweg did you find out how to solve this issue, I can confirm I'm having the same behavior try to upgrade works fine but trying to downgrade fails for me with the following error:
|
Version of react-native-iap
3.0.0-rc.5
Version of react-native
0.59.2
Platforms you faced the error (IOS or Android or both?)
iOS
Expected behavior
When upgrade subscriptions, it's should return new transactionReceipt
Actual behavior
return error code:0 and debugMessage: "cannot connect to itune store" (look like this message is same for all error type)
Tested environment (Emulator? Real Device?)
Real device
Steps to reproduce the behavior
The first time i try subscription for plan 3 Months. Everything work perfect!
But after that, i try to upgrade to plan 6 months, it's still show alert that said purchase was successfully.
But in the purchaseErrorListener function return an error with code = 0, and debugMessage: "cannot connect to iTunes store" (look like this message is same for all error type).. And i also CANNOT get any new transactionReceipt in purchaseUpdatedListener function.
I don't have experience with native swift code, so hard to understand what happen in this module. :(
The text was updated successfully, but these errors were encountered: