Промокоды

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

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

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

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

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

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

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

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

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

Внимание

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

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

Например:

Цена игрового ключа — $10. В Личном кабинете для игровых ключей созданы акции:

  • скидочная акция Черная пятница с размером скидки 10% и периодом действия 4–30 ноября;
  • скидочная акция Распродажа с размером скидки 20% и периодом действия 15 ноября — 15 декабря;
  • акция с промокодом на скидку 5% и периодом действия 1–30 ноября.

20 ноября в момент покупки игрового ключа действуют обе скидочные акции и акция с промокодом.

Итоговая стоимость игрового ключа будет определена из расчета (($10 - 10%) - 20%) - 5% и составит $6,84.

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

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

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

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

Примечание
Создание акций с промокодами недоступно при продаже ключей по прямой ссылке или через виджет. Вы можете создавать акции с промокодами при продаже игровых ключей:
  1. С помощью In-Game Store & Buy Button API. В этом случае используйте метод Redeem promo code, чтобы применить промокод к корзине товаров.
  2. Через интерфейс магазина, созданного с помощью Конструктора сайтов.

Если вы реализуете быструю покупку одного ключа, используя метод Create order with specified item, пользователь переходит к оплате без перехода в корзину.

При этом на стороне Иксоллы формируется корзина, которая не отображается пользователю. Это необходимо, чтобы корректно применить все действующие скидки к покупке пользователя и отобразить ему сумму с учетом всех скидок в форме оплаты.

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

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

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

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

  1. Создайте пакет виртуальной валюты.
  2. Укажите пакет виртуальной валюты в качестве бонусного товара.

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

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

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

Для создания промокода с виртуальным предметом:

  1. Создайте виртуальный предмет.
  2. Укажите виртуальный предмет в качестве бонусного товара.

Чтобы создать виртуальные предметы:

  1. Перейдите в настройки модуля Магазин > Виртуальные предметы и нажмите Создать предмет.
  2. Для каждого предмета добавьте:
    • изображение (опционально);
    • артикул;
    • одну или несколько групп, которым должен принадлежать предмет (опционально);
    • название предмета;
    • описание предмета;
    • свойство предмета — расходуемый, нерасходуемый или с ограниченным сроком действия;
    • цены в реальной и виртуальной валюте.
  3. Установите переключатель Показывать предмет в магазине в положение Вкл.
  4. Нажмите Создать предмет.

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

Промокод с игровым ключом

Для создания промокода с игровым ключом:

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

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

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

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

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

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

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

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

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

Реализуйте вызов метода Get promo code 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_nintendo_eshop",
               "name": "Xsollus: Gold Edition (nintendo_eshop)",
               "type": "game_key",
               "drm_name": "Nintendo Switch eShop",
               "drm_sku": "nintendo_eshop"
           }]
       },
       "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_origin",
               "name": "Xsollus: Bonus Pack (origin)",
               "type": "game_key",
               "drm_name": "Origin",
               "drm_sku": "origin"
           }, {
               "sku": "xsollus_bonus_pack_edition_drmfree",
               "name": "Xsollus: Bonus Pack (drmfree)",
               "type": "game_key",
               "drm_name": "DRM Free",
               "drm_sku": "drmfree"
           }, {
               "sku": "xsollus_bonus_pack_edition_gog",
               "name": "Xsollus: Bonus Pack (gog)",
               "type": "game_key",
               "drm_name": "GOG",
               "drm_sku": "gog"
           }, {
               "sku": "xsollus_bonus_pack_edition_rockstar",
               "name": "Xsollus: Bonus Pack (rockstar)",
               "type": "game_key",
               "drm_name": "Rockstar Games Launcher",
               "drm_sku": "rockstar"
           }]
       },
       "quantity": 3
   }],
   "discount": {
       "percent": null
   },
   "is_selectable": true

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

Погашение промокода

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

  1. Если is_selectable=true, при вызове метода Redeem promo 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, дополнительные параметры в запросе передавать не нужно.

Была ли статья полезна?
Спасибо!
Что может сделать страницу еще лучше? Сообщение
Жаль, что так произошло
Расскажите, почему статья не была полезна. Сообщение
Спасибо за обратную связь!
Ваши мысли и идеи помогут нам улучшить ваш пользовательский опыт.
Оценить страницу
Оценить страницу
Что может сделать страницу еще лучше?

В другой раз

Спасибо за обратную связь!
Последнее обновление: 30 декабря 2022

Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.

Сообщите о проблеме
Мы постоянно улучшаем качество нашей документации. Ваш отзыв поможет нам в этом.
Укажите email-адрес, чтобы мы могли связаться с вами
Спасибо за обратную связь!