การชำระเงิน PG
ต่อไปนี้คือ API การชำระเงิน PG ที่ต้องนำไปใช้โดยเซิร์ฟเวอร์เกมเพื่อสนับสนุนการชำระเงิน PG ในเกม Windows OS สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการชำระเงิน PG ในสภาพแวดล้อม Windows โปรดตรวจสอบ ที่นี่
การตรวจสอบประวัติการชำระเงิน¶
เมื่อการชำระเงินเสร็จสมบูรณ์ หน่วยงานการชำระเงิน (PG) จะส่งผลการชำระเงินไปยังเซิร์ฟเวอร์ Hive IAP v4 โดยตรง วิธีนี้ช่วยชดเชยความไม่เสถียรของเครือข่ายและป้องกันการดัดแปลงข้อมูลการชำระเงิน จะมีการตรวจสอบข้ามโดยการเปรียบเทียบข้อมูลการชำระเงินที่ลงทะเบียนในระหว่างการ เตรียมงาน กับข้อมูลจากหน่วยงานการชำระเงิน (PG) เมื่อยืนยันความสมบูรณ์ของข้อมูลการชำระเงินแล้ว จะมีการรักษามาตรการความปลอดภัยเพิ่มเติมและข้อมูลการชำระเงินจะถูกจัดเก็บ ข้อมูลการชำระเงินที่จัดเก็บสามารถเรียกคืนได้ผ่าน API สอบถามประวัติการชำระเงินที่เสร็จสมบูรณ์ ในขณะที่ลูกค้าต้องการข้อมูลการชำระเงินที่เสร็จสมบูรณ์ของผู้ใช้ จะมีการร้องขอข้อมูลจากเซิร์ฟเวอร์เกม ซึ่งจะเรียกคืนข้อมูลการชำระเงินผ่านเซิร์ฟเวอร์ Hive IAP v4 หากประวัติการชำระเงินของผู้ใช้มีอยู่ จะมีการตรวจสอบข้อมูลการชำระเงินโดยใช้ purchase_bypass_info
URL การร้องขอ¶
| URL เชิงพาณิชย์ | https://hiveiap.qpyou.cn/api_v4/purchases/unconsumed | 
|---|---|
| URL Sandbox | https://sandbox-hiveiap.qpyou.cn/api_v4/purchases/unconsumed | 
| วิธีการ HTTP | POST | 
| ประเภทเนื้อหา | application/json | 
| รูปแบบข้อมูล | JSON | 
| การอนุญาต | Bearer (token) | 
โทเค็น Bearer จะตรงกับ Hive คีย์การพิสูจน์ตัวตนใน Hive คอนโซล App Center > การจัดการโครงการ > เลือกบริษัทเกม > รายละเอียดเกม > ข้อมูลพื้นฐาน.
พารามิเตอร์การร้องขอ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| appid | สตริง | M | ID ที่ลงทะเบียนและออกใน Hive Console > App Center | 
| market_id | หมายเลข | M | หมายเลขตลาดที่ไม่ซ้ำกัน (ใช้ค่าคงที่ 15) | 
| server_id | สตริง | M | รหัสการแยกประเภทเซิร์ฟเวอร์เกมที่การชำระเงินเกิดขึ้น | 
| user_id_type | สตริง | M | ประเภทผู้ใช้ Hive (ใช้ค่าคงที่ player_id) | 
| user_id | หมายเลข | M | ID ผู้ใช้ Hive ( player_id) | 
องค์ประกอบการตอบกลับ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| result | หมายเลข | M | รหัสการตอบกลับ (0: สำเร็จ) | 
| result_msg | สตริง | M | ข้อความผลลัพธ์ตามรหัสการตอบกลับ | 
| unconsumed_lists | อาร์เรย์วัตถุ | M | |
| ┕ market_pid | สตริง | M | รหัสผลิตภัณฑ์ที่ไม่ซ้ำกัน | 
| ┕ order_id | สตริง | M | หมายเลขคำสั่ง | 
| ┕ server_id | สตริง | M | รหัสความแตกต่างสำหรับเซิร์ฟเวอร์เกมที่ผู้ใช้ที่ทำการซื้อเข้าถึง | 
| ┕ vid | สตริง | M | PlayerID ของผู้ใช้ที่ทำการซื้อ | 
| ┕ uid | สตริง | O | Hive UID สมาชิกของผู้ใช้ที่ทำการซื้อ | 
| ┕ amount | สตริง | M | จำนวนเงินที่ชำระ | 
| ┕ currency | สตริง | M | สกุลเงินที่ชำระ | 
| ┕ quantity | หมายเลข | M | จำนวนการซื้อ | 
| ┕ started_datetime | วันที่เวลา | M | เวลาที่การชำระเงินเริ่มต้น (Y-m-d H:i:s) | 
| ┕ paid_datetime | วันที่เวลา | M | เวลาที่การชำระเงินเสร็จสิ้น (Y-m-d H:i:s) | 
| ┕ started_datetime_ms | หมายเลข | M | เวลาที่การชำระเงินเริ่มต้น (Unix TimeStamp Milliseconds) | 
| ┕ paid_datetime_ms | หมายเลข | M | เวลาที่การชำระเงินเสร็จสิ้น (Unix TimeStamp Milliseconds) | 
| ┕ hiveiap_receipt | สตริง | M | HASH ที่เข้ารหัสของข้อมูลการชำระเงิน | 
| ┕ purchase_bypass_info | สตริง | M | ข้อมูลที่จำเป็นสำหรับคำขอการตรวจสอบใบเสร็จ | 
| ┕ iap_payload | สตริง | O | ข้อมูลเพิ่มเติมที่ได้รับจากลูกค้าเพื่อนำส่งไปยังเซิร์ฟเวอร์เกม (ในรูปแบบ JSON String) (คืนค่า null หากไม่มีข้อมูลที่ได้รับ) | 
| ┕ price_type | สตริง | O | ประเภทของราคา (none: ไม่ได้ใช้, custom_price: การชำระเงินจำนวนที่กำหนดเอง) | 
| ┕ gameserver_price_verify_key | สตริง | O | คีย์การตรวจสอบจำนวนเงินการชำระเงินของเซิร์ฟเวอร์เกม | 
ตัวอย่างคำขอ¶
curl -L -v
 -d '{"appid" : "com.com2us.hivesdk.windows.microsoftstore.global.normal","market_id" : 15,"server_id" : "kr","user_id_type": "player_id", "user_id": 30000056996}' \
 -H "Content-Type: text/html" \
 -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNjAyMDU2NzI2LCJqdGkiOiIxODczMTExMzIwIn0.3soFiHTPlObCoqR5xX9ZeOQTSvnHrHDHWmopP3QfWtY" \
 https://sandbox-hiveiap.qpyou.cn/api_v4/purchases/unconsumed
