Чем мы можем помочь?

Доход магазина ROI360 Категория "Премиум"

  • Обновлено

Кратко: Настройте решение AppsFlyer ROI360 по доходу магазина.

Двоеточие (:)

Выручка магазина ROI360 доступна только клиентам премиум-плана ROI360. Чтобы проверить свой тарифный план или перейти на более высокий, обратитесь к своему менеджеру по работе с клиентами (CSM).

Информация о компании

 Примечание:

Дополнительные сведения о ROI360, в том числе о принципе его работы и о том, как включить его в AppsFlyer, см. в статье О доходе магазина ROI360.

Чтобы настроить ROI360 Store Revenue, выполните следующие шаги по порядку:

  1. Настройте учётные данные магазина (iOS и Android):
    • iOS: Настройте ключи App Store Connect (ключ In-App Purchase, Key ID и Issuer ID) в AppsFlyer.
    • Android: Настройте сервисный аккаунт Google Cloud, задайте необходимые разрешения в Google Play Console и загрузите JSON-ключ сервисного аккаунта в AppsFlyer.
  2. Настройте уведомления сервера (iOS и Android):
    • iOS: Настройте App Store Server Notifications: отправляйте уведомления напрямую в AppsFlyer (рекомендуется) или перенаправляйте их с собственной конечной точки, а затем проверьте интеграцию.
    • Android: Настройте уведомления разработчика Google Play в реальном времени (RTDN): разрешите Google Play отправлять уведомления напрямую в AppsFlyer (рекомендуется) или перенаправляйте их через Pub/Sub.
  3. Внедрите SDK Connector: подготовьте разработчиков к интеграции AppsFlyer Purchase SDK Connector.
  4. Проверьте реализацию SDK: протестируйте sandbox-покупки in-app и подписки на обеих платформах, чтобы убедиться, что события SDK и уведомления сервера корректно принимаются и обрабатываются в AppsFlyer.
  5. Проверьте и обновите настройки: проверьте и подтвердите статусы валидации покупок, обработки возвратов, измерения подписок и интеграции с магазином, чтобы обеспечить точную и непрерывную атрибуцию дохода на разных платформах.
  6. Выпустите версии приложения: выпустите обновлённые версии приложения со встроенным SDK Connector, убедившись, что sandbox-флаги отключены, а правила валидации допускают необходимые события дохода.

Шаг 1 (iOS): Настройка ключей App Store Connect

На шаге 1 получите следующие учётные данные в App Store Connect и введите их на странице «Настройки дохода» на платформе AppsFlyer

  • ключ для покупок в приложении;
  • идентификатор ключа;
  • идентификатор эмитента.

Прежде чем начать:

Настройка учётных данных включает шаги, выполняемые как в App Store Connect, так и в AppsFlyer. Держите вкладки App Store Connect и AppsFlyer открытыми во время настройки.

1.1 Создание ключей App Store Connect

Чтобы настроить учётные данные iOS, выполните следующие шаги:

  1. В App Store Connect перейдите в Пользователи и доступ

  2. Перейдите в Пользователи и доступ > Интеграции, и в списке Ключи выберите In-App Purchase.

  3. Нажмите + чтобы сгенерировать новый ключ In-App Purchase.

  4. Введите название для вашего ключа API.
  5. Нажмите Создать.
  6. Нажмите Download In-App Purchase Key рядом с ключом, который вы только что сгенерировали, чтобы загрузить его. Примечание: Вы можете скачать ключ только один раз.
  7. Скопируйте Key ID ключа, который вы только что сгенерировали, и вставьте его в настройках покупок & подписок AppsFlyer в поле Key ID.

  8. Скопируйте Issuer ID. Примечание: если Issuer ID не отображается вверху страницы, создайте API-ключ App Store Connect (с любым уровнем доступа). После этого идентификатор эмитента появится в верхней части страницы для ключа покупки в приложении.

1.2 Настройка ключа App Store Connect в AppsFlyer

  1. Включите ROI360 Store Revenue. 
  2. На шаге App Store Connect keys кликните Upload в In-App Purchase key поле, чтобы загрузить файл p8.
  3. В разделе titled App Store Connect keys, вставьте значения, которые вы скопировали из App Store Connect.

    • идентификатор ключа;
    • идентификатор эмитента.
  4. Кликните Validate keys , чтобы убедиться, что введённые вами ключи верны. Примечание: Validate key может не работать, если ваше приложение ещё не опубликовано в App Store.
  5. нажмите Сохранить и продолжить

