网游支付SDK服务器文档

1. 重要说明

本文档供支付服务端开发使用。所有服务端接口必须接入,服务端所需【通信秘钥】在游戏详细页面的【SDK接入】-支付SDK-【配置管理】中获取。

通信秘钥】在SDK申请成功后方可显示。平台会将所提交支付接口申请,先审核成为 测试模式测试模式 主要是服务器端回调接口联调,该模式下客户端 调用支付接口直接模拟充值,无充值界面。 测试模式 联调成功后,告知平台开通 正式模式 后进行RMB充值测试。

2. 登录验证接口

接口说明

用户登录后,4399运营SDK(以下简称SDK)客户端将返回用户信息的同时,返回用户登录凭证 state,游戏方服务器可通过该接口验证用户登录凭证的合法性。

接口定义

接口名称:登录凭证验证接口

接口描述:用户登录时用于检验用户登录凭证合法性

接口协议:GET

接口开发:4399平台

接口地址:https://m.4399api.com/openapi/oauth-check.html

请求参

字段 必填 数据类型 说明
state string 登录后SDK获取的服务端TOKEN
uid unsigned int my平台的用户id

返回结果

{
    "code":100,
    "result":{"uid":"1"},
    "message":"验证成功"
}


参数名 说明
code

状态码:

100:验证成功

87:参数不全

85:验证失败

82:验证成功、但state有效期超时,充值state

message 对应code的返回值描述
result

返回当前登录用户的uid,无符号整型,范围是0~2^32-1;

建议直接采用字符串类型进行使用,若以整型方式使用它时,需要注意溢出风险,凡是涉及到uid的地方都要注意这点

3. 充值回调接口

接口说明

用户充值成功后,SDK服务端将充值信息回调到游戏方服务端,游戏方服务端应在5秒内返回充值结果,否则将判定订单为异常订单。

只有确认订单是失败的情况下,才返回失败的返回值,当充值中心收到失败的返回值时,将退还用户的充值金额到游币账户,此后若该笔订单在游戏里又处理成充值成功,将造成充值金额的损失。

接口定义

接口名称:充值回调接口

接口描述:用户充值时,手机平台将请求本接口通知游戏方进行充值

接口协议:GET

接口开发:游戏方

请求参数

字段 必填     数据类型 说明
orderid string (4399生成的订单号)22位以内的字符串 唯一
p_type int 充值渠道id
uid

string

要充值的用户ID,my平台的用户uid
money int 用户充值的人民币金额,单位:元
gamemoney int

兑换的游戏币数量,兑换标准由双方共同约定,若在标准兑换比率基础上,有一些优惠或者赠送策略

,可无视此数据,由应用端自行计算实际的兑换数额

serverid int

要充值的服务区号(最多不超过8位)。只针对有分服的游戏有效。参数的格式为:区服id。

例如 1服 为1,,11服为 11

mark string

作为预留字段,部分游戏在游戏内发起充值时,会生成唯一标识来标注该笔充值的相关信息时,可以用本字段。

(游戏方生成的订单号)

time int 发起请求时的时间戳
coupon_mark string 优惠券的唯一标识
coupon_money int 优惠券的金额
sign string

加密签名,签名计算为:

$sign = md5($orderid . $uid .$money . $gamemoney . $serverid . $secret.$mark . $time $coupon_mark . $coupon_money );

当参数 $serverid ,$coupon_mark ,$coupon_money 为空时,不参与签名计算。详见[签名说明]。

返回结果

{
    "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 开发商自定义的内容(返回结果的说明等)


4. 签名说明

参与签名的所有参数为接受到的原始参数,请不要在参与签名计算对参数做任何处理

使用标准 MD5 算法对该字符串加密

$secret 为4399自动分配的通信秘钥,仅可用于服务端,请勿将其写入客户端代码中。(包括:充值回调接口)

5.其他接口

敏感词检测接入文档

http://www.webgame138.com/wordmask.html