ตัวอย่างการตอบกลับ¶
{
    "result": 0,
    "result_msg": "SUCCESS",
    "unconsumed_lists": [
        {
            "market_pid": "com.com2us.hivesdk.windows.microsoftstore.global.normal.item01",
            "order_id": "h2164792542890731850",
            "server_id": "kr",
            "vid": "30000056996",
            "uid": "13079",
            "amount": "1200",
            "currency": "KRW",
            "quantity": 1,            
            "started_datetime": "2022-03-22 14:03:49",
            "paid_datetime": "2022-03-22 14:04:39",
            "market_id": "15",
            "hiveiap_receipt": "2YnGzfTCGycoMjcSyYyNXBjANwmFyB6m\/c0bYazQ8VQ=",
            "purchase_bypass_info": "eyJtYXJrZXRfcGlkIjoiY29tLmNvbTJ1cy5oaXZlc2R...",
            "started_datetime_ms": 1647925429000,
            "paid_datetime_ms": 1647925479000,
            "iap_payload": null,
            "price_type": "none",
            "gameserver_price_verify_key": null
        }
    ]
}
การตรวจสอบข้อมูลการชำระเงิน¶
API การตรวจสอบผลการชำระเงินขึ้นอยู่กับ การตรวจสอบใบเสร็จ IAP v4.
การตรวจสอบผลการชำระเงินใช้ purchase_bypass_info ที่ได้รับมาก่อนหน้านี้ purchase_bypass_info ประกอบด้วยข้อมูลต่าง ๆ ที่ได้รับผ่าน SDK ก่อนที่จะดำเนินการชำระเงินและถูกส่งไปยัง Hive Analytics หากคุณต้องการส่ง บันทึกการขาย พร้อมกับคำขอการตรวจสอบใบเสร็จ โปรดใช้ game_info game_info ที่ได้รับจะทำหน้าที่เป็นพร็อกซี่ในการส่งบันทึกไปยังเซิร์ฟเวอร์วิเคราะห์จาก Hive IAP
URL การร้องขอ¶
| Production URL | https://hiveiap-verify.qpyou.cn/api_v4/verify | 
|---|---|
| Sandbox URL | https://sandbox-hiveiap-verify.qpyou.cn/api_v4/verify | 
| HTTP Method | POST | 
| Content-Type | text/html | 
| Data Format | JSON | 
| AUTHORIZATION | Bearer (token) | 
โทเค็น Bearer จะตรงกับคีย์การตรวจสอบสิทธิ์ Hive ที่พบใน Hive คอนโซล App Center > การจัดการโครงการ > เลือกบริษัทเกม > รายละเอียดเกม > ข้อมูลพื้นฐาน.
พารามิเตอร์คำขอ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| purchase_bypass_info | String | M | ข้อมูลสำหรับการแทนที่ใบเสร็จและการส่งข้อมูลการวิเคราะห์ | 
| game_info | Object Array | O | เมื่อมีบันทึกที่ต้องส่งไปยังเกม เช่น บันทึกเกมหรือบันทึกการขาย ให้เพิ่มค่าตัวนี้ไปยังเกมเพื่อการส่งข้อมูล และ Hive IAP จะทำหน้าที่เป็นตัวกลางในการส่งไปยังเซิร์ฟเวอร์การวิเคราะห์ เนื่องจากไม่สามารถทราบการส่งมอบไอเท็ม (itemsendok) ในระหว่างขั้นตอนการตรวจสอบใบเสร็จได้ ส่วนนี้ต้องถูกดำเนินการแยกต่างหากและจัดเตรียมเป็นข้อมูลเพิ่มเติม | 
| ⠀⠀server_uid | bigint | O | user_id ที่ออกโดยเซิร์ฟเวอร์เกม หากไม่มี ให้ใช้ 0 | 
| ⠀⠀giftee_uid | bigint | O | null: การชำระเงินสำหรับการใช้งานส่วนตัว 0: มีผู้รับแต่ไม่สามารถตรวจสอบ UID ได้ | 
| ⠀⠀level | int | O | ระดับในเกมของผู้ใช้ ไม่จำเป็นหากไม่มีระดับ หากไม่มี ให้ใช้ 0. | 
| ⠀⠀character_id | bigint | O | ค่าตัวระบุอักขระที่ไม่ซ้ำกันภายในเซิร์ฟเวอร์ หากไม่มีแนวคิดตัวละคร ให้ใช้ "0" | 
| ⠀⠀character_type_id | int | O | ค่าตัวระบุประเภทตัวละคร ให้ป้อน "0" สำหรับเกมที่ไม่มีแนวคิดตัวละคร | 
| ⠀⠀character_level | int | O | ค่าตัวระบุประเภทตัวละคร ให้ป้อน "0" สำหรับเกมที่ไม่มีแนวคิดตัวละคร | 
| ⠀⠀is_emulator | int | O | ให้ป้อน "1" เมื่อเข้าถึงผ่านอีมูเลเตอร์ PC เช่น BlueStacks มิฉะนั้นให้ป้อน "0" | 
องค์ประกอบการตอบกลับ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| result | หมายเลข | M | รหัสการตอบกลับ (ดูรหัสการตอบกลับ) | 
| result_msg | สตริง | M | ข้อความผลลัพธ์ตามรหัสการตอบกลับ | 
| hiveiap_transaction_id | สตริง | M | หมายเลขธุรกรรมที่สร้างขึ้นสำหรับใบเสร็จที่ได้รับการตรวจสอบแล้ว ค่านี้จะถูกเก็บไว้ในเซิร์ฟเวอร์เกมเพื่อทำการตรวจสอบใบเสร็จซ้ำ | 
| hiveiap_market_id | สตริง | O | หมายเลขตลาดที่ไม่ซ้ำ (การชำระเงิน PG: กำหนดที่ 15) | 
| hiveiap_market_pid | สตริง | O | PID ของผลิตภัณฑ์การชำระเงิน | 
| hiveiap_market_transaction_id | สตริง | O | หมายเลขคำสั่งที่ไม่ซ้ำสำหรับคำสั่ง | 
| hiveiap_receipt | สตริง | O | ค่าของใบเสร็จตลาด (การชำระเงิน PG: กำหนดที่ null) | 
| hiveiap_purchase_test | สตริง | O | สถานะการชำระเงินทดสอบ (Y: การชำระเงินทดสอบ / N: การชำระเงินปกติ) | 
| hiveiap_iap_payload | สตริง | O | ข้อมูลเพิ่มเติมที่ได้รับจากลูกค้าเพื่อนำส่งไปยังเซิร์ฟเวอร์เกม ข้อมูลอยู่ในรูปแบบ JSON String และหากไม่มีข้อมูลใด ๆ จะส่งคืน null. | 
| hiveiap_account_uuid_compare | สตริง | O | สถานะการจับคู่ระหว่างข้อมูลบัญชีที่ส่งไปยัง API การตรวจสอบใบเสร็จและข้อมูลบัญชี Hive เมื่อทำการตรวจสอบใบเสร็จ บัญชี Hive หลายบัญชีอาจมีบัญชีตลาดเดียวกัน (1: ตรงกัน, 2: ไม่ตรงกัน, 9: ไม่รองรับ) | 
| hiveiap_price | สตริง | O | จำนวนเงินที่ชำระ เมื่อใช้การชำระเงินจำนวนเงินที่กำหนดเอง PG เพื่อป้องกันการละเมิด คุณ ต้อง ตรวจสอบว่าจำนวนเงินการชำระเงินที่กำหนดเองและจำนวนเงินคำสั่งจริงเหมือนกันในเซิร์ฟเวอร์เกมโดยใช้กุญแจการตรวจสอบ ( gameserver_price_verify_key). | 
| hiveiap_currency | สตริง | O | สกุลเงินการชำระเงิน เมื่อใช้การชำระเงินจำนวนเงินที่กำหนดเอง PG เพื่อป้องกันการละเมิด คุณ ต้อง ตรวจสอบว่าสกุลเงินการชำระเงินของจำนวนเงินการชำระเงินที่กำหนดเองและจำนวนเงินการชำระเงินจริงเหมือนกันในเซิร์ฟเวอร์เกมโดยใช้กุญแจการตรวจสอบ ( gameserver_price_verify_key). | 
| gameserver_price_verify_key | สตริง | O | กุญแจการตรวจสอบจำนวนเงินการชำระเงินของเซิร์ฟเวอร์เกม เมื่อใช้การชำระเงินจำนวนเงินที่กำหนดเอง PG เพื่อป้องกันการละเมิด คุณต้องใช้กุญแจนี้เพื่อเปรียบเทียบและตรวจสอบข้อมูลจำนวนเงินและสกุลเงินในเซิร์ฟเวอร์เกม. | 
รหัสการตอบกลับ¶
| รหัส | ข้อความ | ความคิดเห็น | 
|---|---|---|
| 0 | สำเร็จ, ใบเสร็จซ้ำ | การตรวจสอบสำเร็จ | 
| 1000001 | ไม่มีพารามิเตอร์ที่ร้องขอ | เมื่อไม่มีการส่งพารามิเตอร์ | 
| 1000003 | ข้อผิดพลาดในการเชื่อมต่อฐานข้อมูล | เมื่อการเชื่อมต่อฐานข้อมูลล้มเหลว | 
| 1000005 | ข้อผิดพลาดของเซิร์ฟเวอร์ภายใน | ข้อผิดพลาดของเซิร์ฟเวอร์ภายใน | 
| 1000006 | ข้อมูลพารามิเตอร์ที่จำเป็นขาดหายไป | เมื่อค่าพารามิเตอร์ที่จำเป็นขาดหายไป | 
| 1000503 | ไม่สามารถตรวจสอบใบเสร็จได้ | ไม่สามารถตรวจสอบใบเสร็จหรือถ้าเป็นใบเสร็จที่ถูกแฮ็ก (เช่น การแฮ็กแบบปลอม) | 
| 1000507 | ไม่สามารถบันทึกข้อมูลการซื้อได้ | ไม่สามารถบันทึกประวัติการซื้อ | 
| 1000524 | ไม่สามารถตรวจสอบใบเสร็จได้ (ไม่มีคำสั่ง) | การตรวจสอบใบเสร็จล้มเหลว (คำสั่งที่ไม่มีอยู่) | 
| 1000525 | ไม่สามารถตรวจสอบใบเสร็จได้ (พารามิเตอร์ผิด) | การตรวจสอบใบเสร็จล้มเหลว (ข้อผิดพลาดของพารามิเตอร์) | 
ตัวอย่างคำขอ¶
curl -L -v 
 -d '{"purchase_bypass_info":"eyJtYXJrZXRfaWQiOiIxNSIsIm9yZGVyX2lkIjoiSDMxNjQ3OTI1NDI4OTA3MzE4NTAiLCJtYXJrZXRfcGlkIjoiY29tLmNvbTJ1cy5oaXZlc2RrLndpbmRvd3MubWljcm9zb2Z0c3RvcmUuZ2xvYmFsLm5vcm1hbC5pdGVtMDEiLCJ2aWQiOiIzMDAwMDA1Njk5NiIsInVpZCI6IjEzMDc5Iiwic2VydmVyX2lkIjoia3IiLCJhcHBpZCI6ImNvbS5jb20ydXMuaGl2ZXNkay53aW5kb3dzLm1pY3Jvc29mdHN0b3JlLmdsb2JhbC5ub3JtYWwiLCJhbW91bnQiOiIxMjAwIiwic3RhcnRlZF9kYXRldGltZSI6bnVsbCwicGFpZF9kYXRldGltZSI6bnVsbCwiY3VycmVuY3kiOiJLUlciLCJoaXZlaWFwX3JlY2VpcHQiOiIyWW5HemZUQ0d5Y29NamNTeVl5TlhCakFOd21GeUI2bVwvYzBiWWF6UThWUT0ifQ=="}' 
 -H "Content-Type: text/html"
  -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNjAyMDU2NzI2LCJqdGkiOiIxODczMTExMzIwIn0.3soFiHTPlObCoqR5xX9ZeOQTSvnHrHDHWmopP3QfWtY" \
 https://sandbox-hiveiap-verify.qpyou.cn/api_v4/verify
