I'm experiencing an issue where monthly and family monthly subscriptions fail immediately with "purchase cancelled" in TestFlight, while yearly and family yearly subscriptions work correctly.
Setup:
All 4 products in same subscription group
All show "Ready to Submit" status
Using react-native-iap with StoreKit 2
Testing in TestFlight sandbox
The Problem:
Yearly subscriptions work fine
Monthly subscriptions fail immediately with E_USER_CANCELLED (no dialog appears, user didn't cancel)
What I've verified:
No active subscriptions (getAvailablePurchases() returns empty)
No pending transactions
Same subscription group for all products
Product IDs match App Store Connect
Code is identical for all products
Error: E_USER_CANCELLED fires immediately when calling requestPurchase() for monthly products, but yearly products proceed normally.
Questions:
Why would monthly fail while yearly works (same group, same config)?
Could this be sandbox state corruption for monthly products?
Should I delete/recreate the monthly products?
Any insights would be appreciated!
Topic:
App Store Distribution & Marketing
SubTopic:
App Store Connect
Tags:
Subscriptions
StoreKit
In-App Purchase
TestFlight