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!

Thank you for your post. We recommend that you sign up for a session with App Review during the weekly Meet with Apple event. Sign in with your Developer ID and select "Request a one-on-one App Review consultation". A member of the App Review team will help you with your questions regarding the review process and the App Review Guidelines.

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