How to generate Code Sign files (All certificates) for iOS app Submission and upload the binary

In this tutorial we'll explain how to generate Code Sign files from start to the end till you can submit the app for a review.

The Code Sign files are actually the Certificates, private key and other files you need to upload to App Domination in order to receive the binary. These Code Sign files are required once you request a Build and Review. If you pick Build and review in under 2 business days you will receive a link to a build (binary) of your app or review notes in case your additional input is required. Binary can be uploaded to App Store by the owner of the app.
 
First of all you' ll need an Apple account.
 
Second you'll need to enroll to Apple Developer Program and enable your account for iTunes Connect.
 
Now let's start by steps.
 
1. CSR FILE
 
We'll need to generate the CSR file using the keychain on your Mac.
 
To generate your own csr file you will need just to request the certificate from the authority using the Keychain
 
Go to Keychain app on your Mac.
 
Once it's open click on Keychain Access, Select Certificate Assistant, then select Request a Certificate from a Certificate Authority.
 
 
Next, in the opened window fields you'll need to specify your Email Address and Common Name.
 
The email has to be the one with which you have registered to iTunes. Common Name can be your Name and Surname for example.
 
Pick Saved to disk.
 
Let me specify key pair information has to be unchecked.
 
Now click Continue button.
 
 
Done. Now your CSR file is ready. It'll have the "CertificateSigningRequest.certSigningRequest" name.
  
2. iOS DISTRIBUTION CERTIFICATE
 
Now with this Generated CSR you can request an iOS Distribution certificate
 
So, let's go to the Certificates section in our Apple account.
 
In this section go to Certificates and click on + button to add a new iOS Distribution.
 
 
In the opened window select the App Store and Adhoc iOS Distribution.
 
 
Click on Continue button. 
 
 
In the next page you'll need to upload your CSR File. Click on Choose File and select the CSR file from the opened window. Remember the CSR file name is CertificateSigningRequest.certSigningRequest
 
Now your certificate is ready and can be downloaded. Click on Download button.
 
The name of the downloaded file'll be ios_distribution.cer. Now once it is generated and downloaded you need to click on ios_distribution.cer two times in order for it to be added to keychain. Click on ios_distribution two times.
 
Done, now your iOS Distribution certificate is added to your keychain and you can export your Private p12 key.
  
3. p12 PRIVATE KEY EXPORT.
 
Go to your Keychain in the Certificates Category search for your new created distribution by the Common Name you have specified in your CSR.
 
Click on the arrow next to the certificate so the key will be opened.
 
 
Right click on the key and pick export. Now select Save and enter your password for the private key then enter your Mac password if asked and select Allow. You'll need to specify this password during submission process in App Domination.
 
 
Done, your p12 private key is also ready. It'll have the Certificates.p12 name.
 
4. ADDING THE APP IDs (Indentifiers)
 
In the same Certificates section in our Apple account go to Identifiers section and click on the + button. 
 
 
 
Select App IDs
 
 
In the opened page you'll need to enter the name of the app in the App ID Description section.
 
Next, select Explicit and enter the Bundle ID in the App ID Prefix section. You can specify the app name with no spaces as a reversed domain name for example com.myapp
 
 
Next scroll down and check the Push Notification option then click on Continue button. 
 
Note! If you do not need a Push Notification to be enabled you can uncheck it before saving the app ID.
 
 
In the opened page click on Register in order to save your new app ID.
 
 
Now the App ID is Ready.
 
5. GENERATING THE THE PUSH NOTIFICATION CERTIFICATE.
 
This steps are required only for those who want to enable Push Notifications in their app. Others can skip step 5.
 
Go to your Identifiers section and find your new created App ID click on it to open the App ID details.
 
 
In the Edit page Go to Push Notification. Select Configure.
 
 
In this opened page click on Create Certificate for the Production SSL.
 
 
In the opened information page click on Continue.
 
In the next page you'll need to Upload the Push Notification CSR. For this you'll have to download the App Domination Push Notification CSR found at the bottom of this page. Now go back to the Apple developer website and select Choose File and upload the new downloaded App Domination Push Notification CSR.
 
 
Then click on Continue. Once it's generated, you need to download it. The download file will have the aps.cer name.
 
 
Now we have the Push Notification certificate also.
 
If you want to use Rich Push Notifications consider to follow this tutorial.
 
Let us proceed to the Provisioning profile.
 
 
 
6. GENERATING THE APP STORE PROVISIONING PROFILE
 
Now in order to generate the Provisioning Profile go to Profiles and click on the Profiles + button.
 
 
 