Step 1 (Android): Настройка ключа сервисного аккаунта и разрешений

На шаге 1 вы можете получить следующие учётные данные из App Store Connect и введите их на странице «Настройка дохода» на платформе AppsFlyer.

Прежде чем начать:

  • Настройка измерения дохода от покупок в приложении и подписок включает шаги, выполняемые в Google Cloud Platform, Google Play Console, и в интерфейсе AppsFlyer. Мы рекомендуем не закрывать все три вкладки на протяжении всего процесса настройки.
  • Для настройки в интерфейсе AppsFlyer требуются права администратора.

1.1. Привяжите аккаунт разработчика Google Play к проекту в Google Cloud

Предварительные условия: доступ к Google Play Console и проекту в Google Cloud.

Чтобы привязать свой аккаунт разработчика Google Play к проекту в Google Cloud, выполните следующие действия:

  1. В Google Play Console откройте свой аккаунт разработчика в Google Play Developer .
  2. Привяжите аккаунт к своему проекту вGoogle Cloud. Инструкции см. в этом разделе справки Google.
  3. Активируйте API разработчика Google Play. Инструкции см. в этом разделе справки Google.

1.2. Настройте свой сервисный аккаунт на Google Cloud Platform

Предварительные условия: доступ к Google Cloud Platform.

Чтобы настроить свой сервисный аккаунт, выполните следующие действия:

  1. Создайте или найдите Service Account:
    1. Перейдите в Service accounts раздел в Google Cloud Platform и нажмите Create Service Account.

    2. Введите данные для сервисного аккаунта.

    3. Скопируйте адрес электронной почты.

    4. Нажмите Create and continue.

    5. На шаге Grant this service account access to the project step выберите роль подписчика Pub/sub .

    6. Нажмите Continue > Done.

  2. Скачайте Service Account Private Key:
    1. В Google Cloud Platform перейдите в раздел Service accounts , найдите в списке нужный аккаунт (тот, который вы только что создали) и кликните значок More actions .
    2. Кликните Управление ключами.

    3. Нажмите Add key > Create new key.

    4. Во всплывающем окне Create private key в разделе Key type, выберите JSON, и нажмите Create.

    5. Нажмите Создать. Загрузится файл JSON закрытого ключа.

    6. Сохраните файл ключа JSON, который нужно будет загрузить в AppsFlyer позже. Важно! Ключ необходимо сохранить; его нельзя будет загрузить позже. Если вы его не сохраните, вам придётся генерировать ключ заново.

1.3. Настройка прав доступа к API в Google Play Console

Предварительные условия: доступ к Google Play Console.

Примечание: после установки учетных данных и разрешений аккаунта службы может пройти некоторое время (иногда до 24 часов), прежде чем вы сможете их использовать. Это может привести к появлению ошибок на последующих этапах.

Настройка прав доступа к API в Google Play Console:

  1. В Google Play Console перейдите в раздел Пользователи и разрешения, найдите созданный сервисный аккаунт и нажмите кнопку Пригласить новых пользователей.

  2. Введите адрес электронной почты который вы скопировали при настройке сервисного аккаунта на шаге 1.2.1.3.

  3. В разделе Разрешения перейдите на вкладку Разрешения аккаунта и выберите оба варианта:

    • Просматривать финансовые данные, заказы и ответы на анкетирование после отмены.
    • Управление заказами и подписками.
  4. На вкладке Разрешения приложения нажмите Добавить приложение, затем выберите ваше приложение. Добавьте несколько приложений, если необходимо.

  5. Нажмите Пригласить пользователя.

  6. Во всплывающем окне подтверждения нажмите Отправить приглашение.

1.4. Загрузите закрытый ключ сервисного аккаунта в AppsFlyer

Загрузите и выполните валидацию ключа JSON Google, который вы скачали в шаге 1.2.

Предварительные условия: доступ администратора к AppsFlyer.

