Что проверяет Apple при ревью: уроки трёх приложений

Apple проверяет четыре вещи: приложение работает целиком, проверяющий может войти, цифровые покупки идут через Apple, а сбор данных честно описан в карточке.

Опубликовано 8 мин чтения

При ревью Apple проверяет, что приложение работает целиком и проверяющий может в него войти. Ещё две проверки касаются денег и данных: цифровые покупки должны идти через встроенные покупки Apple, а сбор данных пользователя должен быть описан в карточке без недомолвок. Ниже эти правила разобраны на трёх приложениях, которые я делал. IMPERIA THE1 уже в App Store. «Просто Пушка» с 27 октября 2026 года стоит на проверке в App Store. Клиентское приложение Lucent для проката суперкаров готово. У каждого из них свой набор рисков.

Что Apple смотрит в первую очередь

Правила App Review Guidelines длинные. Для первой отправки полезно знать четыре раздела:

  • 2.1, полнота приложения. Сборка не падает, в ней нет экранов-заглушек и пустых кнопок, сервер работает в момент проверки. Если нужен вход, проверяющий получает демо-аккаунт.
  • 4.2, минимальная функциональность. Приложение должно давать больше, чем сайт в обёртке.
  • 2.3, точные метаданные. Описание, скриншоты и подзаголовок показывают то, что есть в сборке, без будущих функций.
  • 5.1.1, данные. Политика конфиденциальности, понятные запросы разрешений, удаление аккаунта.

Отсюда простое правило: перед отправкой пройдите приложение глазами человека, который видит его впервые, сидит не в Дубае и не знает ваш бизнес.

Три приложения: чем они отличаются для ревью

IMPERIA THE1 Просто Пушка Lucent
Статус в App Store на проверке с 27.10.2026 готово
Что продаётся подписка Basic и Pro, 3 дня бесплатно в приложении ничего, гость платит на месте аренда машины с подачей
Правило про деньги 3.1.1 и 3.1.2: встроенные покупки и подписки оплаты в приложении нет 3.1.3(e): услуга вне приложения
Вход интерактивный онбординг-фильм QR в заведении, дальше Apple, Telegram или код на почту вход через Apple
Где риск пейволл, пульс и данные о здоровье вход без QR, 18+, тематика лаунджа документы клиента, платежи

Подробности по Пушке есть в кейсе, по Империи в кейсе IMPERIA THE1.

Вход: проверяющий должен попасть внутрь

В Пушке первый вход устроен так: кальянщик показывает гостю QR-код, гость сканирует его и попадает в свою карту. Карту заводит заведение, поэтому второй пустой карты не будет. Гостю это удобно, а проверяющему Apple сканировать нечего. Такому приложению нужен обходной путь: тестовая карта и способ войти без QR, описанные по шагам в поле App Review Information. Если проверяющий упрётся в экран входа, сборку вернут по разделу 2.1.

Что ещё проверить по входу:

  1. Раздел 4.8. Если вход идёт через сторонний сервис, например Telegram, нужен равноценный вариант с защитой приватности. Сюда подходит вход через Apple. В Пушке он есть рядом с Telegram и кодом на почту, в Lucent тоже есть вход через Apple.
  2. Раздел 5.1.1(v). Если в приложении есть аккаунт, пользователь должен удалить его из самого приложения. Обращение «напишите нам на почту» не засчитают.
  3. Демо-аккаунт с данными. Пустой профиль ничего не показывает. В тестовой карте гостя держите историю визитов, баланс кэшбека и хотя бы одну бронь.

Деньги: что идёт через Apple, а что нет

Правило зависит от того, что продаётся.

Цифровое внутри приложения идёт через встроенные покупки (3.1.1). IMPERIA THE1 продаёт подписку на программы, уроки и чат с наставником в тарифе Pro. Для подписок действует раздел 3.1.2: экран оплаты называет цену, срок и условия пробного периода до того, как человек нажмёт кнопку. Формулировка «3 дня бесплатно» без указания, сколько спишут потом и когда, даёт повод для отказа.

