How iOS builds work
On a plan that includes iOS builds, one Build press builds Android and, when your app meets every iOS requirement, iOS too. Both count as one build against your monthly allowance.
There is no platform to choose. You press Build once, and the iPhone half either builds or tells you what is missing — see Getting ready for iOS builds for the requirements and how to clear them.
What happens when you press Build
Section titled “What happens when you press Build”| Your app | Result |
|---|---|
| On a plan without iOS builds | Android builds. Nothing asks you about iOS. |
| iOS requirements not met | Android builds. The iOS setup window opens at the first thing to fix. |
| Every iOS requirement met | Android and iOS both build, as one build against your allowance. |
Requirements are re-checked on every press, against your site as it is at that moment. A certificate that expired since your last build fails the check on the next one.
How your app gets signed
Section titled “How your app gets signed”Apple will not install a build that is not signed by a certificate belonging to a real Apple Developer account. That account is yours, so the signing files are yours, and they stay on your own site.
-
Your certificate and provisioning profile sit on your WordPress site under Memberside → API Keys → iOS signing.
-
When a build server picks up your build, it asks your site for them once, over a signed request that expires after two minutes and cannot be replayed.
-
The files are imported into a throwaway keychain that exists only for that build.
-
When the build ends — successfully or not — the keychain and the files are deleted from the build server.
Memberside never stores your certificate, your password or your profile. Each build fetches them again, and a released request cannot be claimed a second time.
What comes out
Section titled “What comes out”A successful iOS build puts an IPA on the build row, next to the Android
.apk and .aab. It is a real signed build of your app, ready for the App
Store.
Each iOS build also gets its own build number, counting up from one. Apple refuses a second upload that reuses a build number, so this is handled for you and is not something to set in the builder.
Getting to TestFlight
Section titled “Getting to TestFlight”If you have added an App Store Connect key to your site, the build server sends each finished build straight to TestFlight, and the build row shows In TestFlight, linking to App Store Connect.
The key is optional. Without it the build still succeeds and you upload the IPA yourself with Apple’s Transporter app. If Apple rejects the upload, the build is still a success and the row reads “TestFlight refused it; upload the IPA with Transporter” — the build is sound, the delivery is not, and Transporter reports Apple’s reason.
Missing Compliance
Section titled “Missing Compliance”Every build waits in TestFlight at Missing Compliance until your app answers Apple’s export-compliance question. Answering it once in the iOS setup window writes the answer into every later build, and they reach your testers without stopping. See Export compliance.
Push on a TestFlight build
Section titled “Push on a TestFlight build”A build from the pipeline is a production build, so it gets production device tokens and the generated project is already set up for them. Leave Apple sandbox switched off in the Push panel. Sandbox applies to a build you install from Xcode yourself, and switching one without the other delivers nothing, with an error that reads like a corrupt token.
Renewing a certificate before it expires
Section titled “Renewing a certificate before it expires”Apple distribution certificates last a year, and the iOS setup window turns amber thirty days before yours runs out. A build signed with an expired certificate fails, so renew before then.
-
Create a new certificate in your Apple Developer account, the same way you made the first one — see Certificate.
-
Export it as a
.p12with a password. -
Generate a new provisioning profile. A profile names the certificate it was built with, so the old profile does not work with the new certificate.
-
Upload both to Memberside → API Keys → iOS signing, replacing what is there.
-
Press Build. The step turns green on the next check.
What App Store submission requires
Section titled “What App Store submission requires”The pipeline stops at TestFlight. Submitting for review is yours, and so is the account it is submitted from.
You need your own Apple Developer account
Section titled “You need your own Apple Developer account”Apple’s App Store Review guideline 4.2.6 rejects apps created by an app-generation service and submitted by that service on a client’s behalf. Apps built from a template must be submitted by the client, under the client’s own Apple Developer account.
The practical reading of 4.2.6 is that the app must be yours: your developer account, your name on the listing, your support URL, and an app that stands on its own as a real product for a real community. An app that is a thin wrapper around a website is rejected under the same guideline, which is the argument for placing native features rather than webview screens.
The rest of the checklist
Section titled “The rest of the checklist”- A bundle identifier, permanent once published.
- Signing certificates and provisioning profiles, generated in your account.
- App Store Connect listing: name, subtitle, description, keywords, screenshots for each required device size, and a privacy policy URL.
- App privacy answers describing what your app collects. Memberside apps read from your own WordPress site, so the answers depend on what your site stores.
- A review account — reviewers need working credentials for a members-only app, or they will reject it as unusable.
Everything on that list except the certificates is collected, checked and exported by Store submission on your app’s page. See Preparing your store listing, which also flags the guidelines your app has actually earned: Sign in with Apple if you offer any other social login, moderation controls if members post, in-app account deletion if members can sign up.
When it does not work
Section titled “When it does not work”| Symptom | Cause | Fix |
|---|---|---|
| Only the Android half built | An iOS requirement is not met | Open iOS setup from the notice and clear the first red step |
| iOS build says it is not in your plan | The account is on Free | Pro and Unlimited include iOS builds |
| The iOS row reads “Waiting for an iOS build server” | Every build server is busy | Nothing to do; it starts when one frees up |
| The iOS build failed at a named step | That step’s requirement broke since the last check | Use Fix in iOS setup on the build row, which opens at that step |
| The build succeeded but nothing is in TestFlight | No App Store Connect key on your site | Add one (Upload key), or upload the IPA with Transporter |
| “TestFlight refused it; upload the IPA with Transporter” | Apple rejected the delivery, not the build | Upload the IPA with Transporter, which reports Apple’s reason |
| The build sits at Missing Compliance in TestFlight | Export compliance has not been answered | Answer it in Export compliance and rebuild |
| The IPA download says it expired | The build is more than thirty days old | Press Build again |