Чтобы загрузить закрытый ключ учетной записи службы в AppsFlyer, выполните следующие шаги:

  1. Включите данные о доходах магазина в ROI360. 
  2. На этапе Ключ и разрешения служебной учётной записи в поле Загрузить ключ JSON Google нажмите (значок загрузки).
  3. Загрузите файл JSON, который вы скачали в шаге 1.2.
  4. Нажмите Проверить ключ. Примечание:
    • После установки учётных данных и разрешений аккаунта службы может пройти до 24 часов, прежде чем вы сможете их использовать. Из-за этого при попытке валидации ключа или выполнить тестовую проверку могут возникнуть ошибки.
    • Чтобы обойти 24-часовое время ожидания, в Google Play Console откройте любое приложение, затем перейдите в Монетизация > Продукты > Подписки/In-app products, и внесите изменения. Например, отредактируйте описание вашего продукта и сохраните его. Это должно привести к мгновенному обновлению учётных данных и разрешений аккаунта. Затем вы можете отменить эти изменения.
  5. Нажмите Сохранить и продолжить.

Шаг 2 (iOS): Настройка уведомлений сервера App Store

Задайте способ получения уведомлений от App Store в AppsFlyer.

  • Если в App Store Connect у вас уже настроен endpoint для уведомлений сервера App Store (например, ваш собственный бэкенд или другой сервис), выберите Вариант 1 (рекомендуется) или Вариант 2.
  • Если вы еще не настроили endpoint в App Store Connect, выберите Вариант 1.

Вариант 1 (рекомендуется) — AppsFlyer как основной endpoint

Замените существующий URL-адрес уведомлений в App Store Connect на endpoint AppsFlyer и добавьте прежний endpoint в AppsFlyer как адрес назначения для пересылки. Текущая логика подписки и рабочие процессы остаются без изменений и продолжают работать как и ожидалось.

Поток уведомлений для этого варианта выглядит следующим образом:

  1. App Store Connect отправляет уведомления в AppsFlyer
  2. AppsFlyer обрабатывает их для ROI360
  3. AppsFlyer пересылает все уведомления на вашу существующую конечную точку в реальном времени

Чтобы использовать этот вариант, выполните шаги 2.1, 2.2 и 2.4.

Вариант 2 — ваша конечная точка как основная

Если вы предпочитаете оставить существующую конечную точку в качестве основного адресата, настройте свой сервер так, чтобы он пересылал серверные уведомления App Store в AppsFlyer.

Чтобы использовать этот вариант, пропустите шаги 2.1, 2.2 и выполните шаги 2.3 и 2.4

Примечание

Apple поддерживает только одну конечную точку серверных уведомлений App Store для каждого приложения и отправляет на нее все типы уведомлений, а не только уведомления о покупках и подписках. AppsFlyer использует уведомления о покупках и подписках для измерения дохода. Любой другой тип уведомлений он подтверждает обратно в Apple, чтобы Apple прекратила повторные попытки отправки, но не обрабатывает его и не выполняет по нему никаких действий.

Если ваше приложение зависит от типов уведомлений помимо уведомлений о покупках и подписках (например, уведомлений о согласии), убедитесь, что эти уведомления поступают на ваш собственный сервер:

  • Вариант 1: Оставьте AppsFlyer в качестве основной конечной точки и включите пересылку (шаг 2.1). AppsFlyer пересылает копию всех уведомлений на вашу конечную точку в реальном времени без изменений относительно того, как их отправила Apple, включая типы, которые AppsFlyer не обрабатывает.
  • Вариант 2: Оставьте свою конечную точку основным адресатом, чтобы ваш сервер напрямую получал и обрабатывал все типы уведомлений, и пересылайте уведомления о покупках и подписках в AppsFlyer.

2.1 Копирование конечной точки уведомлений сервера в AppsFlyer

Чтобы скопировать конечную точку уведомлений сервера AppsFlyer, выполните следующие действия:

  1. В AppsFlyer, на шаге Уведомления сервера App Store скопируйте конечную точку уведомлений сервера AppsFlyer.
  2. Если ранее у вас была другая конечная точка серверных уведомлений App Store и вы хотите, чтобы AppsFlyer пересылал на нее уведомления, выберите Переслать копию уведомлений на ваш сервер (актуально только для варианта 1).
  3. Введите конечную точку для пересылки уведомлений в отображаемом текстовом поле.

2.2 Как отправлять уведомления напрямую в AppsFlyer

