TL;DR. При передаче приложения в другой аккаунт Apple Developer Bundle ID, рейтинг и отзывы остаются нетронутыми — собственная документация Apple подтверждает, что приложение «сохраняет отзывы и рейтинг» на протяжении всей передачи. Начать или принять передачу может только роль Account Holder, а пока передача в статусе ожидания (до 60 дней), передающий аккаунт не может трогать метаданные, цены или покупки в приложении. Тестирование в TestFlight, данные Xcode Cloud, Merchant ID Apple Pay, push-сертификаты APNs и пропуска Wallet не переносятся автоматически — всё это нужно настраивать заново на принимающей стороне.
Инди-разработчики сталкиваются с передачей приложения по нескольким причинам: продажа приложения целиком, агентство передаёт готовую сборку в собственный аккаунт клиента, или переход с аккаунта индивидуального предпринимателя на аккаунт компании перед масштабированием платной рекламы. История рейтинга обычно то, о потере чего беспокоятся в первую очередь. Но не это застаёт людей врасплох на самом деле.
Переживают ли рейтинги и отзывы передачу приложения в App Store Connect?
Да. Справка App Store Connect однозначна: «во время и после передачи приложение сохраняет свои отзывы и рейтинг, а пользователи продолжают получать обновления». Bundle ID тоже остаётся фиксированным и не может быть изменён после того, как для него была загружена сборка, поэтому идентичность приложения и история его отзывов перемещаются вместе — но это касается только настоящей передачи одного и того же приложения между аккаунтами, а не переноса отзывов на пересобранное приложение с новым Bundle ID, что Apple вообще не поддерживает.
Кто может начать или принять передачу приложения?
С обеих сторон допускается только роль Account Holder — у передающей стороны должна быть роль Account Holder, чтобы начать передачу, и у принимающей стороны тоже должна быть роль Account Holder, чтобы её принять. Это более узкий круг, чем четыре роли (Account Holder, Admin, App Manager, Marketing), которые могут ежедневно редактировать поле ключевых слов и подзаголовок, так что Admin, который обычно управляет листингом, не сможет переместить приложение в новый аккаунт — это должен сделать лично Account Holder, войдя в систему.
Чтобы начать: в App Store Connect откройте приложение, перейдите в App Information в разделе General, прокрутите до Additional Information и выберите Transfer App. После двухфакторной аутентификации и проверки соответствия условиям вы вводите email Apple Account получателя и Team ID и отправляете запрос.
Что должно быть выполнено, чтобы приложение было доступно для передачи
Apple проверяет конкретный список условий, прежде чем разрешить передачу:
- У приложения должна быть как минимум одна версия, уже выпущенная в App Store, — нельзя передать то, что никогда не выходило.
- Оно не может находиться в предзаказе и не может находиться в статусах Processing for Distribution, Waiting for Review, In Review, Accepted, Pending Developer Release или Pending Apple Release.
- Товары для покупок в приложении должны быть в статусе Approved, Ready to Submit, Developer Removed from Sale или Rejected — любой другой статус блокирует передачу.
- У получателя не должно быть приложения, уже использующего те же ID товаров для покупок в приложении.
- Приложения Apple Arcade вообще нельзя передавать.
- Оба аккаунта должны принять актуальные платное и бесплатное соглашения Apple Developer Program, а если приложение использовало Alternative Terms Addendum для приложений из ЕС, получатель должен принять и его тоже.
Заморозка метаданных, которую нужно спланировать заранее
Вот эта часть реально влияет на ASO-работу: как только передача отправлена, передающий аккаунт не может изменять метаданные приложения, цены или покупки в приложении до момента, пока получатель её не примет, — а у получателя есть до 60 дней на это. Если вы ведёте переговоры о продаже и у вас в очереди стоит переписанное поле ключевых слов или изменение подзаголовка, отправьте это изменение и дайте ему выйти до начала передачи, а не после. Как только передача переходит в статус ожидания, она блокируется, и ускорить её быстрее, чем ответит получатель, никак нельзя.
Заморозка работает и в обратную сторону: при принятии получатель должен указать собственные Support URL, Marketing URL и Privacy Policy URL (обязательно, если они уже были у приложения), контактную информацию для App Review, контактную информацию для App Store, а также либо принять существующие данные App Privacy приложения, либо заполнить их заново. Все открытые переписки с App Review автоматически закрываются как часть передачи. Ничего из этого не опционально — передача с неподготовленным получателем может застрять на недели, пока листинг фактически заблокирован, а получатель собирает всё необходимое.
Что не переносится и требует восстановления
Несколько технических элементов не перемещаются вместе с приложением и требуют повторной настройки в аккаунте получателя:
- TestFlight — бета-тестирование нужно отключить для всех бета-сборок перед началом передачи.
- Xcode Cloud — все связанные данные workflow нужно удалить из приложения перед передачей.
- Apple Pay — Merchant ID не передаётся; получатель создаёт новый.
- Push-уведомления — команде получателя нужно сгенерировать новый сертификат APNs, чтобы продолжать отправлять push.
- Пропуска Wallet — их нужно переиздать с новым идентификатором типа пропуска после завершения передачи.
- Автообновляемые подписки — если они есть у приложения, передающая сторона должна поделиться с получателем общим секретом приложения (app-specific shared secret) до передачи, иначе проверка подписок сломается.
Данные iCloud, контейнеры и идентификаторы key-value storage переносятся автоматически, как только получатель принимает передачу.
Прежде чем нажать Transfer App
- Сначала выпустите все отложенные изменения поля ключевых слов, подзаголовка или цены — ничего из этого нельзя будет сдвинуть после отправки запроса на передачу.
- Отключите бета-тестирование TestFlight и очистите данные Xcode Cloud в приложении.
- Убедитесь, что у получателя есть Account Holder, готовый войти в систему и принять передачу, — 60-дневный срок помогает только в том случае, если получатель реально готов действовать в его рамках.
- Если у приложения есть автообновляемые подписки, передайте общий секрет отдельно — сама передача этого не сделает за вас.
- Расскажите получателю заранее, что от него потребуется при принятии — URL поддержки/маркетинга/конфиденциальности и контактную информацию для App Review, — чтобы передача не застряла из-за недостающих данных.