Виртуальные предметы
Как это работает
Виртуальные предметы — это внутриигровые товары, которые пользователь может приобрести за реальную или виртуальную валюту или получить в качестве бонуса. Они не имеют физического выражения и используются только внутри игры. Примеры виртуальных предметов: скины, зелья, оружие и другие элементы, влияющие на игровой процесс или внешний вид персонажа.
Основные возможности:
- Гибкая настройка цен:
- Установка цены для отдельного предмета в реальной и/или виртуальной валюте.
- Создание бесплатных предметов.
- Автоматическое определение страны и валюты пользователя.
- Настройка доступности:
- Ограничение продаж предметов в отдельных регионах.
- Ограничение количества предметов, доступных для покупки.
- Ограничение времени отображения предметов в магазине.
- Настройка предметов, недоступных для покупки. Предмет можно скрыть из каталога, но оставить доступным в составе Бандла или в качестве бонуса к другому товару.
Как настроить
Настройка в Личном кабинете
Настройка в вашем аккаунте
- В проекте в Личном кабинете перейдите в раздел Каталог товаров > Все товары.
- В проекте в аккаунте перейдите в раздел Каталог товаров > Все товары.
- В проекте в аккаунте перейдите в раздел Каталог товаров > Все товары.
- В проекте в аккаунте перейдите в раздел Каталог товаров > Все товары.
- В проекте в аккаунте перейдите в раздел Каталог.
- Нажмите Создать товары и в раскрывающемся списке выберите Виртуальный предмет.
- В разделе Общие настройки укажите:
- артикул;
- одну или несколько групп, которым должен принадлежать предмет (опционально);
- название;
- краткое описание;
- расширенное описание — чтобы добавить его, включите соответствующий переключатель (опционально).

- В разделе Media загрузите одно или несколько изображений или видео (опционально) — с устройства или по ссылке. В магазине, созданном с помощью редактора сайтов Xsolla, во всех карточках товара отображается файл с меткой Main, остальные файлы доступны только в карточках с медиагалереей. Файл с меткой Main также возвращается в ответах методов API получения каталога.

- В разделе Настройки цен задайте цену или создайте бесплатный предмет:
- Чтобы задать цену, выберите тип товара – Платный товар, активируйте переключатель Цены в реальной валюте и/или Цены в виртуальной валюте и укажите цену. При необходимости настройте региональные цены.
- Чтобы создать бесплатный предмет, выберите тип товара – Бесплатный товар.
Предмет может иметь цены в нескольких реальных и виртуальных валютах. В этом случае необходимо указать валюту по умолчанию для каждого типа: одну — среди реальных, одну — среди виртуальных.
Цену в виртуальной валюте можно указать, только если виртуальная валюта уже создана в проекте.

- Чтобы ограничить количество предметов, доступное для покупки:
- Активируйте переключатель в разделе Лимиты покупок и введите необходимое число.
- Настройте частоту обновления лимитов, для этого в раскрывающемся списке выберите период:
- Каждый день.
- Каждую неделю.
- Каждый месяц.
- Настроить интервал. Интервал рассчитывается от даты начала периода показа предмета в магазине.
- Без регулярного обновления.
- Задайте расписание обновления, указав параметры, соответствующие периоду.

- Чтобы настроить лимит по времени отображения предмета (опционально):
- Активируйте переключатель в разделе Добавить период отображения.
- Укажите часовой пояс, начало и конец периода.
Чтобы не указывать конец периода отображения предмета, активируйте переключатель Без даты окончания.

- Настройте атрибуты одним из способов (необязательно):

- Если предмет платный и будет использоваться в любых механиках со случайной наградой (например, в лутбоксах или гача), активируйте переключатель Отметить как платное случайное вознаграждение.
Нажмите кнопку Создать.
В открывшемся окне выберите статус товара и нажмите Продолжить.

