I have an application available to all comers on the App Store and I would like to restrict access to the application. The app is free and because of this, some people download it then find they can't use it and leave bad feedback. Although the description clearly says you need to be an existing customer obviously not everyone is reading it and the bad comments put off our actual clients.
I've looked into the Enterprise account but from what I understand you can only distribute to in-house staff. These are our clients so do not fall under this category.
Can Apple's code signing requirements used to allow select customers to see certain apps?
Best Answer
Solving this problem could go down three routes (and I'll initially answer it generally to be of most use to everyone reading this):
From an experience standpoint, option 3 is far superior for most situations. Abusing the developer program to distribute apps commercially is against the terms of service, and there are technical issues and undue hassle with implementing that potential around the code signing barrier.
Removing the app and only selling to clients might work for your case - using option 2. Only the clients need to sign up, but you get total control about issuing fixes, builds and there is no delay (or benefit) to submitting the app to Apple for review. It doesn't mean you couldn't still submit the same build and price it high enough that people don't buy it, but then refund those customers when they are done evaluating your app, want to get a direct build they can sign.
The last option means you, the developer, need to list your app under VPP (which hides that app from most users of the App Store) and your clients also need to enroll in VPP, but this is Apple's solution to the dilemma you find yourself in.
Both parties need to have a company and jump through some filing paperwork to enter VPP, but it's really the optimal solution for most cases where you don't want to price your app for free on the public store.