免费商品

运行机制

免费商品是指用户无需花费虚拟货币或真实货币即可获得的商品。 免费商品适用于以下场景:

  • 游戏内物品的销售 — 虚拟物品、虚拟货币套餐和捆绑包
  • 通过游戏密钥销售游戏和DLC
使用案例:
  • 在项目阶段成就或特殊日期(如周年纪念日)提供免费商品,奖励用户的忠诚度。
  • 为已购买基础游戏的用户提供免费附加内容,作为忠诚奖励。
  • 在网页商城中提供免费新手礼包,吸引新用户进入游戏。
免费虚拟物品、虚拟货币和捆绑包仅对已授权用户可用。免费游戏密钥对已授权和未授权用户均可用。免费商品数量限制仅可针对已授权用户配置。

设置免费商品

在发布商帐户中进行设置

注:

在配置商品之前,建议先创建组,以便对商品进行分类并管理它们在商店中的显示方式。

以下以虚拟物品为例说明免费商品的设置流程。

要创建免费虚拟物品:
  1. 在发布商帐户的项目中,前往商品目录 > 全部商品部分。
  2. 单击添加,从下拉列表中选择虚拟物品
  1. 指定以下参数:
    • 图片(可选)。
    • SKU。
    • 捆绑包所属的一个或多个组。
    • 名称。
    • 描述(可选)。
  2. 价格设置部分,选择免费物品
  3. 如需限制可购买的物品数量,请打开限制单个用户可购买此物品的次数开关并输入所需数量。
  4. 要配置限制重置频率:
    1. 从下拉列表中选择周期:
      • 每日。
      • 每周。
      • 每月。
      • 自定义间隔 — 从捆绑包的显示开始日期起计算。
      • 不刷新。
    2. 根据所选周期设置重置时间表。
  5. 配置物品在商店中的显示方式:
    • 选择状态
    • 设置显示时间限制(可选):指定时区以及时间段的开始和结束时间。如果不想指定商品显示的结束时间,请勾选无结束日期复选框。
  6. 配置物品属性(可选),使用以下选项之一:
  7. 单击创建物品

通过API设置

要将商品设置为免费,请在调用以下管理 API时在请求正文中传入“is_free”: true

如需限制用户可获得的免费商品数量,请在商品创建或更新调用中传入以下参数:
  • limits,指定数量
  • limits.recurrent_schedule,指定限制数重置频率
您还可以配置商品在商店中的显示时间限制设置区域限制

在目录中显示免费商品

免费商品在目录中的显示方式取决于实现方式,即通过建站器还是通过API实现。

通过建站器显示

要在您的网站上显示免费商品:

  1. 创建免费商品
  2. 在发布商帐户的项目中,前往商店 > 网站部分。
  3. 在所需网站的窗格中,单击打开建站器
  1. 商店部分的商品类型字段中,选择免费商品类型并指定其所属组(如适用)。
  2. 配置商品卡片布局
  3. 完成所有必要更改并准备发布网站后:
    1. 在建站器右上角,单击发布
    2. 勾选您要发布的页面。
    3. 单击发布
注:

如果无法发布网站,请确保满足以下所有条件:

网站发布后,包含免费商品的区段将可用。如果未显示商品,请检查其状态是否设置为可用以及是否启用了基于时间的显示限制
注:
如果为免费商品配置了显示时间限制,当您使用建站器创建目录UI时,会自动显示可售倒计时器。当您在自定义UI中创建目录时,您需要在己侧实现该倒计时器。

通过API获取免费商品信息

如果您的目录通过API配置,可通过目录子部分中的以下调用返回免费商品数据:

向用户发放免费商品

包含免费商品的订单处理方式取决于购买过程中是否使用了购物车。 如果用户不使用购物车购买商品,请使用使用指定免费商品创建订单API调用。 如果用户使用购物车购买商品,可能出现以下情况:

在这两种情况下,艾克索拉都会发送订单成功支付Webhook,其中包含用于向用户发放商品的商品数据。对于免费商品,Webhook中的order.invoice_id参数设置为null

免费商品订单对象示例:

Copy
Full screen
Small screen
 1{
 2  "method": "POST",
 3  "url": "https://mybestgame.com/xsolla/notification",
 4  "body": {
 5    "items": [
 6      {
 7        "sku": "gift_direct_game_reward-supercoin",
 8        "type": "virtual_currency",
 9        "is_pre_order": false,
10        "quantity": 500,
11        "amount": "0",
12        "promotions": [
13
14        ]
15      },
16      {
17        "sku": "package-500_supercoin",
18        "type": "bundle",
19        "is_pre_order": false,
20        "quantity": 1,
21        "amount": "0",
22        "promotions": [
23
24        ]
25      },
26      {
27        "sku": "xsolla-giveaway_offer_11_14_22",
28        "type": "bundle",
29        "is_pre_order": false,
30        "quantity": 1,
31        "amount": "0",
32        "promotions": [
33
34        ]
35      }
36    ],
37    "notification_type": "order_paid",
38    "order": {
39      "id": 12345678,
40      "mode": "default",
41      "currency_type": "unknown",
42      "currency": null,
43      "amount": "0",
44      "status": "paid",
45      "platform": "xsolla",
46      "comment": null,
47      "invoice_id": null,
48      "promotions": [
49
50      ]
51    },
52    "user": {
53      "external_id": "1234567812345678",
54      "email": null
55    }
56  },
57  "headers": {
58    "Authorization": "Signature 3b840ccefea111dcdfd111db1fdc6df969a3ec11",
59    "Accept": "application/json",
60    "Content-Type": "application/json"
61  },
62  "type": "webhook_payment",
63  "callback_parameters": {
64    "order_id": 12345678
65  }
66}

根据您的项目集成设置,商品将通过以下方式之一发放给用户:

  • 如果已集成PlayFab,虚拟货币和商品将自动发放到用户的PlayFab物品库中。
  • 如果使用自定义交付系统,所有虚拟物品和货币将在己侧发放。建议设置Webhook处理程序以在后端接收订单数据。必要的数据包含在订单成功支付Webhook中。
有关此方式和其他获取购买数据方式的更多详情,请参阅设置订单状态跟踪部分。
注:
游戏密钥将发送到用户的电子邮件或直接发送到权利系统
本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。
上次更新时间: 2026年2月13日

发现了错别字或其他内容错误? 请选择文本,然后按Ctrl+Enter。

报告问题
我们非常重视内容质量。您的反馈将帮助我们做得更好。
请留下邮箱以便我们后续跟进
感谢您的反馈!
无法发送您的反馈
请稍后重试或发送邮件至doc_feedback@xsolla.com与我们联系。