การตรวจสอบข้อจำกัดการซื้อในเว็บสโตร์
Hive Console > คอมมูนิตี้ & เว็บช็อป > เว็บช็อป > การจัดการสินค้า สามารถตั้งค่าจำกัดการซื้อรายบัญชี และจำกัดจำนวนการซื้อ ให้กับสินค้าในเว็บช็อปได้ และสามารถกำหนดจำนวนซื้อสูงสุด ให้กับแต่ละการตั้งค่าได้
การตรวจสอบขีดจำกัดการซื้อของเว็บช็อปคือการตรวจสอบว่าสินค้าที่ชำระเงินในเว็บช็อปเกินจำนวนซื้อสูงสุดที่กำหนดไว้ในสองการตั้งค่านี้หรือไม่ สำหรับงานนี้มีให้ใช้API ตรวจสอบข้อมูลการชำระเงินเว็บช็อป
ภาพรวม¶
ภาพรวมของกระบวนการตรวจสอบขีดจำกัดการซื้อเว็บช็อป รวมถึงการเรียกใช้ API ตรวจสอบข้อมูลการชำระเงินเว็บช็อป มีดังนี้
- ผู้พัฒนาแอป: สร้างกระบวนการมอบสินค้าเมื่อผู้ใช้ทำการชำระเงินผ่าน PG ในเว็บช็อป โดยอ้างอิง การนำ PG ไปใช้ และ การตั้งค่า PG
- ผู้พัฒนาแอป: เมื่อผู้ใช้ซื้อสินค้าที่มีการจำกัดการซื้อรายบัญชีหรือจำกัดจำนวนการซื้อ ให้เรียก API ตรวจสอบข้อมูลการชำระเงินเว็บช็อป ก่อนมอบสินค้า
- เซิร์ฟเวอร์ Hive: ตรวจสอบว่าออเดอร์นั้นเกินจำนวนซื้อสูงสุดของสินค้าหรือไม่ ส่งผลการตรวจสอบกลับเป็นการตอบสนอง API ไปยังเซิร์ฟเวอร์นักพัฒนา
- ผู้พัฒนาแอป: มอบสินค้าเมื่อผ่านเงื่อนไขการตรวจสอบ (เช่น ไม่เกินจำนวนซื้อสูงสุด) เท่านั้น หากออเดอร์เกินจำนวนซื้อสูงสุด อย่ามอบสินค้าและให้ยกเลิกการชำระเงิน เว็บช็อปจะปรับจำนวนที่ขายเสร็จสิ้นและลดจำนวนคงเหลือเฉพาะเมื่อผลการตรวจสอบไม่มีปัญหา หากการตอบสนอง API ระบุว่าเป็นการชำระเงินไม่ถูกต้อง เซิร์ฟเวอร์นักพัฒนาต้องไม่มอบสินค้ากับผู้ใช้และต้องยกเลิกการชำระเงิน
Warning
หากไม่ได้นำขั้นตอนที่ 2 และ 4 ไปใช้ ฟีเจอร์จำกัดการซื้อรายบัญชีและจำกัดจำนวนการซื้อที่ตั้งค่าในเว็บช็อปของ Hive Console จะไม่ทำงานอย่างถูกต้อง เว็บช็อปจะถือว่าไม่มีการขายเกิดขึ้น จำนวนคงเหลือที่แสดงจะไม่ลดลง ซึ่งหมายความว่าสามารถซื้อสินค้าได้ต่อไปไม่จำกัด
Note
สำหรับรายละเอียดการยกเลิกการชำระเงิน โปรดดู การประมวลผลผลการมอบ
API ตรวจสอบข้อมูลการชำระเงินเว็บช็อป¶
ตรวจสอบความถูกต้องของการชำระเงิน (จากข้อมูลการชำระเงิน PG เว็บที่เสร็จสมบูรณ์) รวมถึงการตรวจสอบว่าสินค้าเกินจำนวนซื้อสูงสุดหรือไม่
Request information¶
หมวดหมู่ | ข้อมูล |
---|---|
Production 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 > Project Management > Game Detail > Basic Info > Hive Certification Key |
Request header sample¶
Content-Type : application/json
Authorization : Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNjAyMDU2NzI2LCJqdGkiOiIxODczMTExMzIwIn0.3soFiHTPlObCoqR5xX9ZeOQTSvnHrHDHWmopP3QfWtY
Request body¶
ฟิลด์ | คำอธิบาย | ชนิด | บังคับ |
---|---|---|---|
type | ประเภทการแจ้งเตือน (paid: ชำระเงินแล้ว, cancelled: ยกเลิกหรือคืนเงิน) | String | Y |
market_pid | รหัสสินค้าเฉพาะ | String | Y |
order_id | หมายเลขคำสั่งซื้อ | String | Y |
server_id | รหัสเซิร์ฟเวอร์เกมที่ผู้ซื้อเชื่อมต่อ | String | Y |
appid | AppID ของเว็บช็อปที่ลงทะเบียน market_pid ข้างต้น | 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¶
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 certification key ล้มเหลว |
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 Console > คอมมูนิตี้ & เว็บช็อป > เว็บช็อป > การจัดการสินค้า |
504 | fail(####) | ข้อผิดพลาด "####" อื่น |
505 | fail(temporary error : ####) | ข้อผิดพลาดชั่วคราว "####" อื่น |