Skip to main content
Publishing your Openv2 app to the Apple App Store involves three phases: preparing your Apple account and assets, triggering an iOS build through Openv2, and managing the submission and review process in App Store Connect. Openv2 handles the Expo/EAS side of building; the store account, policies, and review outcomes are yours to manage with Apple.

Prerequisites

Have the following in place before starting your iOS build:
  • Apple Developer Program membership — the paid individual or organization account at developer.apple.com. You cannot submit to the App Store without it.
  • Bundle identifier — set a unique reverse-domain ID (for example, com.yourcompany.appname) in your app.json. This must match the app ID you register in App Store Connect.
  • App icon — a 1024×1024 PNG with no transparency or rounded corners. Openv2 can generate or upload this for you (see Mobile builds).
  • Display name — the name shown under your app icon on the home screen. Set it in app.json under name.
  • Privacy policy URL — required if your app collects any user data. Host a privacy policy at a public URL and have it ready for App Store Connect.
Create your app record in App Store Connect before your first submission. You’ll need the bundle ID to match what’s in your Openv2 project’s app.json.

Build your iOS binary in Openv2

1

Open the build flow

From the header of your project, select the Build action to open the Expo build wizard.
2

Select iOS

Choose the iOS path. The wizard prompts you to sign in with your Apple account and link your Expo/EAS account.
3

Complete the credential steps

Follow the wizard’s prompts for Apple sign-in and EAS linkage. The modal explains each step and tracks progress. If a native dependency error appears, fix it in the workbench (ask the AI assistant for help), then restart the build.
4

Download the IPA

When the build completes, download the IPA from the build modal or build history. You’ll upload this file to App Store Connect.
5

Upload to App Store Connect

Use Apple’s Transporter app (Mac) or Xcode’s Organizer to upload the IPA to App Store Connect. After uploading, the binary appears under your app’s TestFlight and Submissions sections.

Common friction points

Missing capabilities and entitlements

If your app uses features like Sign in with Apple, push notifications, or background modes, those capabilities must be enabled in your App Store Connect app record and declared in your Expo config. A mismatch causes build rejection or runtime failures. Ask the AI assistant to add the correct config plugin and entitlement entries to your app.json or app.config.js if they’re missing.

App Privacy disclosure

App Store Connect requires you to complete the App Privacy questionnaire, which asks what data your app collects and how it’s used. Be accurate — Apple and reviewers check this against your app’s actual behavior.

Account deletion requirement

If your app supports account creation, Apple requires you to provide an in-app account deletion flow. Apps without one are rejected. Ask the AI assistant to implement this if your app has authentication.

Login demo credentials

If your app requires a login to review, provide demo credentials in the App Review notes when submitting. Reviewers cannot approve an app they can’t access.

Review guidelines

Read Apple’s App Review Guidelines before submitting. Common rejection reasons include incomplete metadata, misleading screenshots, or functionality that doesn’t match the app description.
Apple controls submission timelines and review outcomes. Review typically takes one to three days but can take longer. Rejections are communicated through App Store Connect. Use Apple’s documentation as the source of truth for policy questions — Openv2 has no influence over Apple’s decisions.

TestFlight for beta testing

Before submitting for public review, use TestFlight to distribute your build to testers.
  • Internal testing — available immediately after upload, for up to 100 members of your Apple Developer team.
  • External testing — requires a brief TestFlight review from Apple, then allows up to 10,000 external testers via an invite link or public link.
TestFlight is the recommended way to catch bugs before they reach App Review.

Iterating on rejections

When App Review rejects your build:
  1. Read the rejection message in App Store Connect carefully — it usually cites a specific guideline.
  2. Fix the issue in Openv2: update your code or assets in the workbench, ask the AI assistant if you need help.
  3. Trigger a new iOS build from the header.
  4. Upload the new binary to App Store Connect and resubmit.
You can respond directly to a rejection in App Store Connect if you believe it was issued in error. Apple reviewers can reconsider, but providing a clear explanation and any supporting evidence (like a demo video) improves your chances.

What comes next

Mobile builds

Understand the full build flow, app icon setup, and how to resolve native dependency issues.

Play Store

Publish your Android build to Google Play alongside your iOS release.