Физическая услуга вне приложения оплачивается своими способами (3.1.3(e)). Аренда машины в Lucent относится сюда: клиент получает машину на улице, а не внутри экрана. Встроенные покупки Apple для такого платежа не нужны, и подключать их сюда нельзя.

Если продажи в приложении нет, скажите это прямо. В Пушке заказ со стола уходит смене как просьба. Счёт обновляется в реальном времени: видно, что подано, сколько вышло и сколько закроет кэшбек. Способ оплаты гость выбирает в приложении, платит на месте, чек закрывает касса. Проверяющему полезно прочитать это одной фразой в заметках к ревью, иначе экран со счётом могут принять за продажу в обход Apple.

Возраст и чувствительные темы

Анкета возрастного рейтинга в App Store Connect требует честных ответов. Если рейтинг расходится с содержимым, приложение вернут.

Пушка помечена 18+, потому что это кабинет гостя лаунджа. Раздел 1.4.3 запрещает приложения, которые поощряют употребление табака. Поэтому витрина говорит о гостевом опыте: подзаголовок «Карта гостя, стол и счёт», в тексте бронь места на плане зала, кэшбек и меню кухни и бара. Рекламы табачной продукции и призывов к ней в карточке нет.

У Империи другая чувствительная зона: пульс. Бег идёт по зонам пульса, голос подсказывает, когда бежать, а когда идти. По разделу 5.1.3 данные о здоровье нельзя использовать для рекламы и маркетинга и передавать третьим лицам с такой целью. Политика конфиденциальности должна это подтверждать.

В Lucent есть экран помощи с номерами 999, 998 и 997. Экстренные номера в приложении должны быть точными для страны, где им пользуются.

Данные и разрешения

Каждый запрос доступа к камере, геолокации или здоровью сопровождается текстом, который объясняет, зачем он нужен. Шаблон «приложению нужен доступ к камере» не годится. Нужна конкретика: «камера нужна, чтобы отсканировать QR-код карты гостя».

Что сверить перед отправкой:

  • Метки приватности в App Store Connect совпадают с тем, что собирают приложение и подключённые SDK, включая аналитику и сбор отчётов о сбоях.
  • Политика конфиденциальности открывается по ссылке из карточки и изнутри приложения (5.1.1(i)).
  • Документы клиента. В Lucent клиент загружает документы для аренды. Политика должна описывать, что хранится, сколько и кто это видит.
  • Разрешения запрашиваются в момент действия. Запрос геолокации на первом экране, до того как человек понял, зачем она нужна, чаще раздражает, чем помогает.

Скриншоты и текст витрины

Раздел 2.3 требует, чтобы скриншоты показывали приложение в работе. Маркетинговые картинки без интерфейса и экраны функций, которых нет в сборке, ведут к отказу.

У Пушки на витрине по 8 кадров на английском и на русском: главная, бронь места, кэшбек, позиция меню, стол, онбординг, заказы, сетка чая. Перед отправкой каждый кадр сверяют с той сборкой, которая уходит на ревью. Функция, которая готова в ветке разработки, но не вошла в сборку, на витрину не попадает.

У IMPERIA THE1 интерфейс на русском, и текст витрины один на все локали. Обещать в карточке английскую версию, которой нет внутри, нельзя: это ровно тот случай, когда метаданные расходятся с приложением. О том, как устроен вход в Империю, отдельный разбор: онбординг, который не бросают.

Текст «Что нового» тоже проверяют. Пишите реальные изменения этой сборки.

Чей аккаунт разработчика

До ревью нужно решить, на кого заведён аккаунт в Apple Developer Program: на физлицо или на компанию. От этого зависит, чьё имя увидят покупатели в карточке и как передавать приложение при смене владельца. Что нужно для аккаунта организации в ОАЭ и чем публикация от компании отличается в Apple и Google, подробно разобрано в журнале Savage Media. Добавлю одно: решите этот вопрос до первой отправки. Перенос готового приложения на другой аккаунт отнимает время, которое удобнее потратить на сборку. Как устроена разработка приложения под ключ, описано на странице услуги.

