We recently got an email by apple on Strong Customer Authentication that will be active on December 31
This triggers an Interrupted purchases. I have tested our app and a blank app and it not working.
I have debug a little bit the file UnityPurchasing.m Especially the paymentQueue function.
Only SKPaymentTransactionStatePurchasing and SKPaymentTransactionStateFailed seem to by returned
I found a similar issue here:
Does anyone have info on that?
On our app
We are using unity 2019.4.14
The package version is 2.1.1
and the plugin version is 2.2.2
On the blank test app
We are using unity 2019.4.14
The package version is 2.1.1
and the plugin version is 2.2.5
Resolve: I just created a new sandbox account and it worked.
Please place numerous Debug.Log statements in your purchasing code to follow the flow and provide the device logs via XCode How To - Capturing Device Logs on iOS Also, I might recommend adding the following code and add similar Debug.Log statements. These callbacks generally do not provide additional transaction information, but simply and immediately let you know that you should expect a ProcessPurchase some time in the future. It’s not determined if the stores would call these callbacks in the SCA flow.
The iOS Ask to Buy deferred listener is described here:
I wouldn’t expect any different behavior when testing with the deferred listener, as described. Do normal purchases succeed? Only these deferred purchases fail?
Yes if i buy without Interrupted purchases it work as expected.
May I add I’m testing on xcode simulator so the test flow is a bit different. Testing In-App Purchases in Xcode | Apple Developer Documentation The flow stop at step 6 of “Test an Interrupted Purchase” so I do not even see the transaction in the Xcode debug windows
My initial test were on testflight I use the simulator for faster iteration.
Thanks
Reading the Apple instructions, it appears that an original OnPurchaseFailed is expected (Step 6 under Begin Testing), followed later by the ProcessPurchase (Step 12). Did you receive the Terms and Conditions popup on the device (Step 8)? Once clearing this, the ProcessPurchase would be expected. Testing In-App Purchases with sandbox | Apple Developer Documentation
I tested using the Sample IAP project, and I see both the initial OnPurchaseFailed callback, followed by the ProcessPurchase callback when I clear the Terms and Conditions. It seems to be working as expected Sample IAP Project
Yes, I tested with a subscription also, using IAP 2.2.5. I’m not using Codeless however, I suspect that is the issue. Please test with the first (scripted) Sample IAP project. I would not recommend Codeless at this time especially with iOS as it does not currently support receipt validation (an Apple requirement) nor SubscriptionManager.
You need to publish to Apple first, define your products, create the screenshots, etc. I tested here without issue. The Sample IAP project writes the debug info to the UI, you should see failed followed by success after you accept the Terms and Conditions. Also, ensure you are using In App Purchasing package manager version 2.2.1 and IAP 2.2.5
Yes I was testing with our apple store app that is already published.
The package version is 2.2.1 and the plugin is 2.2.5
I build directly on my ipad.
Edit: my colleague tested and it does not work either.
Unfortunately I don’t have additional suggestions. Perhaps try making a video (perhaps using a second phone) of the end-to-end testing process. Create a new subscription product if necessary, and create a new test account if necessary. Ensure both OnPurchaseFailed and ProcessPurchase write to MyDebug.
Can you enumerate your exact step from the sample download to buy success?
Maybe you could send your log and video that could help me debug on my side?