Купоны

Как это работает

Купонные акции — это маркетинговый инструмент для привлечения внимания потенциальных пользователей к продукту и повышения уровня продаж. При применении купона пользователю начисляется вознаграждение. В качестве вознаграждения может использоваться:

  • пакет виртуальной валюты;
  • игровой ключ;
  • виртуальный предмет.

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

Основные возможности:

  • настройка общего количества погашений в рамках кампании;
  • настройка количества погашений для одного пользователя в рамках кампании;
  • многократная генерация кодов для купонов;
  • применение региональных ограничений для акций и товаров, привязанных к купону.

Ограничения:

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

Сценарий пользователя:

  1. Пользователь использует купон.
  2. Товар, привязанный к купону, доставляется пользователю одним из способов: 
    • в инвентарь (виртуальный предмет или пакет виртуальной валюты);
    • на email-адрес (игровой ключ);
    • в систему владения играми (игровой ключ).

Для кого подходит

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

Как настроить

Предварительные действия

  1. Зарегистрируйтесь в Личном кабинете Иксолла.
  2. Подключите Магазин к вашему проекту.

Сценарий интеграции

  1. Настройте акционную кампанию с купонами.
  2. Используйте методы получения награды по купону.
  3. Используйте методы погашения купонов по коду.

Настройка кампании с купонами

  1. В разделе Магазин > Акции в Личном кабинете создайте акцию.
  2. Задайте необходимые параметры:
    1. Укажите название акции.
    2. Выберите тип Купоны.
  3. Выберите вознаграждение, которое получит пользователь при погашении купона. Возможные варианты:
    1. Пакет виртуальной валюты.
    2. Игровой ключ.
    3. Виртуальный предмет (один или несколько, в том числе бандлы и непродлеваемые подписки).
  4. Укажите общее количество погашений и количество погашений на пользователя.
  5. Укажите срок действия кампании.
  6. Проверьте настройки и сохраните акцию.
  7. Перейдите в раздел редактирования акции.
  8. На вкладке Коды выберите тип генерации купонов.
  9. Сгенерируйте код купона или введите код вручную.
  10. Сохраните изменения.
  11. Активируйте акцию.

Купон с пакетом виртуальной валюты

Для купона с пакетом виртуальной валюты необходимо указать используемый пакет валюты. Чтобы создать пакет:

  1. Перейдите в настройки модуля Виртуальная валюта и задайте следующие параметры:
    • изображение;
    • артикул;
    • название;
    • стоимость за единицу;
    • валюта по умолчанию.
  2. Создайте необходимое количество пакетов виртуальной валюты и каждому задайте следующие параметры:
    • изображение;
    • артикул;
    • название;
    • описание;
    • используемая валюта;
    • количество валюты в пакете;
    • цена;
    • валюта по умолчанию.
  3. Включите отображение пакетов в Магазине.

Купон с игровым ключом

Для купона с игровым ключом необходимо указать артикул ключа и способ выбора DRM:

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

Купон с виртуальным предметом

Для купона с виртуальным предметом необходимо выбрать артикул добавляемого предмета и его количество. Для одного купона вы можете выбрать несколько виртуальных предметов с разными артикулами, в том числе бандлы и непродлеваемые подписки.

Генерация купонов

В кампании может быть множество купонов. Формат кода купона может быть представлен в следующих вариантах:

  1. Введенная вручную строка (максимум 128 символов). Подходит для кампании из единственного купона с многократным использованием.
  2. Сгенерированная строка — строка из цифр и букв латинского алфавита длиной 10 символов. Подходит для кампании с большим количеством купонов.
Коды купонов генерируются в редакторе акции после создания акционной кампании. Возможна многократная генерация кодов. Загрузка введенных вручную кодов купонов выполняется по запросу.

Note:
Код купона чувствителен к регистру. Например, winter2021 и WINTER2021 — разные купоны.

Региональные ограничения

Региональные ограничения устанавливаются на всю акционную кампанию. Установка региональных ограничений выполняется по запросу.

Получение вознаграждения по купону

Реализуйте вызов метода Get coupon rewards для получения списка предметов, которые могут быть начислены пользователю при погашении купона. В зависимости от значения параметра is_selectable в ответе, возможны два сценария:

  1. Если в ответе is_selectable=true, для каждого элемента item с type=unit необходимо отобразить форму выбора элементов из объекта unit_items, в которой пользователь сможет выбрать только один элемент для каждого типа unit
Пример ответа:

