Техническое задание: Модернизация системы подписок

Текущая ситуация

В существующем Android-приложении на Unity реализована система подписок, которая использует разные платёжные шлюзы в зависимости от региона пользователя. Для одного региона используется нативная интеграция с платёжной системой через сервер, для остальных - стандартный механизм Unity In-App Purchases (IAP). В данный момент доступны подписки на 1, 3 и 6 месяцев.

Цели проекта

  • Изменение структуры доступных подписок.
  • Реализация функции апгрейда подписки для пользователей из определённого региона.
  • Сохранение и адаптация логики определения региона.

Основные задачи

1. Реорганизация продуктов подписки

  • Удалить из системы (на стороне сервера) подписки на 3 и 6 месяцев.
  • Добавить в систему (на стороне сервера) новую подписку сроком на 1 неделю.
  • Оставить в итоге только два продукта: недельная подписка и месячная подписка.

2. Реализация апгрейда подписки

  • Разработать механизм перехода (апгрейда) пользователя с недельной подписки на месячную.
  • Данная функция должна работать только для пользователей из определённого региона, где используется нативная платёжная система.
  • Логика работы апгрейда должна быть максимально приближена к стандартному поведению механизма апгрейда в Unity IAP.

3. Работа с регионами

  • Сохранить существующую систему определения региона пользователя.
  • Обеспечить, чтобы логика апгрейда корректно активировалась только для целевого региона.
  • Для всех остальных регионов должна продолжать работать стандартная система Unity IAP с двумя типами подписок (неделя и месяц), но без функции апгрейда.

Технические требования

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

Доработка WordPress сайта: верстка и код

Требуется завершающая доработка сайта на WordPress. Необходимо исправить оставшиеся баги, внести правки в верстку и программный код, а также реализовать новые идеи по дизайну.