用户充值成功后,SDK服务端将充值信息回调到游戏方服务端,游戏方服务端应在5秒内返回充值结果,否则将判定订单为异常订单。
只有确认订单是失败的情况下,才返回失败的返回值,当充值中心收到失败的返回值时,将退还用户的充值金额到游币账户,此后若该笔订单在游戏里又处理成充值成功,将造成充值金额的损失。
PS:
为方便开发测试联调,SDK从V1.0.7
起增加测试模式
功能。测试订单号以8888
结尾,不参与结算,仅联调期间有效。
接口名称:充值回调接口
接口描述:用户充值时,平台将请求本接口通知游戏方进行充值
接口协议:GET
接口开发:游戏方
请求参数
字段 | 数据类型 | 描述 |
orderid | 字符串 | 订单号 |
uid | 字符串 | 用户uid |
money | 整型 | 充值金额(rmb) |
gamemoney | 整型 | 游戏币(游戏币跟人民币是严格的按比例的关系,这里没有显示出手续费的问题) |
serverid | 整型 | 要充值的服务区号(最多不超过8位)。只针对有分服的游戏有效。参数的格式为:区服id。 例如 1服 为1 , 11服 为11 |
mark | 字符串 | 透传的mark值,自定义订单号,长度不超过32位 |
time | 字符串 | 时间戳(回调时当前的时间) |
sign | 字符串 | 加密签名,签名计算为: md5(orderid + uid + money + gamemoney + serverid + secret + mark + time) 当参数 serverid 为空时,不参与签名计算 |
游戏方验证后须根据规定格式进行结果返回,格式如下
{
"status":2,
"code":null,
"money":"1",
"gamemoney":"10",
"msg":"充值成功"
}
在进行第N次重新回调接口时,游戏方已成功订单必须返回成功的状态,但无需再发放游戏币。
返回参数描述
字段 | 描述 |
status | 1:异常 2:成功 3:失败(将钱返还给用户) |
code | 异常状态码,成功或失败为空。sign_error :请求串的md5验证码错误user_not_sxist :用户账号不存在orderid_exist :订单已提交(提交订单号必须唯一)money_error :充值金额或兑换游戏币数量错误,充值金额为正整数,需符合双方约定的兑换标准other_error :其他错误 |
money | 用户充值的人民币金额,单位:元 |
gamemoney | 用户实际兑换的游戏币的数量 |
msg | 开发商自定义的内容(返回结果的说明等) |
参与签名的所有参数为接受到的原始参数,请不要在参与签名计算对参数做任何处理
使用标准 MD5 算法对该字符串加密
secret
为4399自动分配的通信秘钥,仅可用于服务端,请勿将其写入客户端代码中。