Get help › Sample rejection fix
Sample, fictional app. "Brightjar" is an example app and does not exist. This page shows the format and depth of what you receive with the $99 rejection fix. The rejection reasons are typical for apps built with AI builders and wrapped for iOS, but the rejection text, names, times and code below are made up for illustration.
Rejection fix: Brightjar (example app, meal planner)
What you receive by email, in this layout: the rejection decoded in plain words, what we changed for each point, a reply to the reviewer for you to approve, and the checklist we run before resubmitting.
- App
- Brightjar, a weekly meal planner with shopping lists, recipe photos and sign-in with email (fictional example)
- Built with
- Bolt web app, wrapped for iOS with Capacitor by the owner
- Rejected build
- Version 1.0, build 4. Review device in Apple's message: iPad Air (5th generation)
- Guidelines cited
- 2.1 App Completeness, 5.1.1(ii) Data Collection, 5.1.1(v) Account Deletion
- Access received
- Tuesday 10:00 ET (example). Deadline: Friday 10:00 ET, 72 hours later
- Delivered
- Thursday 16:00 ET (example), new build 1.0 (5) processed in TestFlight
Summary
Three cited problems, all fixed in build 5. One extra item fixed before it causes the next rejection. The app is not waiting on you for code. Before we resubmit, we need two things from you: your written OK on the reply below, and a confirmation that the new demo account works for you too.
Apple decides. These changes address every point in the rejection, but nobody can promise approval or a review time. If Apple rejects this build again, the next fix-and-resubmit round is included (up to two more rounds at no extra cost).
1. The rejection, decoded
Apple's message mixes boilerplate with the part that matters. Here is the rejection as received (shortened), then what each part means.
Cited Guideline 2.1, App Completeness
"We were unable to sign in with the demo account"
We were unable to sign in with the demo account credentials you provided. An error message was displayed: "Invalid login." Additionally, the app displayed a blank screen after we tapped "Continue" on iPad Air (5th generation) running iPadOS.
What it means. Two separate problems. The reviewer could not get past sign-in, so they did not see the rest of the app. Then, on iPad, the screen after sign-in stayed white.
What we found. The demo account in App Review Information had been created on a test database that the iOS build no longer uses, so the password was correct but the account did not exist. The blank screen came from the web layout: on iPad widths, the plan screen waited for a sidebar that only loads on desktop, and never rendered.
Guide: 2.1 app completeness
Cited Guideline 5.1.1(ii), Data Collection
"The purpose string does not sufficiently explain the use"
Your app's code references one or more APIs that access sensitive user data, and the app's permission request does not clearly and completely describe how the app will use the data. NSCameraUsageDescription: "This app needs camera access."
What it means. The text in the camera permission popup is too generic. Apple wants a specific reason tied to a feature the user can see.
What we found. The camera is used only to add a photo to a recipe. The photo library key was also generic, and would likely have been the next point.
Guide: 5.1.1 data collection and purpose strings
Cited Guideline 5.1.1(v), Account Deletion
"The app supports account creation but does not include an option to initiate account deletion"
Apps that support account creation must also offer account deletion within the app. Emailing support or visiting a website is not sufficient if the process is not fully in the app.
What it means. Users who can sign up in the app must also be able to delete their account in the app. A "contact us" line does not count.
What we found. Settings had Log out only. The backend had no function to delete a user's plans, shopping lists and photos.
Guide: 5.1.1(v) account deletion
2. What we changed
One change set per point, in your project, each with the guideline in the commit message. Items marked "also fixed" were not in Apple's message; our readiness checker flagged them, and they are listed separately so you can see what was asked and what was extra.
| # | Change | For | Status |
| 1 | New demo account created on the production database, with a sample week of meals and a shopping list already filled in. Tested from a fresh install. | 2.1 | Done |
| 2 | Plan screen renders without the desktop sidebar on iPad widths; added a simple two-column layout. Tested in the simulator on iPad Air and 13-inch iPad, portrait and landscape. | 2.1 | Done |
| 3 | Camera text: "Take a photo of a dish to add it to the recipe." Photo library text: "Choose a photo from your library to add it to a recipe." Permission asked only when the user taps Add photo. | 5.1.1(ii) | Done |
| 4 | Settings > Account > Delete account, with one confirmation. A server-side function deletes the user, their plans, lists and stored photos. No admin key in the app. | 5.1.1(v) | Done |
| 5 | Also fixed: added a privacy manifest and updated Capacitor plugins, which the upload email had warned about (ITMS-91053). | 5.1.2 | Also fixed |
| 6 | Build number raised to 5, archived, uploaded to TestFlight. Processing finished; available to you as a tester. | – | Done |
What we did not change
- Prices, subscriptions, agreements, tax or banking. None were part of this rejection, and we do not touch them.
- Your app's features, design or text beyond what the points above required.
- Your users' data. The delete function was tested only on test accounts we created.
3. Reply to the reviewer (draft for your approval)
We post this in Resolution Center when we resubmit, only after your written OK. It is short and factual on purpose: it says what changed and where to look, and makes no promises or arguments.
Hello,
Thank you for the review. We have addressed each point in build 1.0 (5):
Guideline 2.1
- The demo account in App Review Information has been replaced and
tested on a fresh install. It includes a sample meal plan.
- The blank screen after "Continue" on iPad has been fixed. We tested
on iPad Air (5th generation) and 13-inch iPad, in portrait and landscape.
Guideline 5.1.1(ii)
- The camera and photo library permission texts now explain the
specific use: adding a photo of a dish to a recipe.
Guideline 5.1.1(v)
- Users can delete their account in the app: Settings > Account >
Delete account. This removes the account and its meal plans,
shopping lists and photos.
Please let us know if anything else is needed.
Best regards
You can change anything in this text. If you would rather post it yourself, copy it as is.
4. Resubmission checklist
We run this list before we press Submit. Items marked "you" need the account owner.
- Your written OK on the reply above (you).
- You have signed in with the new demo account from TestFlight on your own phone (you).
- Build 1.0 (5) is selected for version 1.0; build 4 is no longer attached.
- App Review Information: new demo email and password saved, notes say where to find recipe photos and Delete account.
- Fresh install tested on a physical iPhone: sign in, create a plan, add a photo (allow and deny), delete the test account.
- iPad tested in the simulator in both orientations, because the review device was an iPad.
- App Privacy answers match the privacy manifest: email, meal plans, photos.
- Privacy policy explains how to delete an account, and opens without signing in.
- Reply posted in Resolution Center, then Submit for Review.
What this service does not cover
- Approval. Apple decides. We fix what the rejection cites and what our checker flags; we cannot promise an outcome or a review time.
- Rejections about the business model or the developer account, such as legal requirements for regulated apps or a terminated account. We say so before you pay.
- New native features beyond what the cited guidelines need.
- Google Play and Android.
- Security and legal review beyond noting anything obvious we see.
Get this for your rejected app
Paste your rejection message and we reply in writing with what we will fix and by when. The fix is $99, done within 72 hours of getting access or a full refund, paid after that written confirmation.