.storeButton(.visible, for: .policies) shows “Terms of Service Unavailable” — how does it work?

Hi everyone,

I’m using StoreKit 2 with .storeButton(.visible, for: .policies) inside my SubscriptionStoreView. The buttons appear correctly, but when tapped, a sheet opens that says “Terms of Service Unavailable” or “Something went wrong. Try again.”

I’ve already added the required URLs (Privacy Policy and Terms of Use) in App Store Connect under App Information, but they still don’t show in the sheet.

Does anyone know how this is supposed to work? • Are the URLs pulled directly from App Store Connect? • Do they only appear correctly in production? • Or do we need to manually set them in code for testing/TestFlight?

Any insight would be greatly appreciated — just want to make sure everything is in place before submitting for review. Thanks!

Same query here. I've tried everything I can think of to get the terms link to render content based on App Store Connect configuration. I can only get it working in local development in Xcode builds by passing a dedicated url to the supposedly custom terms link field, which, according to both common sense and official developer documentation, isn't necessary. I've set the policy link there, which works, but the terms link never renders the proper content, despite having opted into the standard EULA.

.storeButton(.visible, for: .policies) shows “Terms of Service Unavailable” — how does it work?
 
 
Q