跳转至

付款金额验证 API

'付款金额验证' API 支持当用户想要购买因网店商品折扣或优惠券应用而改变金额的商品时,使用游戏服务器发出的验证密钥来验证折扣付款金额。当使用有效验证密钥进行付款时,游戏服务器最终可以提供商品。

操作流程

这解释了从调用'付款金额验证' API 到最终商品提供的整体处理顺序和系统间处理过程。

Hive 服务器和应用服务器之间的操作和数据流如下:

  1. 用户操作:在 Hive 网店中购买因折扣或优惠券应用而产生折扣金额的商品时,会调用'付款金额验证' API。
  2. Hive 服务器:向 Hive 控制台 付款金额验证中注册的 API(应用服务器)请求验证密钥。此时,以回调格式传递商品 ID、价格信息、优惠券代码等。
    • 在 Hive 控制台注册付款金额验证 API:请参阅下方前提条件
  3. 应用服务器:验证接收到的商品 ID 和价格信息等后,返回用于付款验证的验证密钥(gameserver_price_verify_key)作为响应。
  4. Hive 服务器:将从应用服务器收到的验证密钥与商品 ID 和价格信息等一起传递给计费服务器以请求付款。
  5. 应用服务器:确认计费服务器付款完成结果传来的验证密钥、商品 ID、价格信息等。只有当收到的验证密钥与第 3 步中验证并发放的值一致时,才判定付款有效。只有验证成功时才发放商品。

前提条件

要正常调用'付款金额验证' API,请首先在 Hive 控制台中注册用于发放验证密钥的端点 URL。Hive 服务器可以通过向该 URL 传递商品 ID、价格信息、优惠券代码等来请求验证密钥。

Hive 控制台 > 社区 & 网店 > 网店 > 网店设置 > 付款金额验证 中,根据付款有效性验证设置注册 API 端点(回调 URL)。

  • 回调 URL 格式可以由游戏公司自由设置
  • 其他 API 规范遵循下面的 API 请求配置和 API 响应配置项目

API 调用(Hive 服务器 → 应用服务器)

这解释了从 Hive 服务器向应用服务器调用'付款金额验证' API 的方式。

Request info

  • 端点:在 Hive 控制台 > 社区 & 网店 > 网店 > 网店设置 > 付款金额验证 中设置的端点(回调 URL)
  • HTTP 方法:POST

Request header

API 信息 描述
Response Format JSON
Content-type application/json

Request body

名称 类型 必需(必需:O,可选:X) 描述
game_index Integer O 游戏唯一标识符
cs_code String O 购买用户的 PlayerID
language String O 语言代码(例如:ko、en、ja)
market_pid String O Hive 控制台网店 > 商品管理中注册的商品 ID
quantity Integer O 购买数量
original_price Integer O 原始商品金额
sale_price Integer O 折扣应用后金额
coupon_price Integer O 优惠券折扣金额
final_price Integer O 优惠券和折扣应用后的最终付款金额
discount_coupon_code String O 应用的折扣优惠券代码(未使用优惠券时不传递)

Request body sample

{
    "game_index": 1001,
    "cs_code": "20000010000",
    "language": "ko",
    "market_pid": "item01",
    "quantity": 1,
    "original_price": 10000,
    "sale_price": 8000,
    "coupon_price": 1000,
    "final_price": 7000,
    "discount_coupon_code": "SUMMER2025"
}

API 响应(应用服务器 → Hive 服务器)

这解释了作为调用'付款金额验证' API 的结果,从应用服务器发送到 Hive 服务器的响应信息。

Response body

  • 数据类型:JSON
  • 参数

    名称 类型 描述
    code Integer 结果代码(100:成功)
    gameserver_price_verify_key String 用于付款验证的验证密钥(成功时必须返回)

Response code

HTTP 状态代码 代码 消息 描述
200 100 Success. 成功
  • 成功必须以 100 传递。
  • 成功时,响应中必须包含 gameserver_price_verify_key

Response sample

{
    "code": 100,
    "gameserver_price_verify_key": "a1b2c3d4e5f6g7h8i9j0"
}