I'm trying to distribute our app through TestFlight's internal testing for our QA Analysts to run some tests in the non-production environment.
In this page: https://developer.apple.com/documentation/storekit/testing-in-app-purchases-with-sandbox
Is stated that: "Apps that you download from TestFlight always run in the sandbox environment." But we ran into the issue from the ProximityReaderAPI requesting a Sandbox account anyway (This token requires a sandbox test account from your Apple Developer account).
Is that not the case for Tap To Pay on iPhone?
Hi @lucas_auttar,
You wrote:
In this page: [...] Is stated that: "Apps that you download from TestFlight always run in the sandbox environment." [...] Is that not the case for Tap To Pay on iPhone?
No. That documentation is specifically scoped to StoreKit and In-App Purchases, not to all Apple services or frameworks.
The sandbox for Tap to Pay on iPhone is a separate sandbox environment from TestFlight builds, and is tied specifically to Apple's payment infrastructure, like Apple Pay. It isn't automatically activated by TestFlight distribution, and requires the device to have. Sandbox Apple Account explicitly signed in. Lastly, the token type (sandbox vs. production) generated by your Payment Service Provider (PSP) or backend must match the environment that the device supports.
Then, you wrote:
[...] But we ran into the issue from the ProximityReaderAPI requesting a Sandbox account anyway (This token requires a sandbox test account from your Apple Developer account). [...]
This error is from the ProximityReader API, and explains that:
- your PSP/backend is generating a sandbox linked token.
- the Apple Account signed into the tester's device is a production Apple Account, not a sandbox one.
Creating and authenticating with a Sandbox Apple Account will resolve this issue.
Cheers,
Paris X Pinkney | WWDR | DTS Engineer