StoreKit External Purchase – Regional Restriction Not Working + canPresent() Always Returns False

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • MyrinNew
    Senior Member
    • Feb 2024
    • 5168

    #1

    StoreKit External Purchase – Regional Restriction Not Working + canPresent() Always Returns False

    Hi all,


    We’re working on integrating StoreKit External Purchase into our iOS app and are running into a couple of issues that we could use some help with.


    πŸ”’ Goal


    We’ve been approved under the Alternative Terms Addendum for Apps Distributed in the EU and have StoreKit External Purchase enabled.


    βœ… Our goal: Make this feature available only in the EU, not in the US.


    However, we’re seeing signs that it might be active outside the EU (like in the US), which we don’t want.


    ⚠️ Technical Issue – canPresent() Always Returns false


    While testing, the canPresent() API always returns false, even though our setup seems correct.


    βœ… Setup So Far


    Entitlement added:

    com.apple.developer.storekit.external-purchase


    Info.plist entry added:






    SKExternalPurchase

    dk








    Real iOS device (iPad) used for testing


    App installed via Xcode


    Device signed in with a Sandbox Apple ID set to Denmark


    canMakePayments() returns true


    ❌ What’s Going Wrong


    canPresent() keeps returning false


    App still reports storefront as "USA", even though sandbox ID is set to Denmark


    We've already tried:


    Cleaning the project


    Reinstalling the app


    Verifying provisioning profiles


    Restarting the device


    ❓ Questions


    Are there known delays or caveats with sandbox account region propagation?


    Are there specific device or App Store settings that might override the expected region?


    Would really appreciate any insight or if anyone else has seen this behavior. Thanks in advance!




    More...
Working...