Documentation
Apple App Store & TestFlight
Create the app in App Store Connect, make an API key, and let CapWrapp create the signing certificate.
iPhone builds require an Apple Developer Program membership and an app record in App Store Connect. CapWrapp does not sign you up for Apple and does not create that app record yet.
You do not need a Mac. Signing is created from the API key. Builds run on GitHub’s Mac runners.
Don’t have an Apple Developer account yet?
Every iPhone build needs one, and only you can create it. It takes one sitting, then Apple reviews it. On App Store settings, CapWrapp asks whether you have an account. Choose No to open these steps. The question is skipped when another app in CapWrapp is already connected to the App Store.
- Use an Apple Account with two-factor authentication. Your usual one works: manage your Apple Account.
- Choose individual or organization. As an individual, your own name shows as the seller on the App Store. As an organization, your company’s name shows, and Apple asks for a D-U-N-S number. It’s free, but getting one can take a few days.
- Enroll and pay 99 USD a year (or the local price) at Apple Developer Program enrollment. The Apple Developer app on an iPhone, iPad or Mac is usually the quickest way.
- Wait for Apple’s email. It often comes within a day or two. Organizations can take longer. Your app stays in CapWrapp in the meantime.
- Sign in to App Store Connect once and accept the agreements, then continue with step 1 below.
On a phone?
The steps below download a .p8 key file and upload it to CapWrapp. On a phone, App Store settings offers Email me the link, so you can finish on a computer.
1. Create the app on Apple’s website
- Open Apps in App Store Connect.
- New app → iOS. Bundle ID must exactly match the Capacitor App ID (Settings shows it, e.g.
app.yourbrand.mobile). - If the bundle ID is missing, create it under Certificates, Identifiers & Profiles → Identifiers.
- Add at least one internal tester (yourself) or a TestFlight group. A successful upload with zero testers looks like “nothing happened.”
2. Create an App Store Connect API key
This is a password made for tools.
- Open Users and Access → Integrations → App Store Connect API.
- Create a key with the Admin role so CapWrapp can manage apps and provisioning profiles.
- Download the
.p8file once. Apple will not show it again. - Copy Issuer ID (top of the page) and the 10-character Key ID.
3. Paste them in CapWrapp
App → Settings → App Store:
- Issuer ID, Key ID,
.p8file - Bundle ID (pre-filled from Capacitor when possible)
- Encryption checkbox — leave unchecked for most apps. CapWrapp writes
ITSAppUsesNonExemptEncryptionso TestFlight is not stuck on Missing Compliance. Check it only if the app uses non-exempt encryption and Info.plist already contains the code from App Store Connect → App Information → App Encryption Documentation (ITSEncryptionExportComplianceCode). An empty code is rejected at upload (error 90592).
Tap Save Apple setup. CapWrapp then:
- Reads your Team ID from the key
- Sets up an Apple Distribution certificate and stores it (you never upload a
.p12)
Certificate limit
Apple allows only a few Distribution certificates per team, so every app on the same Apple team in a workspace signs with one shared certificate. Adding another app on that team takes no new slot.
CapWrapp never revokes a certificate on its own. If the team is already at Apple’s limit, the Apple card lists the team’s certificates, flags the ones CapWrapp created that nothing uses anymore, and lets you pick which one to revoke. Before each iOS build, CapWrapp checks the certificate with Apple and replaces it if it was revoked or expires within 30 days.
Keys never go to GitHub. The browser sends them to CapWrapp’s servers; GitHub Actions later fetches them with a short-lived run token.
4. iOS folder must exist
If Settings says iOS setup isn’t finished, the repo has no ios/ project yet. Finish the wrap follow-up in Lovable, push, then Try again. You cannot TestFlight a website-only repo.
After the first upload
Builds appear in TestFlight → your app → iOS builds. Processing can take a while. Install the TestFlight app on your iPhone, accept the invite, and install.
Send it to App Review
When testers are happy, open Releases and click Send to review next to the TestFlight build. CapWrapp attaches that build to the App Store version, writes What’s New and submits it. Apple releases the app as soon as it is approved. Details: Send it to the stores.
External TestFlight groups stay in App Store Connect. So do agreements, privacy, age rating and pricing: the App Store submission checklist walks through them before your first review. Store text and screenshots can come from CapWrapp’s store listings.
