I have noticed that my server-side receipt validation code is failing only for the sandbox (the live version of my app in the store works fine, but on Xcode, where I am testing the next version, receipt validation always fails).
I tracked the problem to the php/curl
code where I contact the iTunes server (https://sandbox.itunes.apple.com/verifyReceipt
), and I get this error from curl
:
SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:func(144):reason(134)
I wonder if this has anything to do with the russian guy and his hack... But it only happens with my sandbox code. The live version seems to be working...
Any clues?
Perhaps I should use the 'live' iTunes server for both sandbox and live, as detailed here? in app purchase, production receipt validation now validating sandbox purchases?
(Wasn't aware of this change. Is it still OK?)
EDIT I modified my sandbox-php code to use the LIVE iTunes server (URL: https://buy.itunes.apple.com/verifyReceipt
), and test-user purchases/repurchases are working now. I am still puzzled... Has the sandbox server been deprecated? Does it identify itself with an SSL certificate different than the live environment, which certificate has been revoked?