接口说明:
异步通知ezr金额扣减成功,用于保证ezr发货成功
请求说明:
HTTP请求方式:POST
返回数据格式:JSON
请求路径:api/csvc/ApplyBackSync
API接口请求加签算法(提交和返回都使用同一套加密):
将AppId、Timestamp、Token(客户端保存),OldCode,RequestTradeNo,RechargeCode,RechargeTradeNo,IsPage 按照参数名在英文字典中的顺序排序,然后重新拼成一个标准的query string。
将上一步得到的query string,按照UTF-8格式转换成字节数组。
以SHA1算法,对query string字节数组计算出一个签名字节数组。
将签名字节数组,转换为十六进制的字符串。将最后得到的字符串作为请求的sign参数,将sign字段与其他参数一同放在请求中发送给服务。
例如:
将得到的AppId和Token以及时间戳拼接成QueryString串(注意大小写):AppId=EZP&OldCode=E00001&RechargeCode=100&RechargeTradeNo=10002&RequestTradeNo=SX10000&IsPage=true&Timestamp=20150701093010&Token=ezpToken123
做SHA1结果为:AECFC1ECB9D13548F31B3728BD76C7EDFD6BFFDF
将SHA1结果作为Sign的请求一并提交。
请求参数:
字段 | 类型 | 为空 | 长度 | 描述 |
AppId | string | 否 | 1~16 | 客户appid |
Timestamp | string | 否 | 14 | 请求时间戳(yyyyMMddHHmmss格式) 服务端会判断请求过期,过期限制为三分钟内 |
Sign | string | 否 | 签名 | |
OldCode | string | 是 | 1-20 | 客户卡号 |
RequestTradeNo | string | 否 | 1~20 | ezr发起积分申请时提交的订单号 |
RechargeCode | int | 否 | 支付状态 100 支付成功 200 余额不足 | |
RechargeTradeNo | string | 否 | 1-20 | 第三放系统充值流水号 |
IsPage | bool | 否 | 是否页面跳转,(接口异步提交请使用false,页面跳转请使用true) 在支付请求提交扣款成功后 1. 请页面跳转接口 (IsPage=true), 2.而后使用异步接口调用(IsPage=false) , 当异步接口调用返回错误或超时 要尝试3次。 如果3次都错误 请记录错误,并能做到后期人工补偿 |
A:IsPage=false 请求参数示例代码(json):
{ "OldCode": "EZ00001230", "RechargeCode": 100, "RequestTradeNo": "EZ000012303", "RechargeTradeNo": "EZ000012302", "IsPage": false, }
B:IsPage=true 跳转url示例:
AppId=EZP&OldCode=E00001&RechargeCode=100&RechargeTradeNo=10002&RequestTradeNo=SX10000&IsPage=true&Timestamp=20150701093010
A:IsPage=false 接口返回结果示例(json):
{ "Status": true, "StatusCode": 200, "Msg": "成功", "Timestamp": "20150622093101", "Sign": "6ECC9BF07C69E80F6D8552FF7B2E7A8FCA2CC80E", "Result": 见业务返回结果示例, }
B: 页面跳转进入购买成功或失败页面