How to submit your iOS application on App Store
Tags: appstore, mobile, application, submission
Published: 2023-01-25 09:35:23

## Prerequisites

You should have at least one *.ipa file*, which is a generated build for iOS ready for production.
You can take a look at [this article](https://dev.to/alexcoding42/how-to-create-production-builds-for-app-store-and-play-store-with-easexpo-and-react-native-491d) if you want to learn how to generate a production ready build with React Native and EAS/Expo

Besides you should have an [Apple Developer Account](
Apple Developerhttps://developer.apple.com)

## Create an app
When you are connected to your developer account, you can click on My Apps from the dashboard
![app store dashboard](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3m536638gnz1irax572m.png)

Then create a new app by clicking on the + icon
![create app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5nqprtqkbtwp2txihksy.png)

Choose `New app`
![new app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/s36hwghm6r4zfjr12r3v.png)

Configure your new app like this
**Bundle ID** should be the one you use in Xcode, you can create a new one or choose an existing one

**SKU** is a unique ID for your app, I recommend using the same as the bundle ID

**User Access** by default should be `Full Access` to make your app available to everyone. But if it is an admin app for example you can choose `Limited Access`

## Fill in the details
The most important section appears first where you have to upload screenshots. You should fill in all the required fields.

For the **Support URL** I recommend using the one from a privacy policies generator where your privacy policies are stored, or the url of your website

For **Marketing URL** you can put the name of your website/portfolio
![version information](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rp44ftxqevlxe7qlb1ki.png)

### Build section

Under the **Build** section should appear the binary that you uploaded from Xcode or another tool. For example in React Native with EAS you just have to configure the `eas.json` file like this

![eas json](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/witcl0res4dzjc8cgw1o.png)

You can find the **ascAppId** from the App Store connect dashboard under App Information section

![ascAppId](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/33v1h0ld5c2n7m1rivc6.png)

The **appleTeamId** can be found in your App Store settings profile

![apple team ID](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t06e1i9lj8upru4vtrcp.png)

Then, to upload your iOS app to the Apple App Store, run `eas submit --platform ios` from a terminal

### App Review Information

The **App Review Information** must be checked and filled **only if** your app contains any authentication. You should provide an account that an Apple support member can use to authenticate through your app, and describe the steps in *Notes*. You can also provide a video in *Attachment*
![app review info](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/mrz3weei6vp598jh0021.png)

## App Information
You must fill in the details according to your needs in this section

![app information](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5igwdkueg3ei1t7ale9c.png)

## Pricing and Availability
You must fill in the details according to your needs in this section

![pricing](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c5ybzh0pwoxmtujooynt.png)

## App Privacy
A very important section. You should fill in the details of your privacy policies according to your app features. This is important to tell the truth as your app will be review by a member of Apple team, and rejection of your app can delay your production deployment.

![privacy policies](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e90e22gk54mkubcchzcv.png)

I recommend strongly to use this [privacy policies generator](https://app.privacypolicies.com/) to ease the process, and you can get a free URL storing your privacy policies

## Submit your app for review
Other sections are not mandatory you can fill in if you want.

When everything is filled you can go back to the dashboard or your app and click on `Add for Review`
![add for review](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8as1utnwarn3mylqijzk.png)

## Ready for sale
When your app is available on App Store, the status should change to `Ready for Sale` from your app dashboard. Please note that the review process can take few days according to the complexity of your app and the detailed information that you have filled. It is important to give clear and accurate information to speed the process.