Problem with adding IAP capability to Independent WatchOS app

I have an independent WatchOS App that I wish to add IAP to. I have followed this guide (i.e. signed all documents and set up a product in App Store Connect) and set the deployment target to WatchOS 6.2, but when I want to add the IAP capability it does not show up as an availiable capability in the list.


I suspect it is because I have 3 targets in my project ("WatchApp", "WatchApp WatchKit App" and "WatchApp WatchKit Extension") and, as I understand it, I need to add the IAP capability to the "WatchApp WatchKit Extension", while the Bundle ID in App Store Connect matches the Bundle Identifier of the "WatchApp" and not the "WatchApp WatchKit Extension".


Do I have to delete the app from App Store Connect and recreate it such that the App Store Connect Bundle ID matches the WatchKit Extension Bundle Identifier?

Accepted Reply

It turns out that XCode does not support adding the In App Purchase Capability for independent watchOS apps explicitly - but you don't need to. When you create your App ID in your developer profile it supports IAP's and it works.

Replies

It turns out that XCode does not support adding the In App Purchase Capability for independent watchOS apps explicitly - but you don't need to. When you create your App ID in your developer profile it supports IAP's and it works.

Hi! Cool suggestion about IAP Capability. But at the moment SKProductsRequestDelegate methods returns nothing for me.

Have you find how to test IAP for standalone watchOS app?

I am having the exact same issue

Hi, did you setup successful IAP for independent watchos app?

It seems that don't need add the capability to xcode project, i can get the IAP information (name and price) via package ID

and I also think the bundle id in the itune connect matching with target "WatchApp" is ok.

The problem i meet is when call purchase product func, it alway shows the message "Unable to Purchase App, Sign in with your Apple ID from the Apple Watch app on your iPhone". I want to test with sanbox account too.

If you resolved the problem before, please help me!

Thank!

Sorry about the late reply, guys!

Yes, I was able to test IAP for standalone watchOS app. You need to run you app on a real device (not the simulator), and you need to log in with a Sandbox-account on the bottom of Settings --> iTunes and App Store on your iPhone. Please note that you currently need to create a new Sandbox-account for each test purchase, but from what I remember from WWDC this should be better in watchOS7 with the improved StoreKit.