Universal Purchase: macOS (AppKit) + iOS supported?

I have a macOS app (AppKit-based, not Mac Catalyst) and an iOS app serving a very similar purpose and user group. Both are currently using non-consumable IAPs to unlock functionalities. I‘m considering a subscription model and wonder if both apps could share the same IAP products.

I‘m well aware that both apps need to use the same Bundle ID / App Store Connect entry, so I‘m willing to discontinue the existing Bundle IDs (while keeping the apps installable for existing customers), but Apple‘s info about „Universal Purchase“ is only mentioning Mac Catalyst apps for macOS:

Mac Catalyst. With Xcode 11.4 or later, Mac apps built with Mac Catalyst can share a bundle ID with the iOS version of the app, so universal purchase is supported.

Can an AppKit-based macOS app and an iOS app share the save Bundle ID and offer a Universal Purchase?

Accepted Reply

Can an AppKit-based macOS app and an iOS app share the save Bundle ID … ?

Yes.

and offer a Universal Purchase?

I believe that this is implied by the previous point, but I’m not really an expert on in-app purchase stuff.

You should be able to test this, right? macOS identies your app by its bundle ID, so you can temporarily change the bundle ID of your Mac app’s to the same as your iOS app and that makes it an entirely new app as far as macOS is concerned. You can then test the in-app purchase stuff using its sandbox server.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

  • Hey Quinn, thanks a bunch for confirming - you're really an asset of these forums 😉 Right, I will just check by adding the macOS platform to the iOS ASC entry and upload a "new" macOS build as mentioned. Just too bad there is (still) no way to remove an additional platform item from ASC if it's not used... Cheers!

Add a Comment

Replies

Can an AppKit-based macOS app and an iOS app share the save Bundle ID … ?

Yes.

and offer a Universal Purchase?

I believe that this is implied by the previous point, but I’m not really an expert on in-app purchase stuff.

You should be able to test this, right? macOS identies your app by its bundle ID, so you can temporarily change the bundle ID of your Mac app’s to the same as your iOS app and that makes it an entirely new app as far as macOS is concerned. You can then test the in-app purchase stuff using its sandbox server.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

  • Hey Quinn, thanks a bunch for confirming - you're really an asset of these forums 😉 Right, I will just check by adding the macOS platform to the iOS ASC entry and upload a "new" macOS build as mentioned. Just too bad there is (still) no way to remove an additional platform item from ASC if it's not used... Cheers!

Add a Comment