Obviously, the simplest solution would be for the client to share their account details or add us as ‘team admin’, but that is not what this is about.
- Add us to your iOS Developer Program as ‘team member’.
- Create a ‘Distribution Certificate’, if you haven’t got one already.
- Create a ‘App Store Distribution Provisioning Profile’.
- Export the ‘Distribution Certificate’ assets and send the export and password to us. (For security sake, it’s a good idea to send us the password via other means than the exported certificate. E.g. by phone/SMS.)
- Ensure all relevant contracts have been signed.
- Create the application record in iTunes Connect. Ensure that the app record status in iTunes Connect is ‘Waiting for Upload’.
One way to avoid getting their iTunes connect credentials would be to make them add you to their iTunes connect as a developer. Since Apple has a strange restriction that Apple ID can be added to only one iTunes Connect account, you have to use new email every time customer adds you to their iTunes Connect. For convenience we use a trick with gmail accounts and "+" sign. For example, my email is [email protected], so I send my customer "[email protected]", where organizaton_name is any unique identifier for your customer's organization. This way Apple thinks that this is a new email, and Gmail still sends all the emails to my primary account, so I don't need to create a new mailbox. The only downside is that when apple sends a new marketing email, I receive one for each account :-)