Before you start
Your site has the iPhone app (see Add apps). You need an Apple ID with two-factor sign-in turned on.
Steps
- Have an Apple Developer account. Open Join the Apple Developer Program, sign in with your Apple ID and choose Individual (your name is the seller in the App Store) or Organization (your company name; needs a D-U-N-S number, free, up to a week, and a company website). Apple charges a yearly fee, paid to Apple, not to Keynate. Wait for Apple's "Welcome" email (a day or two). Check at developer.apple.com/account that your membership is active. The person who joined is the Account Holder.
- Accept Apple's agreements. Apple does not let you create an app until the Account Holder has signed the latest agreement. Open App Store Connect, click Business, then the Agreements tab. If an agreement shows View and Agree to Terms, open it and press Agree (for a newer version Apple's button is Submit). Free apps are covered by the Apple Developer Program License Agreement; a paid app also needs the Paid Apps agreement with bank and tax details.
- Create an API key for Keynate. Open Users and Access → Integrations → App Store Connect API as Account Holder or Admin. First time only: if Apple shows a request-access button, the Account Holder presses it; Apple approves each request itself and it can take a while. Click Team Keys, then Generate API Key (or +). Name: Keynate. Access: Admin. Click Generate. Apple cannot change the name or access later; if you picked another access, revoke the key and make a new one. Click Download for the .p8 file (only once). Copy the Issuer ID (top of the page) and the Key ID (in the key's row). On the iPhone card, enter both, choose the .p8 file and press Save and check.
- Create the app record. Open App Store Connect → Apps. Click the + at the top left, then New App. Platforms: iOS. Name: paste the app name from your Apps page. Primary Language: your main language. Bundle ID: pick the one on your Apps page (if the list is empty, press Check again on Keynate first; Keynate registers it). SKU: anything, for example the Bundle ID. User Access: Full Access. Click Create; the app shows Prepare for Submission. Back on Keynate press Check again. If Apple says the name is taken, add a word; a store name must be unique worldwide.
- Your app's name and icon. See App name and icon.
- Make my app and send it to TestFlight. Tap Build your iPhone app (later Make my app). It takes about 20 to 40 minutes. You do not need a Mac and you can close the page. When Apple has processed it, it appears by itself in App Store Connect → your app → TestFlight tab.
- Test on your iPhone. Install TestFlight from the App Store (free, made by Apple). Open the test link or scan the QR code and follow TestFlight's buttons. Try every screen. Then tick Tried on a real iPhone in the App Store checklist; Keynate sends your app to Apple only after that tick. If the build is for your own team only: open your app in App Store Connect, click the TestFlight tab, click the + next to Internal Testing, type a group name and click Create (tick Enable automatic distribution if shown). Click the group, then Invite Testers, tick yourself and click Add. Only people added under Users and Access can be chosen. Apple emails you an invitation to open in TestFlight.
- App Review checklist. Keynate fills in for you: store texts, screenshots, price (free) and countries, privacy policy address, age rating answers, and the App Review notes with the reviewer sign-in. You do once, for a new app: App Privacy (open your app, click App Privacy in the sidebar, Get Started, copy our answers, Save, then Publish at the top right and Publish in the dialog; Apple gives Keynate no way to do this), Content Rights (your app → App Information → Content Rights), the age rating only if the checklist asks (App Information → Set Up Age Ratings, later Edit), and the review video (your app's version → App Review Information → Attachment). Tick each item here when saved. See Store checklists and the reviewer sign-in.
- Submit for review. Under Build, preview and publish, press Publish to the App Store on the tested version, then Publish. Keynate presses Apple's Add for Review and Submit for Review for you; do not press them yourself. In App Store Connect the status goes Waiting for Review, In Review, then Ready for Distribution. Apple says it reviews at least half of apps in under 24 hours and nine in ten in under 48 hours; a first review can take longer. Apple emails you at each change. After approval the app reaches users over 7 days; you can pause it.
Good to know
- iPhone builds may show Coming soon while Keynate switches them on for your site. You can do steps 1 to 5 now.
- Apple asks new accounts for a short screen recording on a real iPhone. Review video (iPhone) under Review information lists the steps to record.
- Remove key on the iPhone card stops Keynate's uploads. Your published app stays in the store.
Common problems
- "Install the TestFlight preview on a real iPhone, try it, then tick “Tried on a real iPhone”." Do step 7, then press Publish again.
- The Bundle ID is not in Apple's list. Press Check again on your Apps page. If your key can't register it, add it in your Apple Developer account under Identifiers.
- Apple blocks uploads or new apps. Accept the newest agreements under Business → Agreements.
- Apple says App Privacy is missing. Do the App Privacy part of step 8, then press Publish again.
- Rejected under 2.1 (App Completeness). Usually the reviewer could not sign in. Create the reviewer sign-in, attach the review video, press Publish again.
- Apple asked for changes. See My app was rejected.
- Anything else: My app does not build or publish.
Questions
Frequently asked questions
Does Keynate pay Apple's fee?
No. The developer account is yours, so Apple's yearly fee is paid by you to Apple.
Does the app work on iPad?
Yes. The App Store card is called iPhone & iPad app (App Store).