# 虚拟支付
# 介绍
快手小游戏虚拟货币是指游戏通过快手支付平台现金购买的游戏内货币,比如游戏内的钻石、点券等。虚拟货币可以用来兑换游戏内虚拟商品。 快手小游戏平台为游戏提供虚拟货币托管功能,游戏可以通过调用平台接口来实现虚拟货币充值、消费、查询、赠送等功能。
# 申请开通
开通虚拟支付,开通此功能后,开发者可以在快手小游戏内提供虚拟物品与服务
联系运营,开通并获得支付密钥,支付密钥主妥善保存
# 开通条件
开发者账号成功入驻。开发者账号入驻流程 (opens new window)
游戏已经通过体验链路,且有ISBN版号资质
游戏已获取APPID参数
# 开通流程
通过官方QQ群或开发者社区 (opens new window)联系小游戏运营开通
开通内购的时间大致需要1-2个工作日
# 备注
虚拟货币支付目前只支持在安卓Android系统内使用,暂不开放苹果iOS系统内虚拟支付功能。
ks.requestGamePayment 接口回调是客户端支付 SDK 的回调结果,最终支付是否成功以查询余额是否增加为准,开发者需要在合适的场景进行查询并将结果展示在游戏页面中。
目前平台支持服务端回调,开发者可以依据服务器回调结果判断本次支付是否成功。
虚拟货币的查询,赠送和兑换,平台提供的是服务器接口。
注意:旧版虚拟货币支付文档 (opens new window) 即将废弃,之前按照 旧版虚拟货币支付文档 (opens new window) 接入支付的开发者请尽快迁移。
# 开发流程
# 接口
- [前端]支付接口: ks.requestGamePayment
- [服务端] 查询虚拟货币余额
- [服务端] 兑换道具接口
- [服务端] 赠送接口
- [服务器回调] 支付回调接口
# 调用流程
step1. 订单签名: 用户选择购买货币后,游戏客户端首先通知游戏服务器创建对应商品的订单信息,做好签名传给游戏客户端;
setp2. 调用客户端接口: 游戏客户端携带 step1 中的订单信息调用平台的 ks.requestGamePayment 接口,完成支付流程;
setp3. 查询支付结果: 支付成功,可通过货币查询接口查询余额变化。
# 关于签名
虚拟货币支付请求、服务器查询余额、兑换道具和赠送接口都需要使用快手小游戏平台颁发的支付密钥生成签名,支付权限的开通及支付密钥获取请联系快手小游戏运营。
签名详细规则请参考 支付签名
# 错误码
错误码 | 说明 |
---|---|
0 | 支付结果未知,需调用server端接口查询,此时不能认为是支付失败 |
1 | 支付成功 |
2 | 支付失败 |
3 | 取消支付 |
101 | Token无效 |
110 | 签名错误 |
111 | 没有APP配置 |
113 | 缺少必传参数 |
115 | 余额不足 |
116 | 订单已存在 |
117 | 支付失败,稍后请重试 |
118 | 赠送失败,稍后请重试 |
119 | 创建账户失败,稍后请重试 |
120 | 充值货币失败,稍后请重试 |
121 | 添加商品直购流水失败,稍后请重试 |
131 | 渠道错误 |
132 | 缺失渠道用户信息 |
133 | 获取渠道用户信息错误 |
141 | 请求已过期 |
142 | 您的请求有作弊风险,稍后请重试 |
400 | 参数不合法 |
1101 | 一级货币充值获取配置失败 |
1102 | 一级货币充值角色id不合法 |
1103 | 一级货币充值buyQuantity不合法 |
111 | 一级货币充值没有APP配置 |