I want to allow the user to pick the subscription package that is most convenient for their situation similar to how SAAS do it, eg.:
I want it to have 3 tiers: Free, Standard, Pro
As I want to distribute it exclusively in the app store (to avoid setting up my own payment framework, backend, etc) I am limited on the payment options.
I was thinking of creating 2 in-app purchases (Standard & Pro) but that will mean that users will not be able to use family sharing or do volume purchase.
The only solution I can think of is to create 2 extra versions:
MyApp (free to download and with IAP available for upgrades)
MyApp Standard ($X to download, no IAP)
MyApp Pro ($Y to download, no IAP)
Besides the extra work of managing and maintaining 3 apps (despite any automation I might do), there's still the issue of cannibalization of ratings and downloads number that affect the ranking of the main app.
Is there another way to do this?
Apologies for the confusing title, not sure how to make it simpler.
You are correct that there are challenges with subscriptions and I would set aside VPP for now and focus on the tiers. Too many options will confuse everyone and complicate your efforts to track.
The Omni group does excellent work here - they offer a free app with read only functionality and a free trial subscription and two tiers. You could emulate their Mac App Store model quite immediately for either full purchase (and then annually release a new version)
I would then look at VPP - you can push your app to specific clients at pricing points you agree upon, or let them know you'll refund / rebate / discount them post purchase if it's too much work to negotiate one off SKU in the B2B / VPP store.
The benefit of this approach is you still get your free/basic/pro functions through IAP and can toggle the family share feature with one build and one review. You can even roll in a discount for IAP based on previous purchases - so everything I can see you need has already been done (and works for years already).