How to handle external purchases on iOS 15.4 - 17.3 without StoreKit modal?

Hello everyone,

I’m implementing external purchases in my app and I’m using ExternalPurchase.linkToExternalPurchase() on iOS 17.4+ to display the Apple modal for external purchases. However, I need to handle purchases on iOS 15.4 - 17.3, where StoreKit’s external purchase APIs do not provide tokens and return false.

Questions:

  1. What is the recommended fallback for iOS 15.4 - 17.3 since the Apple modal is not available?
  2. Should I display a custom modal or directly open a WebView with the purchase page?
  3. On iOS < 15.4, since external purchase APIs are unavailable, is it acceptable to open the external purchase page directly in Safari instead of within the app?
  4. Will Apple reject the app if I use a custom modal for purchases on iOS 15.4 - 17.3 instead of the Apple-provided one on iOS 17.4+?

I want to make sure my implementation complies with Apple’s guidelines while providing the best experience for users on older iOS versions.

Thanks in advance for your help!

How to handle external purchases on iOS 15.4 - 17.3 without StoreKit modal?
 
 
Q