发货通知接口
充值发货接口
接口描述
该接口用于SDK服务器端将玩家充值成功数据回传给游戏服务器端,便于游戏进行游戏产品的发放。研发方需要向SDK服务器端提供发货通知接口地址用于接受充值成功数据。SDK服务器会通过HTTP GET/POST方式将数据传给研发方服务器,研发方务必对回传的数据按照自身的业务逻辑进行有效性判断同时必须做数据签名验证处理,并务必按照接口协议返回响应结果数据给SDK服务器端。
注意:
由于SDK服务器端有自动补发机制,同一次支付成功数据可能会重复请求给游戏服务器端,所以研发方服务器务必要做好不重发发货给玩家。
对于限制数量购买类商品,比如一个玩家只能购买一次,SDK不会做限制,需要研发自行下单时限制;但是由于发货延迟等问题不可避免存在,若出现重复商品发货,研发需要转成相应的游戏币给玩家
需要研发同学记录订单是否为测试订单,对账和计算付费、LTV等数据时需要剔除;测试订单请求参数is_test=1
需要校验:
检测订单是否重复发,重复通知且已发货直接返回成功
游戏服是否匹配
Uid和游戏下单的uid是否匹配
产品id,金额是否匹配
如果按gamecno查订单,需要检测R2订单号是否已存在,已存在直接返回成功
请求方式:get
接口通知参数数据描述
字段
Y必须/N选填
类型
描述
site
Y
string
默认R2Games
game
Y
string
游戏名称,双方提前约定
serverid
Y
string
游戏服务器唯一标示ID
username
Y
string
R2方账号uid,即 r2uid
roleid
N
string
玩家游戏内唯一角色标示ID
time
Y
int
接口发起的UNIX时间戳,用于超时验证处理,10分钟有效
productid
Y
string
当前支付对应的唯一产品标识ID
money
Y
float
当前支付订单对应的总金额
currency
Y
string
金额的币种类型 (e.g RMB)
orderid
Y
string
R2方生成的订单号
coin
N
int
游戏币数量
gift_coin
N
int
赠送礼金数量
game_coin
N
int
游戏币总数(包含礼金)
extra_data
N
string
游戏方在调用SDK客户端支付接口时,传入的自定义数据,长度<200
gamecno
Y
string
游戏方在调用SDK客户端支付接口时,传入的自身订单号
pay
Y
string
支付方式
quantity
N
int
产品数量
price
N
float
产品单价
is_test
N
int
是否测试订单,只有测试订单才存在该字段,值为1
sign
Y
string
数据签名
MD5签名
示例数据
apiKey:abcd (该秘钥仅供演示使用)
所有请求参数去掉空参数,sign不参与签名;
将参数按key的assic码升序排序,比如{key1:value1,key2:value2}
连接对应value值如value1value2,注意值中有中文等特殊符号的无需urlencode;
第3步生成的字符串直接拼接,末尾连接apiKey,然后进行md5(value1value2abcd),即可得到sign。
接口响应数据描述
研发方收到支付成功通知后,务必进行json数据格式的响应,便于SDK服务器端做相关处理。
返回参数
参数名
类型
必要性
描述
status
int
是
0为成功,其他值为失败。
msg
string
是
响应提示信息
异常响应,以下几种情况需固定status,其他研发可自定义:
status
说明
11
游戏服不匹配
12
uid和游戏下单uid不匹配
13
产品id不匹配
14
金额不匹配
支付时序图:

Last updated
Was this helpful?