Copy
Full screen
Small screen
{
   "bonus": [{
       "item": {
           "sku": "xsollus_gold_edition",
           "name": "Xsollus: Gold Edition",
           "type": "unit",
           "description": null,
           "image_url": "https:\/\/cdn3.xsolla.com\/img\/misc\/images\/9541470622d96a821a9a11ea7763ea4c.png",
           "unit_items": [{
               "sku": "xsollus_gold_edition_steam",
               "name": "Xsollus: Gold Edition (steam)",
               "type": "game_key",
               "drm_name": "Steam",
               "drm_sku": "steam"
           }, {
               "sku": "xsollus_gold_edition_playstation",
               "name": "Xsollus: Gold Edition (playstation)",
               "type": "game_key",
               "drm_name": "Playstation",
               "drm_sku": "playstation"
           }, {
               "sku": "xsollus_gold_edition_xbox",
               "name": "Xsollus: Gold Edition (xbox)",
               "type": "game_key",
               "drm_name": "XBox",
               "drm_sku": "xbox"
           }, {
               "sku": "xsollus_gold_edition_rockstar",
               "name": "Xsollus: Gold Edition (rockstar)",
               "type": "game_key",
               "drm_name": "Rockstar Games Launcher",
               "drm_sku": "rockstar"
           }]
       },
       "quantity": 1
   }, {
       "item": {
           "sku": "xsollus_bonus_pack_edition",
           "name": "Xsollus: Bonus Pack",
           "type": "unit",
           "description": null,
           "image_url": "https:\/\/cdn3.xsolla.com\/img\/misc\/images\/aa2efd78dfd4e5dda5293f8c8e49af6d.png",
           "unit_items": [{
               "sku": "xsollus_bonus_pack_edition_steam",
               "name": "Xsollus: Bonus Pack (steam)",
               "type": "game_key",
               "drm_name": "Steam",
               "drm_sku": "steam"
           }, {
               "sku": "xsollus_bonus_pack_edition_playstation",
               "name": "Xsollus: Bonus Pack (playstation)",
               "type": "game_key",
               "drm_name": "Playstation",
               "drm_sku": "playstation"
           }, {
               "sku": "xsollus_bonus_pack_edition_xbox",
               "name": "Xsollus: Bonus Pack (xbox)",
               "type": "game_key",
               "drm_name": "XBox",
               "drm_sku": "xbox"

           }]
       },
       "quantity": 3
   }],
   "is_selectable": true

  1. Если is_selectable=false, дополнительные параметры в запросе передавать не нужно.

Погашение купона по коду

Реализуйте вызов метода Redeem coupon code, чтобы использовать купон. В зависимости от значения параметра is_selectable в ответе метода Get coupon rewards, возможны два сценария:

  1. Если is_selectable=true, при вызове метода Redeem coupon code необходимо передать объект selected_unit_items в следующем формате:

Copy
Full screen
Small screen
selected_unit_items:{
      unit_1_sku: "selected_unit_item_sku",
      unit_2_sku: "selected_unit_item_sku"
}

Пример ответа:

Copy
Full screen
Small screen
{
  {
    "items": [
    {
      "sku": "xsollus_gold_edition_steam",
      "name": "Xsollus: Gold Edition (steam)",
      "type": "game_key",
      "description": null,
      "image_url": "https:\/\/cdn3.xsolla.com\/img\/misc\/images\/9541470622d96a821a9a11ea7763ea4c.png",
      "attributes": [],
      "is_free": true,
      "groups": [],
      "price": null,
      "virtual_prices": [],
      "drm_name": "Steam",
      "drm_sku": "steam",
      "has_keys": false,
      "is_pre_order": true,
      "release_date": null,
      "quantity": 1
    },
    {
      "sku": "xsollus_bonus_pack_edition_origin",
      "name": "Xsollus: Bonus Pack (origin)",
      "type": "game_key",
      "description": null,
      "image_url": "https:\/\/cdn3.xsolla.com\/img\/misc\/images\/aa2efd78dfd4e5dda5293f8c8e49af6d.png",
      "attributes": [],
      "is_free": true,
      "groups": [],
      "price": null,
      "virtual_prices": [],
      "drm_name": "Origin",
      "drm_sku": "origin",
      "has_keys": false,
      "is_pre_order": true,
      "release_date": null,
      "quantity": 3
  }
  ]
}

  1. Если is_selectable=false, дополнительные параметры в запросе передавать не нужно.