- Apple Developer Program membership ($99/year)
- Expo account with EAS configured (see EXPO_SETUP.md)
- Go to developer.apple.com/programs/enroll
- Sign in with your Apple ID
- Complete enrollment ($99/year for individuals)
- Wait for approval (usually within 48 hours)
- Go to appstoreconnect.apple.com
- Click My Apps → + → New App
- Fill in:
- Platform: iOS
- Name: Your app name
- Primary language: Your language
- Bundle ID: Must match
ios.bundleIdentifierinapp.json - SKU: A unique identifier (e.g.,
com.example.myapp)
- Click Create
The template ships without a submit block so you don't have to hand-edit placeholders. Run:
eas submit:configureEAS will prompt you for the values below and write them into eas.json under submit.production.ios:
appleId: Your Apple ID emailascAppId: App Store Connect → Your App → General → App Information → Apple IDappleTeamId: developer.apple.com/account → Membership Details → Team ID
See Expo docs: iOS submission for details.
EAS can manage your certificates and provisioning profiles automatically:
eas credentialsSelect iOS → Production → Let EAS manage everything.
This is one of the key benefits of EAS — you don't need a Mac or Xcode to manage iOS signing.
Apple requires the first binary to be uploaded before automated submissions work smoothly:
# Build
eas build --platform ios --profile production
# Submit
eas submit --platform ios --profile productionAfter the first successful submission, the CD workflow will handle all future deployments.
Run eas credentials and let EAS regenerate your provisioning profile.
Ensure ios.bundleIdentifier in app.json matches what you registered in App Store Connect.