TestFlight: что можно делать без ревью

Приложения для персонала Pushka POS и Lucent Staff сейчас в TestFlight. Для внутренних тестировщиков (до 100 человек из вашего аккаунта App Store Connect) ревью не нужно. Внешнее тестирование по ссылке проходит упрощённую проверку Beta App Review.

У TestFlight два ограничения, о которых владельцу лучше знать заранее:

  1. Каждая сборка работает 90 дней, потом её нужно заменить новой.
  2. TestFlight рассчитан на тестирование. Для постоянной работы смены подходит публикация в App Store, unlisted-распространение по прямой ссылке или custom apps через Apple Business Manager.

Как приложение для персонала меняет работу заведения, я разбирал отдельно. Путь гостевого приложения от идеи до отправки описан в статье про приложение для заведения.

Что не стоит делать

  • Отправлять сборку с тестовым сервером, который выключат на выходных. Проверка может прийти в любой день.
  • Оставлять вход только по QR, SMS на местный номер или приглашению без демо-аккаунта для проверяющего.
  • Ставить «Оплатить» рядом со счётом, если оплаты в приложении нет. Подпишите кнопку так, как это работает на самом деле, например «Выбрать способ оплаты».
  • Прятать цену подписки мелким шрифтом под крупным «Бесплатно».
  • Занижать возрастной рейтинг, чтобы приложение видело больше людей.
  • Показывать на скриншотах функции из следующей версии.
  • Подключать встроенные покупки Apple к оплате физической услуги или, наоборот, продавать цифровую подписку через внешнюю ссылку.
  • Копировать в метки приватности ответы из другого проекта. Набор SDK в каждом приложении свой.

Короткий чек-лист перед отправкой

  1. Сервер работает, сборка проходит все экраны без падений и заглушек.
  2. В App Review Information указан демо-аккаунт с заполненными данными и написан путь входа по шагам.
  3. Если есть сторонний вход, рядом стоит вход через Apple (4.8).
  4. Удаление аккаунта доступно внутри приложения (5.1.1(v)).
  5. Цифровые подписки идут через встроенные покупки, а на экране оплаты видны цена, срок и условия пробного периода (3.1.2).
  6. Оплата физических услуг идёт своими способами (3.1.3(e)), и это описано в заметках для проверяющего.
  7. Возрастной рейтинг совпадает с содержимым, а витрина не рекламирует табак (1.4.3).
  8. У каждого запроса разрешения есть текст с конкретной причиной.
  9. Метки приватности совпадают с SDK, политика конфиденциальности открывается из карточки и из приложения.
  10. Скриншоты сняты с отправляемой сборки, язык витрины совпадает с языком интерфейса.
  11. Аккаунт разработчика заведён на того, кто будет владеть приложением через год.
  12. Для приложений персонала путь после TestFlight выбран заранее, пока не истекли 90 дней сборки.

Вопросы и ответы

Нужно ли платить Apple комиссию, если в приложении бронируют стол или машину?

По разделу 3.1.3(e) правил App Review физические товары и услуги, которые получают вне приложения, оплачивают своими способами, без встроенных покупок Apple. Подписки и цифровой контент внутри приложения идут через встроенные покупки.

Как пройти ревью, если вход в приложение работает только в заведении?

Дайте проверяющему тестовый аккаунт и опишите путь входа в поле заметок App Review Information. Если проверяющий не попадает внутрь, сборку возвращают по разделу 2.1.

Можно ли раздавать приложение персоналу через TestFlight и не выпускать его в App Store?

Для внутренних тестировщиков ревью не требуется, но каждая сборка в TestFlight живёт 90 дней. Для постоянной работы персонала выбирают публикацию, unlisted-распространение или custom apps через Apple Business Manager.

Нужна ли кнопка удаления аккаунта, если карту гостя заводит заведение?

Если в приложении есть аккаунт, раздел 5.1.1(v) требует дать пользователю способ удалить его из приложения. Проверьте это до отправки, чтобы не получить отказ.