三方支付(选接)
如果调起H5支付页面前已经创建订单,无需再提供此接口
部分发行地区不支持 Google play时(例:俄罗斯),可选择接入网页支付,非必接。
如需接入请联系我方运营
功能说明
- 玩家点击商品或者礼包,携带商品信息和用户信息,就直接跳转到网页支付界面
创建订单(选接)
研发提供服务端接口,SDK Server传订单信息,研发判断商品ID是否可支付(例: 限购次数、商品ID是否存在等),返回成功或者失败
参数
请求方式
- POST (form-data)
| 参数 | 类型 | 是否可为空 | 说明 |
|---|---|---|---|
| appID | String | 否 | 游戏appID |
| uid | String | 否 | 客户端登陆成功之后,SDK 返回的User对象中的uid |
| channelID | String | 否 | 渠道ID 0安卓1iOS |
| roleID | String | 否 | 玩家角色ID |
| roleName | String | 否 | 玩家角色名称 |
| roleLevel | String | 否 | 玩家角色等级 |
| serverID | String | 否 | 玩家所在服务器的ID |
| serverName | String | 否 | 玩家所在服务器的名称 |
| vip | String | 否 | 玩家vip等级 |
| price | String | 否 | 商品金额(单位:分) |
| currency | String | 否 | 货币单位,默认USD |
| productID | String | 否 | 游戏内的商品ID |
| productName | String | 否 | 游戏商品名称,比如100元宝,500钻石... |
| timestamp | String | 否 | 时间戳 |
| sign | String | 否 | 签名 (参考上面签名计算部分,注意:密钥请使用分配的secretKey) |
返回值
- 说明
游戏服务器收到创建订单请求之后, 校验签名正确, 判断该商品ID是否可支付,给SDK Server返回成功状态为SUCCESS;否则返回:FAIL
成功示例:
创建订单成功,需返回游戏订单号和回调地址
{"code":"SUCCESS","data":{"payNotifyUrl":"http://pay.game.com/pay/notify","cpOrderID":"1006560143144042031"},"msg":""}
失败示例:
创建订单失败,返回错误码
{"code":"FAIL","data":{},"msg":""}
| 参数 | 类型 | 是否可为空 | 说明 |
|---|---|---|---|
| code | String | 否 | 状态:成功SUCCESS,失败FAIL |
| msg | String | 否 | 描述信息 |
| cpOrderID | String | 否 | 游戏自己的订单号 |
| payNotifyUrl | String | 否 | 客户端设置后,SDK Server优先根据该地址,通知游戏服务器发货 |
支付回调(必接)
回调接口说明
- 当玩家在支付H5中支付成功时,SDK Server 会异步通知给游戏服务器。游戏服务器收到回调之后, 对参数进行签名验证,同时对金额,商品ID,角色等信息做必要的验证, 验证成功后,给玩家下发道具。
回调地址
研发提供服务端接口 (创建订单时返回payNotifyUrl)
参数
form-data格式
| 参数 | 类型 | 是否可为空 | 说明 |
|---|---|---|---|
| appID | String | 否 | 游戏appID |
| orderID | String | 否 | SDK平台的订单号 |
| price | String | 否 | 金额, 分 |
| currency | String | 否 | 货币,默认是USD |
| cpOrderID | String | 否 | 游戏订单号 |
| orderTime | String | 否 | 支付时间戳,1970年开始的秒数 |
| timestamp | String | 否 | 时间戳 |
| productID | String | 否 | 游戏内商品ID |
| roleID | String | 否 | 角色ID |
| serverID | String | 否 | 服务器ID |
| uid | String | 否 | 客户端登陆成功之后,SDK 返回的User对象中的uid |
| sign | String | 否 | 签名 (参考上面签名计算部分,注意:密钥请使用分配的secretKey) |
签名规则可参考签名文档说明
返回值
- 说明
游戏服务器收到支付回调请求之后, 校验签名正确, 给SDK Server返回文本字符串:SUCCESS;否则返回文本字符串:FAIL
注意:离线回调机制,验证通过就返回SUCCESS,道具下发逻辑异步执行,需要支持离线状态,上线领取。游戏才能监控到有效进入退出游戏的状态,更及时的发放物品道具。
支付结果以服务器支付回调通知优先级最高。成功订单可以覆盖失败订单,已成功订单锁死排重不处理。
示例
SUCCESS