Бандлы
Как это работает
Бандл — комплект, состоящий из нескольких товаров, которые продаются как единое целое.
Основные возможности:
- Добавление в состав бандла товаров разных типов, таких как:
- виртуальная валюта (в том числе платформозависимая);
- пакет виртуальной валюты;
- игровые ключи для заранее выбранных платформ;
- виртуальные предметы, включая предметы с ограниченным сроком действия;
- бандлы.
- Настройка цены для бандла в реальной и/или виртуальной валюте. Можно указать цены в нескольких реальных или виртуальных валютах, в этом случае необходимо выбрать одну валюту по умолчанию.
- Бесплатные бандлы.
- Ограничение количества доступных для покупки бандлов.
- Ограничение времени отображения бандлов в магазине.
Подробная информация о настройке региональных цен в реальной валюте приведена в документации.
Также вы можете ограничить доступность бандлов в определенных регионах. Подробная информация о региональных ограничениях продаж приведена в документации.
- В PlayFab — для виртуальных валют, предметов, предметов с ограниченным сроком действия и бандлов, если настроена интеграция с PlayFab.
- По электронной почте — для игровых ключей.
- Через вашу собственную систему начислений на основе данных из вебхука Оплата заказа. Этот способ применяется для всех видов товаров, если:
- интеграция с PlayFab не используется;
- вы предпочитаете сами управлять доставкой товаров пользователю и начислять предметы через собственный сервер.
- Если передача содержимого бандла не отключена, после покупки бандла все товары, входящие в бандл, передаются в массиве items как список отдельных товаров. Если в составе бандла содержится другой бандл, он также передается как список отдельных товаров.
При возврате бандла, например при отмене транзакции, будет отправлен вебхук Отмена заказа. Используйте данные вебхука для списания купленных товаров у пользователя.
Ограничения:
- В состав бандла нельзя добавить этот же бандл;
- Нельзя создать пустой бандл.
- Продажа бандла с ключами будет приостановлена, если кончились свободные для продажи ключи из состава бандла.
Ограничение количества доступных для покупки бандлов
Вы можете задать ограничения на покупку бандлов. Например, вы можете продавать:
- ограниченное количество бандлов одному пользователю;
- приветственные бандлы, которые доступны к покупке только один раз.
Если пользователь превысил заданное ограничение, бандл не будет отображаться в каталоге. Если в состав бандла входит предмет или пакет виртуальной валюты с ограничением на покупку и пользователь уже купил допустимое количество, бандл не будет отображаться в каталоге.
Вы можете отобразить в интерфейсе максимальное доступное количество бандлов и оставшееся количество бандлов, которое доступно пользователю.
Чтобы задать ограничение на покупку, при создании бандла в Личном кабинете установите переключатель Ограничивать покупку бандла пользователем в положение Вкл и укажите количество, доступное для покупки.
Вы можете получить информацию о бандлах, используя методы подраздела Catalog из группы методов Бандлы.
В ответе, кроме информации о бандле, вы получите следующую информацию:
- максимальное количество бандлов, которое может купить пользователь;
- оставшееся количество бандлов, доступное пользователю для покупки.
Подробнее о том, как настроить или обновить ограничения, вы можете прочитать в инструкции Ограничения для пользователя.
Для неавторизованного пользователя всегда отображается максимальное количество бандлов, которое он может купить. Чтобы отобразить пользователю оставшееся количество бандлов с учетом действующего ограничения, необходимо передавать данные авторизации пользователей на этапе запроса каталога бандлов с использованием методов подраздела Catalog из группы методов Бандлы.
Для корректного отображения количества бандлов, которое доступно пользователю, необходимо настроить аутентификацию.
- json
1{
2 "items": [
3 {
4 "sku": "kg_1",
5 "name": "kg_10.00_bundle",
6 "type": "bundle",
7 "description": "pricePoint_44056_1",
8 "image_url": null,
9 "long_description": null,
10 "attributes": {
11 "external_id": "genre",
12 "name": "Genre",
13 "values": [
14 {
15 "external_id": "genre_e3364991f92e751689a68b96598a5a5a84010b85",
16 "value": "Casual"
17 },
18 {
19 "external_id": "genre_eba07bfd0f982940773cba3744d97264dd58acd7",
20 "value": "Strategy"
21 },
22 {
23 "external_id": "genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8",
24 "value": "Mobile"
25 }
26 ]
27 },
28 "is_free": false,
29 "order": 999,
30 "groups": [],
31 "price": {
32 "amount": 9.99,
33 "currency": "USD",
34 "amount_without_discount": 9.99
35 },
36 "total_content_price": {
37 "amount": 10.99,
38 "currency": "USD",
39 "amount_without_discount": 10.99
40 },
41 "media_list": [],
42 "virtual_prices": [],
43 "can_be_bought": true,
44 "bundle_type": "standard",
45 "limits": {
46 "$ref": "./Catalog_item_limits.yaml"
47 },
48 "content": [
49 {
50 "sku": "big_rocket",
51 "name": "Big Rocket",
52 "description": "Big Rocket - short description.",
53 "image_url": "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png",
54 "type": "virtual_currency",
55 "quantity": 100,
56 "virtual_item_type": "non_consumable",
57 "attributes": {
58 "external_id": "size",
59 "name": "Size",
60 "values": [
61 {
62 "external_id": "size_e3364991f92e751689a68b96598a5a5a84010b85",
63 "value": "Large"
64 }
65 ]
66 },
67 "is_free": false,
68 "groups": [],
69 "price": {
70 "amount": 10.99,
71 "currency": "USD",
72 "amount_without_discount": 10.99
73 },
74 "virtual_prices": [],
75 "limits": {
76 "per_user": {
77 "total": 5,
78 "available": 5
79 },
80 "per_item": null
81 },
82 }
83 }
84 ]
85 }
86 ]
87}
Xsolla контролирует соблюдение ограничений и не позволяет пользователям приобрести количество бандлов, которое превышает заданное ограничение.
При открытии платежного интерфейса и оплате бандла все неоплаченные заказы с этим бандлом становятся недействительными.
Пример: пользователь может открыть форму оплаты бандла с ограничением на покупку в нескольких вкладках браузера, пока бандл не был куплен. Это автоматически приводит к созданию нескольких заказов на один бандл. После покупки бандла на одной вкладке Xsolla аннулирует все неоплаченные заказы с бандлом.
Ограничение времени отображения бандлов в магазине
Вы можете указать период отображения товаров в магазине, чтобы:- поддерживать актуальность каталога в заданное время, например, во время праздничных распродаж;
- создать бандл заранее, не отображая его в каталоге;
- мотивировать пользователей к покупке с помощью таймера, который может отображаться рядом с бандлом.
Чтобы настроить ограничение времени отображения бандлов через Личный кабинет, выберите пункт Период времени и укажите часовой пояс, начало и конец периода. Чтобы не указывать конец периода отображения бандла, установите флажок Без даты окончания.
Чтобы настроить ограничение времени отображения бандла в магазине через методы API, передайте в методе Создание бандла или Обновление бандла параметры:
periods[0].date_from
с данными о дате и времени начала периода отображения валюты в форматеYYYY-MM-DDThh:mm:ss±TMZ
, гдеTMZ
— указатель часового пояса в форматеhh:mm
GMT;periods[0].date_until
с данными о дате и времени конца периода отображения валюты в форматеYYYY-MM-DDThh:mm:ss±TMZ
, гдеTMZ
— указатель часового пояса в форматеhh:mm
GMT. Чтобы не указывать конец периода отображения валюты, передайте значениеnull
.
Вы можете настроить несколько периодов отображения бандла в магазине. Для этого передайте в методе Создание бандла или Обновление бандла массив объектов с датами начала и конца всех периодов.
Пример:
- json
1"periods": [
2 {
3 "date_from": "2022-06-10T14:00:00+03:00",
4 "date_until": "2022-06-30T14:00:00+03:00"
5 },
6 {
7 "date_from": "2022-07-10T14:00:00+03:00",
8 "date_until": "2022-07-30T14:00:00+03:00"
9 },
10 {
11 "date_from": "2022-08-10T14:00:00+03:00",
12 "date_until": "2022-08-30T14:00:00+03:00"
13 }
14]
Для кого подходит
Для партнеров, которые хотят продавать наборы товаров по цене ниже стоимости его содержимого, что способствует увеличению продаж и привлечению игроков.
Как настроить
Сценарий интеграции
Настройка бандла
Настройте бандлы одним из следующих способов:Настройка через Личный кабинет
- В проекте в Личном кабинете перейдите в раздел Store > Бандлы.
- Нажмите + и в раскрывающемся списке выберите пункт Создать бандл.
- Добавьте:
- изображение (опционально);
- артикул;
- одну или несколько групп, которым должен принадлежать бандл;
- название бандла;
- описание бандла (опционально);
- содержимое бандла.
- Настройте цену бандла:
- Задайте цены или создайте бесплатный бандл:
- Чтобы создать бесплатный бандл, в поле Платно или бесплатно выберите Бесплатный бандл.
- Чтобы задать цену, в поле Платно или бесплатно выберите Платный бандл и укажите цену в одной или нескольких валютах в реальной или виртуальной валютах. При необходимости настройте региональные цены.
- Задайте ограничение на покупку бандла (опционально). Для этого установите переключатель Ограничивать покупку бандлов пользователем в положение Вкл и укажите количество бандлов, доступное для покупки пользователем.
- Нажмите Далее.
- Настройте отображение бандла в магазине:
- Измените статус на Доступен.
- Настройте ограничение времени отображения бандлов (опционально). Для этого выберите пункт Период времени и укажите часовой пояс, начало и конец периода. Чтобы не указывать конец периода отображения бандла, установите флажок Без даты окончания.
- Нажмите Далее.
- Проверьте настройки и нажмите кнопку Сохранить.
Настройка через методы API
Для настройки бандлов используются методы подраздела Admin из группы методов Бандлы.Добавление в бандл игрового ключа
Чтобы добавить в бандл игровой ключ для выбранной платформы, передайте в метод Создание бандла или Обновление бандла массив объектов
- json
1"content": [{
2 “sku”: “brilliant_game_sku_steam”,
3 “quantity”: 1
4 }
5]
Настройка региональных ограничений
Чтобы настроить региональные ограничения на бандл, передайте в метод Создание бандла или Обновление бандла массив объектов
- c помощью методов API;
- через запрос персональному менеджеру проекта;
- через email-адрес cms@xsolla.com.
- json
1"regions": [{
2 “id”: “123”
3 }, {
4 “id”: “456”
5 }
6]
Настройка региональных цен
Чтобы настроить региональные цены для бандла, передайте в метод Создание бандла или Обновление бандла массив объектов
- json
1"prices": [
2 {
3 "amount": 100,
4 "currency": "USD",
5 "is_enabled": true,
6 "is_default": true
7 },
8 {
9 "amount": 200,
10 "currency": "CZK",
11 "country_iso": "CZ",
12 "is_enabled": false,
13 "is_default": false
14 }
15 ]
Получение бандлов в каталоге
Для получения каталога бандлов используются методы подраздела Catalog из группы методов Бандлы.Нашли опечатку или ошибку в тексте? Выделите ее и нажмите Ctrl+Enter.