Bugs when testing introductory offers?

Badge +5

I’m trying to test a new introductory offer but it’s proving to be a bit more difficult than anticipated.

I’m running my scheme using a StoreKit Configuration file in the simulator (although the same happens without the file on a device with sandbox user). When testing for eligibility, I get “unknown”. I’ve tried deleting the user from the dashboard and deleting the StoreKit transactions from Xcode > Debug > StoreKit but it doesn’t change the outcome.

The only thing that works is to force StoreKit 2 with .with(usesStoreKit2IfAvailable: true) which I know is deprecated.

This is problematic because now I’m wondering if my app is showing introductory offers correctly to my live users. Any guidance on this would be greatly appreciated! 🙏


As a side-note, this is made more complicated by the fact I’m deploying that intro offer using targeting and custom attributes. When deleting a custom attribute (or a customer), it looks like it’s no longer possible for my app to set a value for those customer’s attributes. No matter how many times I call setAttributes() and syncAttributesAndOfferingsIfNeeded(), the dashboard won’t show those attributes and Targeting won’t send the correct offering. I need to re-add these attributes to that customer manually via the dashboard.

This post has been closed for comments

3 replies

Userlevel 4
Badge +6

Hey @RomanLFB,

You’ll no longer need to force StoreKit 2 - we’ve been rolling out SK2 support for apps without the feature flag, and it does look like your app has been successfully migrated over. As long as you have your in-app purchase key configuration set up (which it looks like you do), you shouldn’t need to do anything additional to support this in your app.

Does the eligibility for the introductory offer show correctly when using an entirely brand new sandbox user without the StoreKit config file? This can be a tricky thing to debug on sandbox or in the simulator. 

Regarding your last paragraph there - that does seem unexpected. Are you able to open a ticket with us at and share debug logs of what’s occurring when you’re attempting to set attributes? 


Badge +5

Hi @kaitlin,

Thanks a lot for your reply. It seems odd because forcing SK2 definitely helps get the right eligibility status back. Could it be something for the team to look into as I’m guessing it shouldn’t make a difference if I’m already enrolled in SK2 on your end?

For what it’s worth, I used a different Apple ID to download the version of my app on the App Store (it checks eligibility in the same way) and it is correctly showing the intro offer so it looks like this is just a sandbox / simulator issue. App Store Connect is being uncooperative and not letting me create new sandbox users at the moment. I’ll circle back on this as soon as I’m able though!

Badge +5

Hi @kaitlin,

App Store Connect eventually allowed me to create a new sandbox tester. I signed into that new one, deleted and re-installed my app. Just like before, I get an unknown eligibility status for the intro offer (unless I force StoreKit 2), just like before.

I’m fairly confident that this is a sandbox issue and won’t happen live but I’ve added some analytics into my next release to check whether users are seeing the intro offer correctly.