Step by Step guide on generating an IOS certificate, preparing for Test Flight, and releasing ios app on the App Store

Dipesh Koirala
readytowork, Inc.
Published in
5 min readJul 19, 2023

Developing and releasing an iOS app involves a series of crucial steps that must be carefully followed to ensure a seamless and successful launch. From generating the necessary iOS certificate to preparing for TestFlight testing and ultimately releasing your app on the App Store, each step is crucial to delivering a polished User Experience. In this Detailed guide, I will walk you through the entire process in a step-by-step manner, ensuring you have the necessary knowledge to navigate the process of iOS app deployment.

  1. First step of this process is to enroll in the Apple Developer Program and complete the necessary payment process.
  2. After that, Create an App ID:
  • Select “Identifiers” and click the “+” button to create a new App ID.
Register New Identifier (Page. 1)
Register New Identifier (Page. 2)
  • Provide a unique name for your app, choose the appropriate App ID prefix, and specify the app bundle identifier (e.g.,com.yourcompany.yourapp).
Register New Identifier (Page. 3)

Please note that, on the 7th Step, Select Necessary Capabilities your app has and then proceed to create a new identifier.

3. Next Step is to Generate a Certificate Signing Request (CSR):

  • Open the “Keychain Access” application on your Mac.
KeyChain Access
  • Select “Keychain Access” from the menu bar, then choose “Certificate Assistant” > “Request a Certificate from a Certificate Authority.”
Request a Certificate from CA
  • Enter your email address, choose “Saved to disk,” and click “Continue.”
  • Save the generated CSR file to a location on your computer.

4. Now, Create a Development/ Distribution Certificate:

  • Return to the Apple Developer portal and navigate to “Certificates, Identifiers & Profiles.”
Certificates Tab
  • Select the “Certificates” section and click the “+” button.
  • Choose “iOS App Development” as the certificate type in the list shown below and follow the instructions to upload the CSR file you created.
Generate Certificate (Page-1)
Generate Certificate (Page-2)

Note that, you can create multiple certificates, one for development and the other for distribution. But please be aware that the app signed with the development certificate cannot be used to send the app for review. It works the other way though. You can send the app signed with a distribution certificate to Testflight for testing.

  • Then, Download the generated certificate (.cer) file and double-click to add it to your Keychain.

5. Create a Provisioning Profile:

  • In the Apple Developer portal, go to “ Profiles” and click the “+” button.
Generate Profiles
  • Choose “iOS App Development” or “iOS App Distribution”as the provisioning profile type depending upon your requirement.
Select Provision Profile Type
  • Select the App ID you created earlier and the development certificate you just added.
Profile Provisioning (Page 3)
  • Download the provisioning profile (.mobileprovision) and double-click to install it.

6. Prepare your app for TestFlight:

  • Open Xcode and load your app project.
  • Set the bundle identifier in your Xcode project to match the one you specified in the App ID.
XCode (Signing and Capabilities)

Note: Remember to Select Profile for Release and Debug (Distribution and Development) that you created previously as well.

  • Configure any necessary settings, such as app capabilities and entitlements.
Add Capabilities
  • Now, Build your app using the appropriate development scheme and ensure there are no errors by following the steps as shown in the images below.
Build App

After the Successful Build, it is now ready to Submit to the TestFlight.

7. Upload to TestFlight:

  • In Xcode, select “Product” from the menu and choose “Archive.” But before that, remember to Select “Any IOS Device” to archive it.

Follow the steps shown in the ScreenShots below.

Select IOS Device
Archive Build
  • Once the archive process completes, the Organizer window will open.
Organizer Window
  • Select the archive and click the “Distribute App” button. Follow the window by clicking next and selecting the necessary signing profiles on the process. Lastly, you will be shown a page where you can upload your build to App Store Connect.
  • After Uploading Success, navigate to App Store Connect and select the TestFlight tab. Remember to select the appropriate teams as well, and choose “Internal Testing” or “External Testing” for TestFlight distribution.

8. App Store Release:

App Store Connect
  • Select your app if you have already created one. If you haven’t, click “+” button below to create a new one and fill in all the necessary details shown in the form below.
Create App
New App Create Form
  • After that, Navigate to App Store and fill in all the required metadata, including app name, description, keywords, screenshots, and app icon.
  • Configure pricing, availability, and any additional details for your app as well.
  • Submit your app for review, and once it’s approved, you can set the release date and make it available on the App Store.

Remember to refer to Apple’s official documentation and guidelines for any specific requirements or changes that may occur over time.

This is it for sending your app for review. Feel free to comment down below if you have any confusion. Happy Coding 🎉

--

--