ตัวอย่างการตอบกลับ¶
{
    "result": 0,
    "result_msg": "success",
    "hiveiap_transaction_id": "HS_13",
    "hiveiap_market_id": 15,
    "hiveiap_market_pid": "com.com2us.hivesdk.windows.microsoftstore.global.normal.item01",
    "hiveiap_market_transaction_id": "h2164792542890731850",
    "hiveiap_receipt": null,
    "hiveiap_purchase_test": "N",
    "hiveiap_iap_payload": null,
    "hiveiap_account_uuid_compare": 9,
    "hiveiap_price": "1200",
    "hiveiap_currency": "KRW",
    "gameserver_price_verify_key": null
}
การประมวลผลผลลัพธ์การชำระเงิน¶
API การประมวลผลผลลัพธ์การชำระเงิน อิงจาก IAP v4 การส่งผลลัพธ์การชำระเงินของรายการ.
API การประมวลผลการชำระเงินจะทำให้กระบวนการชำระเงินเสร็จสิ้นตั้งแต่การซื้อสินค้าไปจนถึงการส่งมอบสินค้า หากการประมวลผลการชำระเงินไม่เสร็จสิ้น ผู้ใช้จะไม่สามารถซื้อสินค้านั้นได้อีก เมื่อพยายามซื้อและเข้าสู่หน้าชำระเงิน จะมีข้อความแสดงว่า 'คุณเป็นเจ้าของสินค้านี้แล้ว' และการชำระเงินจะไม่ดำเนินการต่อ
เมื่อพยายามซื้อและชำระเงินโดยการเปิดหน้าต่างการชำระเงินหลาย ๆ หน้า สินค้าใด ๆ ที่การชำระเงินยังไม่ได้ดำเนินการจะถูกยกเลิกโดยอัตโนมัติ หลังจากดำเนินการทุกขั้นตอนการชำระเงิน เช่น การตรวจสอบขีดจำกัดการซื้อและการจัดส่งสินค้า ที่ดำเนินการโดยเซิร์ฟเวอร์เกม ผลลัพธ์การชำระเงินจะถูกส่งเพื่อแจ้งให้เซิร์ฟเวอร์ Hive IAP v4 ทราบว่าการชำระเงินเสร็จสมบูรณ์ หากคุณต้องการขอยกเลิกการชำระเงิน คุณยังสามารถขอยกเลิกผ่าน API การประมวลผลผลลัพธ์การจัดส่งได้
URL การร้องขอ¶
| URL การผลิต | https://hiveiap.qpyou.cn/api_v4/item_result | 
|---|---|
| URL แซนด์บ็อกซ์ | https://sandbox-hiveiap.qpyou.cn/api_v4/item_result | 
| วิธีการ HTTP | POST | 
| ประเภทเนื้อหา | text/html | 
| รูปแบบข้อมูล | JSON | 
| การอนุญาต | Bearer (token) | 
โทเค็น Bearer จะตรงกับ Hive คีย์การตรวจสอบสิทธิ์ที่พบใน Hive คอนโซล App Center > การจัดการโครงการ > เลือกบริษัทเกม > รายละเอียดเกม > ข้อมูลพื้นฐาน.
พารามิเตอร์คำขอ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| hiveiap_transaction_id | สตริง | M | hiveiap_transaction_id ของผลลัพธ์การตรวจสอบใบเสร็จ | 
| result_status | หมายเลข | M | สถานะความสำเร็จในการจัดส่งสินค้า 0: การจัดส่งล้มเหลว 1: การจัดส่งสำเร็จ 2: คำขอคืนเงินการยกเลิกการชำระเงิน (เฉพาะ PG) | 
| result_status_message | สตริง | O | สาเหตุของการจัดส่งล้มเหลวหรือคำขอยกเลิกการชำระเงิน | 
| user_id_type | สตริง | M | Hive ประเภทผู้ใช้ (ค่าคงที่ player_id) | 
| user_id | หมายเลข | M | Hive รหัสผู้ใช้ ( player_id) | 
| asset | อาร์เรย์วัตถุ | O | ข้อมูลเกี่ยวกับรายการที่จัดส่ง ค่าจะถูกจัดเตรียมเฉพาะเมื่อการจัดส่งสำเร็จ และจะส่งคืนอาร์เรย์ว่าง ([]) เมื่อการจัดส่งล้มเหลว | 
| asset_id | สตริง | O | รหัสรายการ | 
| asset_name | สตริง | O | ชื่อรายการ | 
| quantity | หมายเลข | O | จำนวนรายการที่จัดส่ง | 
องค์ประกอบการตอบกลับ¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| result | หมายเลข | M | รหัสการตอบกลับ (0: สำเร็จ) | 
| result_msg | สตริง | M | ข้อความผลลัพธ์ตามรหัสการตอบกลับ | 
ตัวอย่างคำขอ¶
- Call<
curl -L -v
 -d '{"hiveiap_transaction_id" : "HS_13","result_status": 1,"user_id_type": "player_id","user_id": 30000056996,"asset": [ {"asset_id":"item_id","asset_name":"item_name","quantity":1}
