促销码

运行机制

促销码是吸引新用户和增加销量的营销工具。激活促销码后,用户将收到以下奖励之一:

  • 应用于用户购物车或指定商品的折扣
  • 一个或多个奖励品:
    • 游戏密钥
    • 虚拟货币套餐
    • 虚拟物品(包括捆绑包或时效性商品等)

主要功能:

  • 选择奖励,可以只包含折扣、只包含奖励品或两者都包含
  • 设置促销码在活动中可兑换的总次数
  • 设置单个用户在活动中可兑换促销码的次数
  • 根据需要设置区域限制
  • 可多次生成促销码
  • 应用促销码后向购物车添加奖励品
  • 使用促销码后对商品应用折扣

限制:

  • 一个购物车中只能应用一个促销码
  • 要获得折扣或奖励品,用户需支付购物车中的商品
  • 如果促销码包含具有区域销售限制的商品,则来自限制区域的用户使用该促销码也无法获得相应商品

用户侧流程:

  1. 用户在UI相应字段中输入促销码。
  2. 重新计算商品价格及添加奖励品。
  3. 用户进行支付,支付后促销码视为已兑换。
  4. 如果促销码中包含奖励品,则通过以下方式之一发放给用户:
    • 直接发放至物品库(虚拟物品或虚拟货币套餐)
    • 通过邮件(游戏密钥)
    • 直接发放至权利系统(游戏密钥)

注意

您可为商品设置不同类型的促销活动:折扣、优惠券、促销码及奖励。

如果购买时商品存在多个有效的促销活动,则将逐个应用这些折扣,折扣的应用顺序对结果没有影响。

例如:

一个虚拟物品的价格是$10。在发布商帐户中,为该虚拟物品设置了以下促销活动:

  • 黑色星期五折扣促销,11月4日-30日享受10%的折扣
  • 特价折扣促销,11月15日-12月15日享受20%的折扣
  • 促销码活动,11月4日-30日使用促销码享受5%的折扣

如果在11月20日购买该物品,则两个折扣促销活动和一个促销码活动都有效。

该虚拟物品的总价按照(($10 - 10%) - 20%) - 5%计算,最终为$6.84。

如何获取

前提条件

  1. 创建您的艾克索拉发布商帐户
  2. 连接商店并设置虚拟物品虚拟货币模块。

集成过程

注:

如用使用指定商品创建订单方法实现快速商品购买,用户将在不前往购物车的情况下直接进行支付。

与此同时,艾克索拉侧将创建一个购物车,该购物车不对用户显示。这是正确向用户所购商品应用所有现有折扣及在支付表单中显示包含所有折扣的金额所必需的。

设置促销码活动

  1. 前往发布商帐户中的商店 > 促销活动并创建一个促销活动。
  2. 指定以下的参数:
    1. 输入促销活动名称。
    2. 选择促销码作为促销活动类型。
  3. 创建一个External ID — 用于通过接收奖励兑换促销码方法管理促销活动的唯一促销活动标识符。
  4. 指定促销码的折扣百分比。折扣可应用于整个购物车或指定的商品。
  5. 选择用户兑换促销码时收到的奖励品:
  6. 指定总可兑换次数和每个用户可兑换的次数。
  7. 指定促销活动的持续时间。
  8. 检查设置并保存促销活动。
  9. 前往促销活动编辑菜单。
  10. 活动码选项卡中,选择促销码生成方式。
  11. 生成促销码或手动输入促销码。
  12. 保存更改。
  13. 激活促销活动。

虚拟货币套餐促销码

要创建虚拟货币套餐促销码:

  1. 创建一个虚拟货币套餐
  2. 将虚拟货币套餐指定为奖励品。

虚拟物品促销码

要创建虚拟物品促销码:

  1. 创建一个虚拟物品
  2. 将虚拟物品指定为奖励品。

可为一个促销码指定一个物品或SKU不同的多个物品,包括捆绑包和时效性商品等。

游戏密钥促销码

要创建游戏密钥促销码:

  1. 创建一个游戏密钥套餐
  2. 指定所创建的游戏密钥套餐的SKU作为奖励,并指定选择游戏购买平台的方法:
    • 促销码针对已设置的指定平台进行生成。
    • 用户使用促销码时选择一个指定平台。

可为一个促销码选择具有不同SKU的多个游戏密钥。

生成促销码

活动可以包含一个或多个促销码。促销码格式有两种选择:

  • 手动输入促销码 — 适用于只有一个且可重复使用多次的促销码(最多128个字符)。
  • 生成促销码 — 由数字和英文字母组成的号码(10个字符)。适合包含多个促销码的活动。
您可以在创建促销码活动后在促销活动编辑器中生成促销码。您可以多次生成促销码。如果要上传手动输入的促销码,请将需求通过邮件发送给艾克索拉

注:
优惠券码区分大小写。例如:winter2021WINTER2021是两个不同的优惠券。

区域限制

区域限制应用于整个促销活动。如要应用区域限制,请将需求通过邮件发送给艾克索拉

获取促销码奖励

请实现Get promo code rewards方法调用以获取用户兑换促销码后收到的商品的列表。根据响应中的is_selectable参数值,有两种可能的流程:

  1. 如果值为is_selectable=true,则应对于每个具有type=unit元素的item显示从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,则不应在请求中传入额外参数。

本文对您的有帮助吗?
谢谢!
我们还有其他可改进之处吗? 留言
非常抱歉
请说明为何本文没有帮助到您。 留言
感谢您的反馈!
我们会查看您的留言并运用它改进用户体验。
为此页面评分
为此页面评分
我们还有其他可改进之处吗?

不想回答

感谢您的反馈!
上次更新时间: 2022年11月28日

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

报告问题
我们非常重视内容质量。您的反馈将帮助我们做得更好。
请留下邮箱以便我们后续跟进
感谢您的反馈!