Чтобы отправлять уведомления напрямую в AppsFlyer, настройте AppsFlyer как основную конечную точку серверных уведомлений App Store.

  1. В App Store Connect, в разделе Информация о приложении прокрутите до Уведомления сервера App Store и рядом с URL-адресом производственного сервера, нажмите Изменить.

  2. Вставьте конечную точку уведомлений сервера AppsFlyer, скопированную из AppsFlyer, выберите Уведомления версии 2 и нажмите Сохранить. Примечание: Уведомления версии 1 больше не поддерживаются. Если селектор версии уведомлений не отображается в Apple Store Connect, это означает, что вы уже используете версию 2.

  3. В разделе Информация о приложении прокрутите до Уведомления сервера App Store и рядом с URL-адресом тестового сервера, нажмите Изменить.

  4. Вставьте конечную точку уведомлений сервера AppsFlyer, скопированную из AppsFlyer, выберите Уведомления версии 2 и нажмите Сохранить. Примечание: Уведомления версии 1 больше не поддерживаются. Если селектор версии уведомлений не отображается в App Store Connect, это означает, что вы уже используете версию 2.

2.3 [Необязательно] Пересылка уведомлений от конечной точки в AppsFlyer

Используйте этот шаг, только если хотите оставить свою конечную точку основным назначением для серверных уведомлений App Store, вместо того чтобы отправлять уведомления напрямую в AppsFlyer.

Этот вариант не является рекомендуемой настройкой и требует реализации на бэкенде. Если вы уже настроили AppsFlyer как основную конечную точку на шаге 2.2 выше, пропустите этот шаг.

Для пересылки уведомлений сервера от конечной точки в AppsFlyer, выполните следующие действия:

  1. В App Store Connect, в разделе Информация о приложении прокрутите до Уведомления сервера App Store, и рядом с URL-адресом производственного сервера нажмите Изменить.

  2. Вставьте свой URL-адрес конечной точки сервера.

  3. Выберите Уведомления версии 2. Note: уведомления версии 1 больше не поддерживаются. Если селектор версии уведомлений не отображается в Apple Store Connect, это означает, что вы уже используете версию 2.
  4. Нажмите Сохранить.
  5. В App Store Connect, в разделе Информация о приложении прокрутите до Уведомления сервера App Store, и рядом с URL-адресом тестового сервера нажмите Изменить.

  6. Вставьте свой URL-адрес конечной точки сервера.

  7. Выберите Уведомления версии 2. Примечание: Уведомления версии 1 больше не поддерживаются.
  8. Нажмите Сохранить.
  9. Настройте бэкенд так, чтобы он пересылал уведомления сервера Apple на URL-адрес конечной точки уведомлений AppsFlyer. Запросы должны в точности соответствовать полезной нагрузке App Store в том виде, в котором она получена от Apple. См. требования к формату Apple.

2.4 Test the server notifications integration

Чтобы подтвердить, что AppsFlyer правильно получает уведомления сервера App Store, или если вы недавно настроили конечную точку и уведомления сервера еще не поступали:

  1. В AppsFlyer перейдите к шагу Уведомления сервера App Store.
  2. Кликните Тестировать интеграцию. AppsFlyer отправляет в Apple тестовый запрос уведомления, проверяет, были ли получены от Apple действительные уведомления за последние 7 дней, и отображает один из следующих результатов:

    • Подтверждение того, были ли получены действительные уведомления.
    • Сообщение о статусе, указывающее, что уведомления не найдены.

     Примечание:

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

    • Если статус остается недействительным, подождите немного и повторите попытку.
    • После успешного выполнения теста или когда будете готовы продолжить, нажмите Сохранить и далее.

Шаг 2 (Android): Настройка уведомлений сервера Google Play

Для получения данных о доходах от покупок в приложении и подписок из Google Play, выберите один из следующих вариантов:

Предварительные условия: доступ к Google Play Console и пользовательскому интерфейсу AppsFlyer.

2.1 Отправка уведомлений Google Play непосредственно в AppsFlyer

  1. В AppsFlyer на шаге 2, Set up Google Play server notifications, выберите Allow AppsFlyer topic to get RTDN messages directly from Google.
  2. Скопируйте тему AppsFlyer в буфер обмена.
  3. В Google Play Console > Главная, выберите приложение для просмотра. Откроется дэшборд.

  4. Перейдите в Monetize with Play > Monetization setup, и в Google Play Billing разделе убедитесь, что Enable real-time notification отмечено.

  5. В поле Название темы вставьте адрес темы AppsFlyer, который вы скопировали.

  6. Для Содержания уведомлений выберите Подписки, аннулированные покупки и все одноразовые продукты.

  7. Нажмите Save changes. Чтобы изменения вступили в силу, может потребоваться время (иногда вплоть до 24 часов). Поэтому не спешите проводить тестирование.

