Работа с платежами в RuStore
Вы можете монетизировать своё приложение через покупки в RuStore. Вот 4 варианта, как это сделать:
- Продать приложение на витрине. Создайте платное приложение, загрузите его на витрину RuStore и получайте выплаты за скачивания.
Учитывайте, что продажа приложения на витрине приносит доход только один раз. Если вы хотите регулярно получать выплаты за работу своего приложения, рекомендуем рассмотреть добавление подписок и платных товаров.
- Добавить возобновляемые подписки. Подписки дают пользователям дополнительные преимущества внутри приложения или игры за фиксированную оплату в месяц.
- Добавить потребляемые товары. Это покупки, которые можно купить более одного раза, чтобы использовать в приложении. Например, бусты для здоровья, подсказки, кристаллы и монетки в играх.
- Добавить непотребляемые товары. В отличие от потребляемых, их можно купить только один раз и нельзя потратить в приложении или игре. Приобретая такие товары, пользователь становится их владельцем. Это может быть отключение рекламы, скрытый уровень или премиальная техника в играх.
Все виды платных товаров добавляются через систему RuStore Консоль.
С чего начать
Чтобы начать работу с платежами, заполните заявление на подключение монетизации в соответ ствии с формой регистрации бизнеса:
- Юрлица и ИП, зарегистрированные в РФ.
- Иностранные компании, незарегистрированные в РФ.
- Физические лица со статусом самозанятых.
Условия приема платежей
- Kotlin
- Java
-
Приложение загружено в RuStore Консоль.
Обратите внимание, что Billing SDK не поддерживает работу в ТВ-версии RuStore.
-
Приложение прошло модерацию (публиковать приложение необязательно).
Подпись тестируемой сборки (например, debug
) приложения должна совпадать c подписью сборки приложения, которая была загружена в консоль и прошла модерацию ранее (например, release
).
- Пользователь и приложение не должны быть заблокированы в RuStore.
-
Для приложения включена возможность покупок в RuStore Консоли.
Сервис имеет некоторые ограничения на работу за пределами России.
-
Приложение загружено в RuStore Консоль.
Обратите внимание, что Billing SDK не поддерживает работу в ТВ-версии RuStore.
-
Приложение прошло модерацию (публиковать приложение необязательно).
Подпись тестируемой сборки (например, debug
) приложения должна совпадать c подписью сборки приложения, которая была загружена в консоль и прошла модерацию ранее (например, release
).
- Пользователь и приложение не должны быть заблокированы в RuStore.
-
Для приложения включена возможность покупок в RuStore Консоли.
Сервис имеет некоторые ограничения на работу за пределами России.
Создание платных приложений или продуктов
Добавьте приложение для продажи на витрине в RuStore Консоль, если вы выбрали этот способ монетизации.
Если вы хотите монетизировать приложение с помощью платных продуктов, создайте товары или подписки, которые будут встроены в ваше приложение, через систему RuStore Консоль.
Вы сможете изменить цену товаров и подписок в любой момент. После сохранения изменений, товары будут сразу продаваться по новой стоимости. В случае с подписками, понижение цены коснётся всех пользователей, в том числе тех, у кого ваша подписка активна, а повышение — только новых приобретателей подписки.
См. Как создать платный товар, Как создать подписку
Настройка SDK
Встройте в своё приложение RuStore SDK, чтобы покупатели могли приобрести товары или подписки.
Как работают платежи
На схеме ниже показан примерный алгоритм настройки и подключения платежей, на который вы можете ориентироваться. Учитывайте особенности вашего проекта в работе.
С помощью SDK можно:
- Получить информацию о созданных через RuStore Консоль продуктах.
- Настроить взаимодействие с банковскими приложениями для перенаправления пользователя напрямую на экран оплаты и обратно в ваше приложение
- Инициализировать оплату, чтобы пользователи могли купить добавленные вами товары в приложении.
- Контролировать потребление товаров, чтобы они начислились пользователям без ошибок.
Подробнее про интеграцию см. Настройка SDK платежей
Статусная модель транзакции
Статусная модель покупки потребляемых продуктов (CONSUMABLES
)
Статусная модель покупки непотребляемых продуктов (NON-CONSUMABLES
)
Статусная модель покупки подписок (SUBSCRIPTIONS
)
Обработка незавершённых платежей
Обработка незавершённых платежей производится разработчиком.
Чтобы подтвердить покупку продукта типа CONSUMABLE
и в статусе PAID
вызовите метод подтверждения (потребления) покупки (см. Получение сведений о покупке).
В случае с отменой покупки при использовании методов обработки платежей учитывайте свой внутренний процесс. У некоторых разработчиков он предусматривает проверки перед подтверждением (потреблением) или отменой покупки. В этом случае запросите отдельно статус такой покупки.
Например, если пользователь оплатил товар, который вы по каким-то причинам не можете ему поставить, вызовите метод отмены покупки в статусе PAID
, чтобы отменить покупку.
В случаях, когда метод получения списка покупок возвращает покупку со статусом INVOICE_CREATED
, перед вызовом метода отмены покупки рекомендуется дополнительно проверить статус покупки, используя метод получения сведений о покупке.
Это поможет убедиться, что по данной покупке паблишер не начислил и не будет начислять средства.
Если вы не хотите видеть покупки с таким статусом в списке покупок, можете выполнить отмену самос тоятельно, но это не обязательно, так как RuStore обрабатывает отмену таких покупок на своей стороне.
Иногда после оплаты через приложение банка (СБП, SberPay, T-Pay и др.) и при последующем возврате обратно в приложение статус покупки остаётся INVOICE_CREATED
, при этом статус платежа — неуспешная покупка. Это связано с временем обработки покупки на стороне банка. Поэтому разработчику необходимо правильно связать логику получения списка покупок с жизненным циклом экрана.
Альтернативное решение — отмена покупки в статусе INVOICE_CREATED
только через взаимодействие пользователя с приложением. Например, вы можете вынести эту логику в отдельную кнопку.