In the opened page select App Store from the Distribution section and then click on Continue.
 
 
In next page select the App ID you have created and click on Continue.
 
 
In the next page you need to choose your new created iOS Distribution and click on Continue.
 
 
In the next step you'll have to give a name for your provisioning profile.
 
Specify any name and click on Continue.
 
 
In the next page we'll have to Download the Provisioning profile.
 
 
 
Done. Now we have all the Code Sign files we need.
 
We will have to upload these during our submission process on App Domination.
 
 
6.1 GENERATING THE AD HOC PROVISIONING PROFILE.
 
This step is only for those who want an Ad Hoc app to be made.
 
You need to use the same app ID and iOS Distribution, the only thing you need to do is to generate an additional ad hoc provisioning profile. It is necessary only if you'll request an Ad Hoc build.
 
So, let's start with a few steps.
 
Go to the Profile section in your Apple Developer Certificates page.
 
Click on + button and from the opened page select Ad Hoc and click on continue.
 
 
In the next page select your created app ID and click on Continue.
 
 
 
In the next page select the same iOS Distribution you created earlier and click on Continue.
 
In the next page select all the devices you have added to your account for adhoc.
 

Add the name specifying the Ad Hoc type.
 
 
Now generate it and download it.
 
It has to be uploaded during submission process.
 
Submit your application and select Instant Ad hoc.
 
In the Code Sign files page upload your new generated Ad Hoc Provisioning Profile.
 
 
Make sure to provide the p12 Private key and proceed with the submission.
 
Once the build'll be processed you'll receive an install link.
 
In this link just select the install option.
 
Note! that the Ad Hoc Provisioning Profile and App Store Provisioning profile have to be connected to the same App ID and iOS Distribution.
 
If you want to create certificates for more then one application:
 
You need to use for both(all) apps one iOS distribution and one private key with one password. It is a requirement.
 
The only individual files you need for each app in separate are a push certificate and provisioning profile.
 
 
7. UPLOADING CODE SIGN FILES
 
Go to Seattlecloud's website in your App Dashboard.
 
Click on Publish/Ready to publish.
 
Next Start Submission Process. 
 
Pick Build and Review and click on Next, this way we'll send the binary to you.
 
Now the Code Sign Files step.
 
In here you need to upload the:
 
1. iOS Distribution (ios_distribution.cer) to Distribution Certificate
 
2. Provisioning profile (anyname_aprof.mobileprovision) to App Store Provisioning Profile
 
3. Private key p12 (Certificates.p12) to Private Key in .p12 format
 
Click on next Upload and automatically it will be applied for all added code sign files.
 
Now once all the Code Sign files are uploaded you'll need to provide twice the Password you have used for your Private key when you have exported it (Note that it is Case sensitive).
 
 
Click on Next once done.
 
Now you will have to upload the Push Notification certificate. 
 
 
If you want these enabled pick "I want Push Notifications enabled" then in "Please upload your APN Certificate" section click on Choose file and pick the (aps.cer) Click on upload and as a result you have uploaded all certificates. Click on next and proceed with the submission.
 
Now you have uploaded all the certificates and submitted the app for a Build and Review. You'll receive the ipa file once the binary was built. You'll received it by email via a link and in your Application Dashboard. There you'll be able to find a Download button.
 
 
 
8. UPLOADING THE IPA FILE
 
8.1 Once you have downloaded the ipa file (nameoftheapp.ipa) you'll need to upload it to iTunes using the Application Loader from your Mac. Note that a Mac is required for this. Application Loader comes in package with the latest Xcode. 
Open the Application Loader and login with your iTunes Connect account. Note that before you can upload you need to create a New app in your iTunes Connect account
 
Enter My Apps.
 
 
Click on the + button and select new app.
 
Fill all the fields and select the required options.
 
 
 
8.2 Once created you can now upload your application via the Application Loader.
 
Application loader comes with the Xcode (recommended version is 10.x) and can be accessed by going to Xcode - Open Developer Tools - Application Loader.
 
 
When logged in click on the  App Store icon or on Choose button and select your ipa file and Open.
 
 
8.3 Once the binary will be uploaded, you'll need to wait a few minutes until it'll be available in your iTunes Connect account.
 
Now you can go to your new created app in iTunes Connect and click on Prepare for Submission, scroll down to the Build section and click on the + button, then select your new uploaded binary.
 
 
Now you'll need to fill all the required information and submit your application for a review.
 
It has to be done once a year only, but still the Push Notification Certificate and Provisioning Profile has to be individual for each app.
 
Click on the link below to download APN certificate.
 
Have more questions? Submit a request