2.2. [Необязательно] Перенаправление уведомлений Google Play в AppsFlyer

Примечание: этот шаг предназначен только для тех случаев, когда вы не выбрали рекомендуемый способ получения данных о доходах от покупок в приложении и подписок от Google Play, отправляя уведомления напрямую в AppsFlyer. Если вы выполнили всё необходимое для выбора рекомендуемого метода и создали тему, в которой AppsFlyer напрямую получает RTDN-уведомления от Google Play, пропустите этот шаг.

Если вы хотите добавить AppsFlyer в качестве подписчика на существующий топик PUB/SUB, следуйте приведенным ниже инструкциям.

Предварительные условия: доступ к Google Cloud Platform и пользовательскому интерфейсу AppsFlyer.

Чтобы перенаправлять уведомления Google Play в AppsFlyer:

  1. В AppsFlyer в боковом меню перейдите в Settings > Revenue Settings,
  2. Выберите своё приложение.
  3. На вкладке Purchases & subscriptions выберите Forward your RTDN topic messages to AppsFlyer.
  4. Скопируйте URL конечной точки в буфер обмена.
  5. В Google Cloud Platform в вашем проекте найдите Pub/Sub.

  6. В Pub/Sub перейдите в Topics раздел и убедитесь, что у вас есть специальная тема pub/sub для подписок.

  7. В Pub/Sub, перейдите в Subscriptions раздел и нажмите Create Subscriptions.

  8. Введите идентификатор ID подписки.

  9. Выберите соответствующую тему pub/sub подписки из раскрывающегося списка.

  10. Для Типа доставки выберите Push.

  11. Вставьте URL-адрес конечной точки который вы скопировали из AppsFlyer.

  12. В разделе Expiration period выберите Never expire.

  13. Нажмите Создать.

  14. Перейдите в раздел Подписки и нажмите на название нужной темы.

  15. Скопируйте название темы в буфер обмена.

  16. В Google Play Console перейдите в Monetize with Play > Monetization setup. и в разделе Google Play Billing вставьте в поле Topic name название темы, которое вы скопировали на предыдущем шаге.

  17. Для Notification content, выберите Subscriptions, voided purchases, and all one-time products.

  18. Нажмите Сохранить изменения. Чтобы изменения вступили в силу, может потребоваться время (иногда вплоть до 24 часов). Поэтому не спешите проводить тестирование.

2.3 Отправка тестового уведомления из Google Play Console

Чтобы проверить, что AppsFlyer корректно получает уведомления разработчика Google Play в реальном времени (RTDN), отправьте тестовое уведомление из Google Play Console:

  1. Нажмите Send test notification. При этом в тему Pub/Sub, настроенную для AppsFlyer, отправляется тестовое сообщение RTDN.

    image (33).png
  2. В разделе Google Play Billing найдите раздел Topic name.
  3. В меню слева перейдите в Monetise with Play → Monetisation setup.
  4. Перейдите в Google Play Console.

2.4 Подтверждение доставки уведомлений в AppsFlyer

  1. Если тест выполнен успешно или вы готовы продолжить, нажмите Save and next.
  2. Результат: AppsFlyer показывает, были ли получены какие-либо уведомления за последние 7 дней.
    • Если проверка прошла успешно, в интерфейсе отображаются дата и время самого последнего уведомления.
    • Если уведомления не были получены, интерфейс указывает, что за последние 7 дней уведомления не найдены.
    • Если статус не отображается, проверьте конфигурацию Pub/Sub и повторно отправьте тестовое уведомление.
  3. На шаге Google Play Server Notifications нажмите Test integration.

Шаг 3: Реализация коннектора SDK

В этом шаге вы подготовите своих разработчиков к интеграции коннектора SDK для покупок от AppsFlyer и настройке тестовой среды для тестирования.

Чтобы реализовать коннектор SDK, выполните следующие шаги:

  1. На шаге Implement SDK Connector скопируйте готовое сообщение отображаемое на дэшборде.
  2. Отправьте его своим разработчикам. Оно включает в себя:
    • название и идентификатор приложения;
    • Ссылка на руководство по интеграции SDK.
    • Инструкции по настройке тестовой среды (sandbox = true)
    • Этапы тестирования (с использованием TestFlight)

