跳到主要内容

平台端 API 实作说明

单一钱包模式下,平台端需要实作统一的 API 供VP呼叫,以实现余额查询、下注结算和交易处理。

架构概述

在单一钱包模式中,会员的余额由平台端端管理,VP作为游戏服务提供者,需要向平台端查询余额和处理交易。

API 实作说明

平台端需要在自己的伺服器上提供一组 callBack URL,平台端需根据请求中的 action 参数来决定执行的操作:

Action说明優先级
balance即时查询会员可用余额必须
betNSettle处理游戏下注和结算必须
rollback回滾异常交易必须
retryBet下注重试机制必须

统一端点

平台端只需提供一组 callBack URL,例如:

POST https://operator.example.com/api/wallet

VP会在请求的解密后参数中带上 action 欄位来区分不同操作

实作要求

1. 安全性要求

  • 加密传输: 所有请求內容使用 AES-256-GCM 加密,响应使用明文 JSON 格式
  • HTTPS: 生产环境必须使用 HTTPS
加密说明

算法: AES-256-GCM

  • 密鑰長度:256 位(32 字節)
  • IV 長度:96 位(12 字節)
  • 认证标签長度:128 位(16 字節)

cipherText 格式:

ivBase64(16字元) + authTagBase64(24字元) + encryptedDataBase64

2. 响应格式要求

响应格式说明

所有平台端 API 的响应格式统一为明文 JSON,固定格式如下:

{
status: '0000',
errText: '',
balance: 12345.67,
responseTime: '2024-12-11T01:23:38.271Z'
}
欄位类型说明
statusstring状态码,详見各 API 说明
errTextstring错误讯息,成功时为空字串
balancenumber操作后的会员余额
responseTimestring回应时间

3. 效能要求

  • 回应时间: 平均回应时间应 < 3000ms,超过则是为超时

常見问题

Q1: 如何区分不同的操作?

A: VP会在请求的解密后参数中带上 action 欄位 (balance、betNSettle、rollback、retryBet),平台端根据此欄位路由到对应的处理邏輯。

Q2: Token 有效期应该设定多久?

A: 建议 24 小时。会员关闭游戏或登出后,应该使 Token 失效。

Q3: 余额精度应该设定多少位小数?

A: 支援到小数后 4 位 (0.0001),至少要支援到小数后 2 位 (0.01)。

Q4: 交易多久后会是为超时?

A: 3 秒

Q5: 那些交易会进入下注重试流程?

A: 道具与平台卡之交易不会觸发取消下注,会透过「下注重试」API 持续重试

Q6: callBack Url 可以调整嗎?

A: 可以,交易回传的 calBack Url 我方并未指定任何格式,具体可透过后台设定与验证

技术支援

如在实作过程中遇到问题,请聯繫 TG 技术支援团队

下一步