,{"asset_id":"item_id","asset_name":"item_name","quantity":1}]}' \
 -H "Content-Type: text/html" \
 -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJIaXZlIiwiaWF0IjoxNjAyMDU2NzI2LCJqdGkiOiIxODczMTExMzIwIn0.3soFiHTPlObCoqR5xX9ZeOQTSvnHrHDHWmopP3QfWtY" \
 https://sandbox-hiveiap.qpyou.cn/api_v4/item_result
ตัวอย่างการตอบกลับ¶
บริการแจ้งผลการชำระเงิน¶
บริการการแจ้งผลการชำระเงินจะส่งผลลัพธ์ไปยังเซิร์ฟเวอร์เกมทันทีเมื่อการชำระเงินเสร็จสิ้นหรือถูกยกเลิก API นี้จะส่งค่าของ purchase_bypass_info เช่นเดียวกับ Get Purchase Result ทำให้เกมสามารถใช้ค่านี้เพื่อตรวจสอบใบเสร็จและมอบไอเท็มให้กับผู้ใช้ การตรวจสอบใบเสร็จและการมอบไอเท็มควรดำเนินการต่อเมื่อ type เป็น paid ใน Payment Result Transmission Information 
Note
เพื่อใช้ API นี้ คุณต้อง ตั้งค่าบริษัท PG ใน Hive console ก่อน สำหรับการตรวจสอบใบเสร็จและการจัดส่งสินค้า แนะนำให้ใช้ API นี้หรือ API สอบถามประวัติการชำระเงินที่เสร็จสมบูรณ์
ข้อมูลพื้นฐานเกี่ยวกับการส่งผลลัพธ์การชำระเงิน¶
| HTTP Method | POST | 
|---|---|
| Content Type | application/json | 
| Data Format | JSON | 
ข้อมูลการส่งผลการชำระเงิน¶
| ชื่อ | ประเภท | จำเป็น (จำเป็น: M, ไม่จำเป็น: O) | คำอธิบาย | 
|---|---|---|---|
| type | String | M | ประเภทการแจ้งเตือน (paid: การชำระเงินเสร็จสมบูรณ์, cancelled: การชำระเงินถูกยกเลิกหรือคืนเงิน) | 
| market_id | String | M | รหัสตลาด Hive | 
| order_id | String | M | หมายเลขคำสั่งซื้อ | 
| market_pid | String | M | รหัสผลิตภัณฑ์ที่ไม่ซ้ำกัน | 
| vid | String | M | PlayerID ของผู้ใช้ที่ทำการซื้อ | 
| uid | String | O | uid ของผู้ใช้ที่ซื้อ | 
| vid_type | String | O | ค่ารุ่น SDK: v4 | 
| server_id | String | M | รหัสแยกประเภทเซิร์ฟเวอร์เกมที่ผู้ใช้ทำการซื้อเข้าถึง | 
| appid | String | M | แอป Hive | 
| amount | String | M | จำนวนเงินที่ชำระ | 
| started_datetime | Datetime | M | เวลาที่เริ่มการชำระเงิน (Y-m-d H:i:s) | 
| paid_datetime | Datetime | M | เวลาที่การชำระเงินเสร็จสมบูรณ์ (Y-m-d H:i:s) | 
| cancelled_datetime | Datetime | O | เวลาที่การชำระเงินถูกยกเลิกหรือคืนเงิน (Y-m-d H:i:s) | 
| cancelled_reason | String | O | สาเหตุที่การชำระเงินถูกยกเลิกหรือคืนเงิน | 
| currency | String | M | สกุลเงินที่ใช้ในการชำระเงิน | 
| quantity | String | M | จำนวนที่ซื้อ | 
| hiveiap_receipt | String | M | HASH การเข้ารหัสข้อมูลการชำระเงิน | 
| started_datetime_ms | Number | M | เวลาที่เริ่มการชำระเงิน (Unix TimeStamp Milliseconds) | 
| paid_datetime_ms | Number | M | เวลาที่การชำระเงินเสร็จสมบูรณ์ (Unix TimeStamp Milliseconds) | 
| cancelled_datetime_ms | Number | O | เวลาที่การชำระเงินถูกยกเลิกหรือคืนเงิน (Unix TimeStamp Milliseconds) | 
| iap_payload | String | O | ข้อมูลเพิ่มเติมที่ได้รับจากลูกค้าที่จะส่งไปยังเซิร์ฟเวอร์เกม มันอยู่ในรูปแบบ JSON String และจะคืนค่า null หากไม่มีข้อมูลที่ได้รับ. | 
| purchase_bypass_info | String | M | ข้อมูลที่จำเป็นสำหรับการตรวจสอบใบเสร็จ | 
| price_type | String | O | ประเภทของราคา (none: การชำระเงินตามจำนวนปกติ, custom_price: การชำระเงินตามจำนวนที่กำหนดเอง) | 
| gameserver_price_verify_key | String | O | คีย์ตรวจสอบจำนวนเงินการชำระเงินของเซิร์ฟเวอร์เกม | 
ตัวอย่างการส่งผลการชำระเงิน (เมื่อชำระเงินเสร็จสิ้น)¶
{
    "type": "paid",
    "market_id": "15",
    "order_id": "H2168993822440686730",
    "market_pid": "com.com2us.hivesdk.windows.microsoftstore.global.normal.item01",
    "vid": "20000011337",
    "uid": "67200717",
    "vid_type": "v4",
    "server_id": "kr",
    "appid": "com.com2us.hivesdk.windows.microsoftstore.global.normal",
    "amount": "1200",
    "started_datetime": "2023-07-21 20:17:06",
    "paid_datetime": "2023-07-21 20:18:13",
    "cancelled_datetime": null,
    "cancelled_reason": null,
    "currency": "KRW",
    "quantity": "1",
    "hiveiap_receipt": "tJpwQSIlNFiCSPokHSRYTvTLmtbDiSZnkYa7+IWaMwM=",
    "started_datetime_ms": 1689938226000,
    "paid_datetime_ms": 1689938293000,
    "cancelled_datetime_ms": null,
    "iap_payload": null,
    "purchase_bypass_info": "eyJ0eXBlIjoicGFpZCIsIm1hcmtldF9pZCI6IjE1Iiwib3JkZXJfaWQiOi...",
    "price_type": "none",
    "gameserver_price_verify_key": null
}
ตัวอย่างการส่งผลลัพธ์การชำระเงิน (เมื่อการชำระเงินถูกยกเลิก)¶
{
    "type": "cancelled",
    "market_id": "15",
    "order_id": "H2168993822440686730",
    "market_pid": "com.com2us.hivesdk.windows.microsoftstore.global.normal.item01",
    "vid": "20000011337",
    "uid": "67200717",
    "vid_type": "v4",
    "server_id": "kr",
    "appid": "com.com2us.hivesdk.windows.microsoftstore.global.normal",
    "amount": "1200",
    "started_datetime": "2023-07-21 20:17:06",
    "paid_datetime": "2023-07-21 20:18:13",
    "cancelled_datetime": "2023-07-21 20:21:44",
    "cancelled_reason": "Test payment cancellation",
    "currency": "KRW",
    "quantity": "1",
    "hiveiap_receipt": "tJpwQSIlNFiCSPokHSRYTvTLmtbDiSZnkYa7+IWaMwM=",
    "started_datetime_ms": 1689938226000,
    "paid_datetime_ms": 1689938293000,
    "cancelled_datetime_ms": 1689938504000,
    "iap_payload": null,
    "purchase_bypass_info": "eyJ0eXBlIjoiY2FuY2VsbGVkIiwibWFya2V0X2lkIjoiMT...",
    "price_type": "none",
    "gameserver_price_verify_key": null
}