Это сообщение содержит всю информацию, необходимую вашим разработчикам для завершения интеграции и начала тестирования.

 Примечание:

Коннектор использует автоматическое обнаружение транзакций. В качестве альтернативы можно реализовать метод SDK validateAndLog, чтобы вручную регистрировать каждую транзакцию. Этот метод поддерживает не все функции, доступные при использовании коннектора. Подробнее о двух вариантах интеграции SDK см. в документации DevHub.

Шаг 4. Проверка реализации SDK

Протестируйте интеграцию дохода от покупок в приложении и подписок в среде песочницы, чтобы убедиться, что коннектор SDK интегрирован правильно, а уведомления сервера корректно настроены и получены AppsFlyer.

Тестирование реализации SDK

Чтобы проверить, получила ли AppsFlyer действительные полезные нагрузки событий покупок и подписок из вашего приложения за последние 7 дней, выполните следующие шаги:

  1. На шаге Проверка реализации SDK нажмите Тест реализации SDK.
  2. Просмотрите результаты, включая временную метку самой последней полезной нагрузки, полученной AppsFlyer.

     Примечание:

    Этот тест только подтверждает, что запросы доходят до AppsFlyer, и не проверяет полноту или корректность данных.

  3. Чтобы полностью проверить реализацию, выполните приведенные ниже шаги тестирования.

События и параметры песочницы

  • Коннектор SDK генерирует события только для начальной транзакции в песочнице:
    • Покупка в приложении: af_purchase_sandbox_sdk
    • Подписка: af_ars_sandbox_sdk
  • AppsFlyer обрабатывает уведомления сервера, только если было зафиксировано событие SDK для исходной транзакции.
    • Покупка в приложении S2S: af_purchase_sandbox_s2s
    • Подписка S2S: af_ars_sandbox_s2s
  • Если SDK никогда не регистрирует исходную транзакцию. S2S-событие не создается.

Особенности iOS

  • Если af_purchase_sandbox_sdk включает af_sandbox_revenue, оно сопоставляется с production-событием af_purchase.
  • Если доход отсутствует, оно сопоставляется с production-событием af_purchase_free.

Особенности Android

  • Покупки, совершенные лицензированными тестировщиками, всегда генерируют события песочницы. даже если режим песочницы не настроен в SDK.

Обязательные параметры для тестовых событий

Убедитесь, что каждое событие покупки в песочнице включает:

  • Доход = 0 (чтобы не повлиять на реальные отчеты).
  • af_sandbox_revenue = фактическая цена продукта (чтобы корректный доход был атрибутирован).
  • af_validated = true. Если false, вернитесь назад и проверьте ключ магазина.
  • af_validation_type = receipt_validation.

Тестирование измерения доходов от внутренних покупок (IAP) и подписок

Необходимые условия:

  • Для iOS убедитесь, что в App Store Connect в разделе App Store Server Notifications эндпоинт AppsFlyer указан в качестве Sandbox Server URL.

Чтобы протестировать доход от покупок в приложении и подписок:

  1. Скажите разработчикам, чтобы они следовали инструкциямAndroid, iOS и Unity , чтобы настроить среду песочницы в коннекторе SDK.
  2. Сделайте тестовые покупки или оформите подписку с помощью Тестировщика лицензий в Google Play. Для iOS используйте TestFlight. Примечание: продукт подписки можно протестировать только один раз на устройстве. На практике устройство не может зарегистрировать несколько тестовых покупок одной и той же подписки. Дополнительные попытки не будут зарегистрированы.
  3. Выполните тестовый возврат средств, продление или отмену подписки с помощью тестировщика лицензий в Google Play и TestFlight в iOS. Примечание. Если вы тестируете подписку, подождите, пока AppsFlyer получит серверное уведомление от магазина. Обычно оно поступает в течение нескольких минут после первоначальной покупки.
  4. На шаге Проверка реализации коннектора SDK нажмите Проверить реализацию SDK. Показывает, были ли за последние 7 дней успешно получены какие-либо полезные данные SDK от Purchase Connector.
  5. Убедитесь, что тестовые события отображаются одним из следующих способов:

  6. Убедитесь, что событие отображается на дэшборде активности AppsFlyer. В AppsFlyer перейдите в раздел Анализ > Активность, затем на графике Динамика активности откройте вкладку «События в приложении» и выберите событие для тестирования. Покупка подписки с автоматическим продлением называется af_ars_s2s_sandbox. Мероприятие включает в себя:
    • Значение дохода равно 0 (чтобы не искажать реальные отчеты AppsFlyer).
    • Параметр af_sandbox_revenue, который содержит значение дохода от купленного продукта, обеспечивая корректную отчетность по доходу.
       

