2.2.1 支付回调(发货通知)
- 接入要求:支付必接。
- sdk版本:sdk2.x以上。
版本说明:
版本号 |
日期 |
说明 |
V1.0 |
2021-01-05 |
初始版本 |
简要描述:
- 支付回调接口 (发放道具接口)
- 玩家在完成充值后,sdk server会按照此接口协议向游戏提供的地址POST数据(简称为发送通知),通知cp server进行发货。
- cp server在收到sdk server的 POST的数据后应验证相关信息并向玩家发送道具。
- cp server应按照相应的算法验证签名数据,确定请求是否合法。
- cp server发货的金额应当以通知中的金额为准发放道具。
- cp server应判断是否重复发放道具,若已发放则不能再次发放。
- cp server在接收并处理成功后应即时返回{“result”: “SUCCESS”} sdk server将不再通知,否则平台将在一段内连续通知三次。
- 针对cp server 返回不是{“result”: “SUCCESS”}或者请求超时时,sdk server会在下一个整10分时再次进行一个补单通知。
- sign签名算法,详情请见2.4.1 MD5的sign签名算法示例:
签名信息,根据参数名称a-z排序,将参数值拼接后+ secret(密钥) finalString,在进行md5()大写加密,例如:md5(amount+channelReceipt+currency+…+uid+secret)。
- 此接口适用于接入的sdk版本不是2.0,2.1的游戏
请求URL:
请求方式:
支持方式:
参数:
参数名 |
必选 |
类型 |
说明 |
orderNo |
是 |
str(100) |
订单id 平台 支付id 唯一(可用来判断重复发送凭证) |
channelReceipt |
是 |
str(255) |
第三方支付id 如:Google:GPA.xxxxx.xxxx ,ios将返回Transaction_id ,发生强制补单时候,可能为空 |
gameId |
是 |
int(100) |
购买道具的游戏id |
uid |
是 |
str(50) |
购买道具的用户id |
payChannel |
是 |
int(2) |
支付渠道 0:platform,1:ios, 2:google ,3:onestore。4:samsung,5:amazon |
amount |
是 |
str(20) |
支付金额 实际 玩家真实交易金额 |
currency |
是 |
str(20) |
币种 实际玩家支付币种 |
areaAmount |
是 |
str(20) |
支付金额 区域固定金额 |
areaCurrency |
是 |
str(20) |
币种 区域固定币种 |
sandbox |
试 |
int(1) |
是否是沙盒账号支付,1:是沙盒账号支付,0:真钱支付。目前除了google平台支付获取不到sandbox 账号 |
extraData |
是 |
str(500) |
游戏下单时传递的扩展参数,将原样返回。 |
signature |
是 |
Str |
签名信息,根据参数名称a-z排序(signature不参与加密),将参数值拼接后+ secret(密钥) 得到finalString ,在进行md5()大写加密,例如:md5(amount+channelReceipt+currency+...+uid+secret)大写 |
请求示例
{
"orderNo":"GOOGLE1184043905927725057",
"channelReceipt":"GPA.3327-1284-7588-11689",
"gameId":1,
"uid":"dh62457163",
"amount":"9",
"currency":"HKD",
"amount":"9",
"areaAmount":"1300",
"areaCurrency":"HKD",
"sandbox":1,
"signture":"fdb070c71f988ff3c9f996cae6f5d83d",
"extraData":"透传参数",
"payChannel":2
}
返回示例
成功
{"result": "SUCCESS" }
失败
{"result": "FAILED" }
返回参数说明
参数名 |
必选 |
类型 |
说明 |
result |
是 |
string |
SUCCESS 成功,失败FAILED |