Special Year-End Offer: AI Review Toolkit $29.99 $49.99 Get it now →

iOS Submission Guide

Deep Dive Guide

Mastering App Store Connect & TestFlight

The technical submission process is often as tricky as the review itself. From configuring Bundle IDs to managing beta testers, this guide covers the essential technical steps to prepare your binary for a successful launch.


1 Setting Up the App Record

Before you can even open Xcode, you must create the "shell" for your app in App Store Connect. This reserves your app name.

Bundle ID Match

The Bundle ID in Connect must match the "Bundle Identifier" in your Xcode project settings exactly (e.g., com.yourcompany.appname).

SKU (Stock Keeping Unit)

This is a unique ID for your internal tracking (like an inventory number). It is not visible to users on the App Store.

Primary Language

Choose carefully. If you set this to English, you can add Spanish later, but changing the "Primary" language (which is the default for unlocalized regions) is a complex process.

2 Uploading the Binary

You cannot upload your app code through the web browser. You must use Apple's developer tools.

Method A: Xcode (Standard)

1. Select "Generic iOS Device" as target.
2. Go to Product > Archive.
3. When the Organizer opens, click "Distribute App".

Recommended

Method B: Transporter

A standalone macOS app. Good if your internet is unstable or if you are uploading a .ipa file generated by a CI/CD pipeline.

3 TestFlight Strategy

TestFlight is your beta testing environment. It helps you catch bugs before the reviewer does.

Internal Testing

  • Audience: Your team (Admins, Developers).
  • Speed: Builds are available almost immediately after processing.
  • Limit: Up to 100 users.

External Testing

  • Audience: Public beta testers via email or public link.
  • Review: Requires Beta App Review. This is a "mini-review" (usually 24 hours).
  • Pro Tip: Passing Beta Review often makes the final App Store review faster.

4 Submission Prep

The "Export Compliance" Question

When you submit, Apple will ask: "Does your app use encryption?"

Yes: If you use HTTPS calls (which almost everyone does). You usually qualify for the "Standard Encryption" exemption.
No: Only if your app is completely local and uses no networking.

Tip: Add the key ITSAppUsesNonExemptEncryption set to NO in your Info.plist to skip this dialog if you qualify.

5 Release Options

🛠️

Manual Release

Best for Marketing. You get approved, but the app waits. You click "Release" when your press release goes live.

Automatic Release

Best for Bug Fixes. The app goes live the moment Apple approves it. Risky if you aren't monitoring.

📈

Phased Release

Pro Move. Releases the update to 1% of users on Day 1, 2% on Day 2, etc. If a crash is found, you can pause it before everyone updates.

Want AI to audit your app before submission?

Get our AI Review Toolkit with prompts that catch guideline violations automatically.

Get the AI Toolkit