Созданный предмет отобразится в разделе Все товары.
Настройка через API
Для настройки виртуальных предметов используйте методы подраздела Admin из группы методов Virtual items and currency.
| Задача | Метод API |
|---|---|
| Создать виртуальный предмет. | Create virtual item. |
| Получить информацию о виртуальном предмете. | Get virtual item. |
| Получить список виртуальных предметов. | Get list of virtual items. |
| Получить список виртуальных предметов по указанной группе. | В методе API Get list of virtual items by specified group external id передайте параметр external_id. |
| Получить список виртуальных предметов по группе для администрирования. | В методе API Get list of virtual items by specified group id передайте параметр group_id. |
| Обновить виртуальный предмет. | Update virtual item. |
| Удалить виртуальный предмет. | Delete virtual item. |
| Ограничить количество виртуальных предметов, доступных для покупки. | В методах API Create virtual item или Update virtual item передайте параметры:
|
Подробнее об ограничениях см. следующие руководства:
Отображение виртуальных предметов в магазине
Отображение виртуальных предметов зависит от способа реализации каталога — через конструктор сайтов или через API.
Отображение через редактор сайта
Чтобы виртуальный предмет отобразился на вашем сайте:
В проекте в Личном кабинете перейдите в раздел Storefronts > Websites.
В панели нужного сайта нажмите кнопку Open Site Builder.
В проекте в аккаунте перейдите в раздел Storefronts > Websites.
В панели нужного сайта нажмите кнопку Open Site Builder.
В проекте в аккаунте перейдите в раздел Storefronts > Websites.
В панели нужного сайта нажмите кнопку Open Site Builder.
В проекте в аккаунте перейдите в раздел Storefronts > Websites.
В панели нужного сайта нажмите кнопку Open Site Builder.
В проекте в аккаунте для мобильных игр перейдите в раздел Web Shop.
Нажмите панель нужного сайта.
Если на сайте несколько страниц, выберите нужную:
- Нажмите на название текущей страницы в верхней части редактора.
- Выберите нужную страницу из выпадающего списка.
В разделе блока Store в поле Item type выберите Virtual items, а в поле Item group выберите группу товаров, которую вы хотите продавать на сайте.
После внесения всех необходимых изменений и подготовки сайта к запуску:
- В правом верхнем углу редактора сайта нажмите Publish.
- Отметьте страницы, которые нужно опубликовать.
- Нажмите Publish.
Если публикация сайта недоступна, убедитесь, что выполнены все условия:
- На сайте нет пустых разделов (они помечены красным индикатором).
- Лицензионное соглашение с Xsolla подписано.
- Главная страница опубликована или выбрана для публикации. Нельзя опубликовать дочерние страницы раньше главной.
После публикации на сайте появится секция с группой виртуальных предметов. Если предметы не отображаются, проверьте, что их статус — Available и не активен лимит времени отображения.
Получение данных о виртуальных предметах через API
Для получения каталога виртуальных предметов на клиенте используйте методы подраздела Catalog из группы методов Virtual items and currency. Для их использования авторизация не требуется.
| Задача | Метод API |
|---|---|
| Получить виртуальный предмет по артикулу. | В методе API Get virtual item by SKU передайте параметр item_sku. |
| Получить список виртуальных предметов. | Get virtual items list. |
| Получить список виртуальных предметов по указанной группе. | В методе API Get items list by specified group передайте параметр external_id. |
| Получить полный список виртуальных предметов в проекте. | Get all virtual items list. |
Начисление виртуальных предметов пользователям
Способ начисления зависит от настроек интеграции в вашем проекте:
- Если вы интегрировали PlayFab, виртуальная валюта и предметы автоматически зачисляются в инвентарь пользователя в PlayFab.
- Если вы используете собственную систему выдачи, все виртуальные предметы и валюту вы выдаете на своей стороне. Рекомендуем настроить обработчик вебхуков, чтобы получать данные о заказе на вашем бэкенде. Необходимые данные содержатся в вебхуке Successful payment for order.
Подробная информация об этом и других способах получения данных о покупке приведена в разделе Set up order status tracking.
Полезные ссылки
Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.