Thank you for answering but the upgrade/downgrade flow works fine. The problem occurs when the Sandbox user tries to buy the subscription again after it was upgraded/ downgraded to another one.
It is possible to do it from Settings->Snbdbox account -> Manage. But it doesn't work from Product. purchase().
Extra call of Transaction.finish() or Clear Purchase History for sandbox user AppstoreConnect has no effect.
Post
Replies
Boosts
Views
Activity
Also, it is possible to complete such payment from IOS Settings -> Sandbox -> Manage (sometimes have to provide sandbox user credentials two times). But not possible by Storekit Product.purchase().
Transaction.finish() call or ClearPurchaseHistory option in AppStoreConnect have no effect.
But in the case of an upgrade/downgrade subscription, everything works as expected. The problem pops up when trying to buy a subscription again that was bought, and upgraded to another one.
So the sandbox user can't buy the same subscription again even when it is not the actual one or the expected one (will be turned on after downgrade).