Шаг 5: Проверьте и обновите настройки

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

  1. Убедитесь, что переключатель Проверять покупки через App Store включен.
  2. Проверьте следующие варианты в разделе Покупки:
    • Предотвращать дублирование покупок для чистоты данных: предотвращает запись транзакций, о которых уже сообщалось в отчетности.
    • Автоматически измерять возвраты, отмены и отрицательный доход: измеряет события, связанные с возвратами, и регистрирует их как отрицательный доход.
    • Избегать двойного учета дохода от Family Sharing: предотвращает дублирование дохода от Family Sharing. Эти события помечаются значением purchase_ownership_type=FAMILY_SHARED и сообщают о нулевом доходе.
  3. Убедитесь, что переключатель Измерять и атрибутировать доход для автоматически продлеваемых подписок включен:
  4. Статус следующих настроек:
    • Настройка ключа App Store
    • Настройка конечной точки уведомлений сервера setup
    • Внедрение & тестирование коннектора SDK

Шаг 6: Выпустите версии приложения с коннектором SDK

После того, как все предыдущие шаги настроены, а коннектор SDK от AppsFlyer для измерения дохода от покупок интегрирован в приложение, вашему разработчику необходимо выпустить версию приложения с интегрированным коннектором SDK.

Однако, прежде чем разработчик выпустит новую версию приложения, убедитесь, что:

  • Внутренние события приложения, которые вы хотите регистрировать как покупки в приложении или подписки, не блокируются одним из правил проверки, которые вы настроили в AppsFlyer.
  • Ваш разработчик должен отметить все флажки безопасной среды как false.

После релиза приложения с коннектором SDK будут генерироваться события покупок в приложении и события подписок и будут доступны на всех дэшбордах AppsFlyer, а также в агрегированных отчетах и отчетах о сырых данных, включая Revenue ETL.

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

Переход на ROI360 Store revenue (с валидации чека)

Если вы завершили онбординг для валидации чека, но хотите активировать продукт ROI360 Store revenue, выполните следующие действия:

  1. В AppsFlyer в боковом меню откройте Настройки и в разделе ROI360 выберите Настройки дохода.
  2. Откройте вкладку Покупки и подписки. Появится баннер о том, что ROI360 доступен, но не активен.
  3. Нажмите Просмотреть сравнение продуктов, чтобы понять преимущества, включая атрибуцию возвратов, отчетность по чистому доходу и измерение полного жизненного цикла подписки.
  4. Кликните Активировать ROI360.
  5. Выполните шаг Включить уведомления сервера магазина приложений. Дополнительные сведения см. в разделе Настройка серверных уведомлений App Store или Настройка серверных уведомлений Google Play.
  6. В разделе Purchases & subscriptions убедитесь, что параметр Тип продукта теперь установлен на ROI360.
  7. Проверьте текущую настройку SDK, чтобы убедиться, что она поддерживает необходимую вам функцию учета дохода ROI360 Store.

 Примечание:

Функция учета дохода ROI360 Store поддерживает два метода интеграции: Purchase SDK connector и Validate and Log. Из этих двух вариантов мы рекомендуем использовать Purchase SDK Connector, чтобы получить следующие преимущества:

  • Автоматическое обнаружение транзакций
  • Измерение дохода от существующих подписчиков (пользователей, оформивших подписку до интеграции)
  • Поддержка изменений цены подписки, обеспечивающая точную отчетность по доходу при обновлении цен.

Если эти возможности вам не нужны, вы можете продолжить использовать интеграцию Validate and Log.

Как проверить метод интеграции SDK

Чтобы подтвердить, использует ли ваше приложение Purchase SDK Connector или Validate and Log:

  1. Перейдите к шагу Integrate SDK Connector.
  2. Нажмите Test SDK integration. Вы увидите, когда AppsFlyer получил последний payload SDK за последние 7 дней и поступил ли он из Purchase SDK Connector или Validate and Log.