VPP is not available in all countries (total 34 at this time?). I'd start by confirming if you and your client can participate.
That process (purchasing) applies to you and your client(s), not the client's users (store distribution).
If the client gives a redeem code to their user, that user can be in any country you've selected via iTunes Connect/Pricing and Availability, for that app. Just remember that not all apps can be made available in all countries.
>(and they don't have an MDM to do this distribution).
Don't conflate MDM distribution, which occurs outside the store, with store distribution.
Thank you. In that case I think I'm good to go.
The list of VPP countries is used to establish the home location of the buisness that is purchasing from you. Once they purchase and distrubute the app it simply needs to be avaliable in the country store where the users are located.
As KMT points out, not all countries can have all apps. Some countries don't have iTunes App Store access at all. You need to verify with your customer that the app can be sold in the countries they want to install it in.
Thanks you. That helps a lot. We are good for the local countries - nowhere strange. VPP would be in the US with distribution mainly in European countries.
Apple, I guess you realize by now that your VPP program does not work based on the problems described by various members here.
Please don't suggest MDM, it is NOT a solution to simply distribute an app to a worldwide organisation's members.
In the BYOD world, this does not work.
We really need to have a simple way of building an app for a customer with 10000 employees, and then get them to install it based on a link they are sent.
Apps like these have their own internal auth mecahanism, so having someone stuble accross the app does not matter.
Google's playstore does this much better. In fact, they don't try to be over complicated with volume programs.
At Wyzetalk we are also developing a branded version of our app for a Multinational Global Business. But we cannot put the app in the general app store, because Apple rejects it because it would say: "Build for the employees of Company ABC".
But we cannot use the VPP program because we are based in South Africa and a executives and employees with Apple phones in UK, Aus and Argentina cannot get the app. That seems a bit strange isn't it?
There is no way a global company implements MDM, because they don't want to, and cannot afford $2 per device for 10000 employees.
So we are stuck. And out advice to our customers ends up being. Try and get your employees Android phones. They don't have that problem.
With Apple's recent stragey of providing cheaper phones, surely they would have realized that more non-desk workers (what the Wyzetalk apps are for) will be using iPhones. So you will have to make it easier for a business to distribute a personalised app for a company.
If you don't understand the real problem, please contact me so that we can explain the real condundrum you left us in. Your team that designed VPP needs to have the relevant information and understand how the problem affects companies like us.
Hi @KMT and @Dubs
So it turns out that this doesn't work.
I did a test run with my customer and they just purchased a single copy of my app from the US App Store, where they are based.
They selected 'Redeemable Code' and once downloaded sent me the link to try (I'm based in the UK).
Clicking on the link gave me the message 'Error - This code is only valid for customers of the United States store'.
My app is definitely available in the UK store (worldwide actually) so that shouldn't be the issue.
I think the process relies on the home store of your client/customer (US in this example), being the same as their user (you/UK) both being the same. In that example, they are not. You, the user, would need to be in the US too, which is why that error is saying valid for US store only.
When Apple says that your VPP customer's users can be in any country where the app is a available, the caveat should apparently be "as long as they are in the same store/country as the VPP customer providing the code".
That certainly seems to be the answer.
It's a bit rubbish though - how can you sell to a global company via VPP (if they don't have an MDM system)? Turns out that you can't!
I'm assuming there must be a way around it, but other than having that company set up a VPP account in each country, I have to admit that I can't think of any!
Sorry for the confusion!
As you found out, VPP redemption codes are country specific to each store. Using managed app distribution via MDM allows the assignment of apps to users or devices.
If the customer is looking to let the users add the apps to their personal Apple IDs with codes, then it isn't a huge step to simply use a MDM to assign the apps to groups of users they invite into their VPP program. In that case the devices don't need to be under management, they just need to be able to invite the employees so they can assign the apps. They can do all of this with just an email address, they don't need to have any knowledge of the user's devices or Apple ID.
Hi there dubs,
I am another person in this exact situation, i.e. we assumed the b2b volume distribution was a good solution to privately sell an app developed for a client. Then we get to the point of sale and find that our client having staff all over the world completely stumps the system and we are completely stuck!
You propose a solution but I'm afraid I don't understand! We had ruled out an MDM solution as they cost money, they need to be installed on staff's devices (which are commonly their own), our staff wouldn't like that sort of control over their devices, we haven't the administrational budget to handle.... etc. All of this lead us to the B2B solution as it seemed to only require sending our staff a redeemable code.
Is there any chance you could describe your suggestion again and pretend you are talking to a 10 year old who genuinely has no clue about it all. If somehow your solution doesn't involve our internationally distributed staff (or rather our client's staff) NOT having MDM software installed, that would be amazing! Alternatively I guess we will have to ask our clients staff to tell their phones they are in their head office's country or something. All a bit embarrasing frankly!
I'm just another person in the same situation. We deal with huge companies (100k+ employees), lots of different locations and eployees all over the world in countries where their AppStore account is not linked to the country they're currently employed.
"it isn't a huge step to simply use a MDM to assign the apps to groups of users they invite into their VPP program"
Could you please elaborate on this sentence? How am I supposed to invite people in our VPP program? Most MDM solutions cost a couple of dollars per user per month, that in combination with an app that costs a couple of cents per user per month, is not really a viable solution.
TL;DR; It comes down to who owns the sourcecode for the style of development. Most large companies have some sort of management on devices that can be used.
Some different scenarios:
You are selling a finished app and retain the source: (You keep the source)
If you are selling a custom app to a customer then they would be the one to distribute it to their users or devices. You would just make it avaliable to their purchasing account in appstore connect.
Redemption works like this:
- Redemption codes will be linked to the country of the store that they were created in. There isn't much that Apple can do about this because of trade and tax restrictions.
- User-based app assignment is tied to the country that the account is from, but as long as the app is avaliable in that country it will be installed.
- Device-based app assignment is tied to the locale of the device, but as long as the app is avaliable in that country it will be installed.
Redemption codes are essentially gift codes. Once burned you can't get them back.
Managed app assignment allows you to assign and reclaim a license from a user or device. In most cases this isn't as critical as it seems as access to corporate data is normally authorized by the user account in an app, not the fact that the app is installed.
The biggest pain point here in my experience is that you need to add each customer as someone who can access the app in appstore connect. The store API doesn't have a way to automate this with a tool like fastlane or even Xcode Server.
You are developing an app and codebase for a customer: (Customer has the source)
If you have developed an internal-use app codebase for a customer as a contractor then they can deploy in two different ways.
- With the enterprise program. With this path they are responsible for building, signing, and distributing the app.
- They can submit their own app to the custom app store and then distribute it to themselves via managed apps.
You are developing an app for your own company use: (You have the source)
You can distribute your own app inside your company in two different ways:
- With the enterprise program. With this path you are responsible for building, signing, and distributing the app.
- You can submit your own app to the custom app store and then distribute it to yourself via managed apps.
On the topics of MDM:
Apple has made some progress this year with the introduction of user-based MDM. This allows for the assignment of apps, but without needing to give total control of the device over to an enterprise.
Nearly every large corporation has access to some sort of MDM solution via their relationships with existing vendors like Microsoft, Google, or VMWare. If they don't have that sort of relationship in place already then the market is pretty saturated with MDM solutions for Apple platforms. Those MDM solutions range from per seat licensing to open source solutions that only require the ability to host and sign the MDM server.
No way. We are in the same situation of other people, and we do not have an MDM.
The problem is serious also because the guidelines are absolutely not clear.
Please suggest us a quick and rasonable solution.
I am in the same situation. Is Enterprise Account a viable solution here.
We are in the exact same situtation, our client has open a VPP account based in the Belgium, but wants to distribute his app internationaly.
The app is available worldwide with vpp distribution:
But in the vpp account, Apple says the redeemable codes are only available in the Belgian Store:
As the client doesn't have a MDM, we are a little bit stuck.
Apple is not clear at all about this restriction and @KMT is right:
Is there any simple solution to investigate?
Would the Developer Enterprise Program bring a solution here?
Anybody find a solution here? We have a customer in different countries. Would they have to setup a VPP account for each country?
If all app users are in the same enterprise then yes. But as a developer, I have to be in their enterprise account. If you are selling to many customers, then for every customer, he has to create his own enterprise program.
Plus, you have to manage distribution (update/manage) by yourself for enterprise solution, which is a lot to do.
Also in the same situation here. Anyone found a solution?
What a drag.
My company is in the same situation ending up having problems with so many customers about this issue.
No clue why Apple is trying to push us to use MDM.
MDM is not an option and Apple does not provide a solution.
Any news on this issue?
We are kind of stuck: distribute the custom B2B app using redemption codes is not possible because of the country restriction. Distribute the app using the public app store is being rejected by Apple because it should be released privately. So now what?
We are trying to distribute an internal app for a multi national company, and the distribution via Business Manager using redemption codes is not possible because of the country restriction.
We then adviced our client to apply for an Enterprise license, but they got rejected for the enterprise program (Reasons unknown).
We have no clue what to do now? The App is ready, but can not be distributed. It is an ugly situation Apple has put us in. Does anybody have an idea for a solutiont to this?
+1 here as well