We have been working on native subscription integration within our App and our Backend, but we have difficulty with thorough testing of the final product before it goes to production - namely, the complete flow with various cases using our Backend and Apple Store integration.
We have followed:
Backend documentation: Verify Receipt, Validating Receipts with the App Store, App Store Server Notifications, Notification Type
Frontend (App) documentation: StoreKit, StoreKit Test
WWDC showcase for local StoreKit testing
Sandbox testing: Testing In-App Purchases with Sandbox, Test in-app purchases, Create a sandbox tester account
The issue we have is, that we have no way of testing the realistic flow before we go to production. Local StoreKit testing mocks backend integration and sandbox is unstable and very limited. Every test we've done using sandbox tester accounts, for every single person that tried it, required restarting a device after the initial login to the sandbox account - otherwise, the purchase kept failing. After that, we often had to restart either device or the app. We have found many similar issues throughout forums and so we're unsure if it's Sandbox that can't be trusted or if the implementation still needs some work.
The question is, then, is there a way to test the app-backend-store integration from the end user's point of view, to ensure that there is proper communication between all 3 systems before we release the build to a broader audience? The sandbox environment has also some limitations when it comes to AppStore Server Notifications. Is there any way we can test all notifications for auto-renewable subscriptions and not only those available on a sandbox before the app is released? Does the platform allow for more testing cases after the build is approved in the review?