跳轉至

Product limit validation

Hive 主控台 > 社群 & 網頁商店 > 網頁商店 > 商品管理 可為網頁商店商品設定帳號購買限制購買數量限制,並可為兩項設定各自配置最大購買數量

網頁商店購買限制驗證用於檢查網頁商店中已付款的商品是否超出上述兩項設定的最大購買數量。為此提供網頁商店付款資訊驗證 API

概述

包含呼叫 網頁商店付款資訊驗證 API 在內的網頁商店購買限制驗證整體流程如下:

  1. 開發者:參考PG 付款實作PG 設定,建構使用者在網頁商店透過 PG 付款後發放商品的流程。
  2. 開發者:當使用者在網頁商店購買具帳號購買限制或購買數量限制的商品時,在發放商品前呼叫網頁商店付款資訊驗證 API
  3. Hive 伺服器:驗證該訂單是否超出商品最大購買數量。驗證結果作為 API 回應傳回開發者伺服器。
  4. 開發者:僅在驗證條件(例如:未超出最大購買數量)通過時發放商品。若訂單超出最大購買數量,則不發放商品並執行付款取消。網頁商店僅在驗證結果無問題時才會將數量反映為已售並減少剩餘數量。若 API 回應判定為無效付款,伺服器不得向使用者發放商品,且必須執行付款取消。
Warning

若未實作步驟 2 與 4,Hive 主控台中設定的帳號購買限制與購買數量限制將無法正常運作。此時網頁商店會判斷尚無已售數量,顯示的剩餘數量不會減少,意味著商品可被無限購買。

Note

有關付款取消的詳情請參閱發放結果處理

網頁商店付款資訊驗證 API

依據已完成的網頁 PG 付款資訊驗證付款是否有效,包括是否超出商品最大購買數量。

Request information

分類 資訊
正式 URL https://shop.withhive.com/api/webstore/check-quantity-limit
SANDBOX URL https://sandbox-shop.withhive.com/api/webstore/check-quantity-limit
HTTP Method POST
Data Format JSON

Request header

欄位 說明 型別 必填 備註
Content-Type application/json String Y
Authorization Bearer 權杖 String Y App Center > 專案管理 > 遊戲詳細 > 基本資訊 > Hive 認證金鑰

Request header sample

Content-Type : application/json
Authorization : Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNjAyMDU2NzI2LCJqdGkiOiIxODczMTExMzIwIn0.3soFiHTPlObCoqR5xX9ZeOQTSvnHrHDHWmopP3QfWtY

Request body

欄位 說明 型別 必填
type 通知類型(paid: 付款完成, cancelled: 付款取消或退款) String Y
market_pid 商品唯一 ID String Y
order_id 訂單編號 String Y
server_id 購買使用者連線的遊戲伺服器代碼 String Y
appid 上述 market_pid 所屬之網頁商店 AppID String Y
cs_code 購買使用者的 PlayerID String Y
paid_datetime 付款完成時間 (Y-m-d H:i:s) String Y
quantity 購買數量 String Y
iap_payload 遊戲伺服器發放商品所需的附加帳號資訊 String Y

Request body sample

{
    "type": "paid",
    "market_pid": "com.com2us.hivesdk.windows.microsoftstore.global.normal.item01",
    "order_id" : "H3175513391360875943",
    "server_id" : "1",
    "appid" : "com.com2us.hivesdk.windows.hivepc", 
    "cs_code" : "20000023100", 
    "paid_datetime": "2025-08-14 10:12:18",
    "quantity": "10",
    "iap_payload": "{\"cs_code\":20000023100,\"data\":{\"server_id\":\"1\",\"server_name\":\"Server 1\",\"channels\":{\"channel_id\":\"11\",\"channel_name\":\"Channel 11\",\"characters\":{\"character_id\":\"111\",\"character_name\":\"Character 111\"}}}}",
}

Response body

欄位 說明 型別
code 回應結果代碼 Integer
msg 回應結果訊息 String
  • 僅對 100, 101 回應進行正常發放。
  • 3001 表示該訂單已完成驗證。僅在尚未發放商品時再次發放。
  • 3002 表示超出商品最大購買數量。必須執行付款取消。 詳情參閱發放結果處理

Response body sample

{
    "code": 100,
    "msg": "success"
}

Response codes

以下為回應代碼(code)說明。

code msg description
100 success 成功
101 success(product no limit) 成功(無數量限制;無需額外驗證)
2000 fail(method error) 使用無效 HTTP METHOD
2001 fail(request parameter error) 缺少必要參數
2002 fail(type parameter error) 無效參數 (type)
2003 fail(market_pid parameter error) 無效參數 (market_pid)
2004 fail(order_id parameter error) 無效參數 (order_id)
2005 fail(server_id parameter error) 無效參數 (server_id)
2006 fail(appid parameter error) 無效參數 (appid)
2007 fail(cs_code parameter error) 無效參數 (cs_code)
2008 fail(paid_datetime parameter error) 無效參數 (paid_datetime)
2009 fail(quantity parameter error) 無效參數 (quantity)
2010 fail(iap_payload parameter error) 無效參數 (iap_payload)
2011 fail(hiveCertificationKey parameter error) 無效參數 (hiveCertificationKey)
3000 fail(hiveCertificationKey invalid) Hive 認證金鑰驗證失敗
3001 fail(already completed) ⚠️ 訂單號已驗證並計入數量
若已發放則無需再次發放
3002 fail(purchase fail, purchase cancellation required) ⚠️ 失敗(數量限制超出)
超出數量限制;取消付款
500 fail(appid in DB not exist) 無對應 appId 的遊戲資訊
501 fail(gameprefix not exist) 未能取得 appId 對應網頁商店資訊
需先建立網頁商店
502 fail(####) 其他 "####" 錯誤
503 fail(product info in DB not exist) 無對應 market_pid 的商品資訊
需先於Hive 主控台 > 社群 & 網頁商店 > 網頁商店 > 商品管理 登錄
504 fail(####) 其他 "####" 錯誤
505 fail(temporary error : ####) 其他暫時性 "####" 錯誤