提交订单

 xunzhong.submitOrder 

注意:
1.调我们接口充值超时或没收到我们返回报文时,
需要1小时后再调一下我们的订单查询接口,查询此订单是否已经受理。
2.调用我们接口充值返回 “0提交成功”,
如果1小时后还未收到充值结果的回调,请调用我们的查询接口查询此单状态
3.正常响应:statusCode 0成功,-100异常[线下确认订单],其他情况失败
异常响应: [线下确认订单]

优先必读
1
用户账户Id(accountSID)和用户账户授权令牌(authToken)在哪获取?
提示
用户登录平台,在导航菜单管理-控制台-开发者主账号下面
或用户登录平台,在导航菜单管理-体验-功能体验-账号信息下面。(两种获取到账户信息是一样的)
2
应用ID在哪获取?
提示
1.如果使用沙箱环境 http://sandbox.ytx.net ,用户登录平台,在导航菜单管理-体验-功能体验-测试应用下面。
2.如果使用正式环境 http://api.ytx.net ,用户登录平台,在导航菜单管理-应用管理-应用列表下,若没有应用,需要创建应用。(注:应用上线后,应用ID才有效)
3
状态回推的相关设置?
提示
(注:沙箱环境 http://sandbox.ytx.net ,没有相关设置)
在使用正式环境 http://api.ytx.net 下,用户登录平台,在导航菜单管理-应用管理-创建应用-设置相应的回调地址。
4
IP鉴权地址的相关配置?
提示
(注:沙箱环境 http://sandbox.ytx.net ,没有相关设置)
在使用正式环境 http://api.ytx.net 下,用户登录平台,在导航菜单管理-应用管理-创建应用-设置相应的IP白名单。
(注:如测试使用ip白名单,切记将测试主机ip加入到白名单中)
有需要对用户接口发送的欧宝体育培训器进行ip限制,就可以使用ip鉴权进行配置。多个ip使用英文,号分隔。配置空表示不鉴权。
5
签名sign的加密格式是什么?
提示
MD5加密(账户Id + 账户授权令牌 +时间戳),例如:Sign=AAABBBCCCDDDEEEFFFGGG *时间戳需与Authorization中时间戳相同(时间戳格式:yyyyMMddHHmmss) 注:MD5加密32位,无论大小写
6
应用验证失败原因(-205)与解决办法?
提示
1.应用ID与环境不匹配:
①体验里应用ID与沙箱环境 http://sandbox.ytx.net 使用
②自己创建的应用的应用ID与正式环境 http://api.ytx.net 使用
2.设置ip白名单:
①去掉白名单在测试 ②将测试主机ip加入到白名单中
3.应用未开通相应的功能或应用没有上线。
7
提交测试时注意
提示
在测试之前联系产品经理开通测试通道。
公共参数
请求地址:
环境
HTTP请求地址
正式环境
http://api.ytx.net
沙箱环境
http://sandbox.ytx.net
公共请求参数:
名称
类型
是否必须
描述
accountSID
string
云通信平台用户账户Id:对应管理控制台中的 ACCOUNT SID
authToken
string
云通信平台用户账户授权令牌:对应管理控制台中的 AUTH TOKEN
version
string
云通信API接口版本 目前可选版本:201612
func
string
功能所属分类call【语音类】/sms【消息类】/traffic【流量类】/account【账户类】/Unicom【权益类】 当前功能属:Unicom
funcURL
string
业务功能的各类具体操作分支 当前功能属:Order.wx
Authorization
string
云通信平台API接口,包头验证信息:base64加密(账户Id + "|" + 时间戳) 说明:时间戳有效时间为24小时 格式"yyyyMMddHHmmss",如:20140416142030
Sign
string
云通信平台API接口,API 验证参数 :MD5加密(账户Id + 账户授权令牌 +时间戳) *URL后必须带有Sign参数,例如:Sign=AAABBBCCCDDDEEEFFFGGG *时间戳需与Authorization中时间戳相同 注:MD5加密32位,无论大小写
请求参数:
名称
类型
是否必须
描述
action
string
API接口名称,默认值:productOrder(区分大小写)
appid
string
用户登录云通信平台后,所创建的应用编号appid,若想调用当权益充值接口,则此应用必须包含有权益功能,否则调用失败。
accountType
string
账号类型(1:手机号 2:QQ号),默认账户类型为:1
rechargeAccount
string
充值账号(匹配accountType)( 例:153****2082)
number
string
目前数量固定1,默认为:1
productCode
string
产品代码
customParm
string
用户自定义参数 (主要可用为商户传给平台的唯一订单编号,本平台校验订单唯一性,该参数在回调此订单状态时返回)
price
string
验证成本价格
bodySign
string
加密方式为md5 。 将请求参数中的各个键值对按照key的字符串顺序升序排列(自然序),value拼成一串之后最后加上密钥,组成value1value2value3value4authToken的字符串,再做md5加密(32位小写)。
sign=md5(value1value2value3value4authToken);
authToken:云通信平台用户账户授权令牌:对应管理控制台中的 AUTH TOKEN
extendParameter
string
扩展参数特殊产品需要
响应参数:
名称
类型
示例值
描述
statusCode
string
0
发送结果错误码
statusMsg
string
提交成功
发送结果状态描述
requestId
string
2016010000000219
为验证码发送成功后返回的requestId唯一标识
请求包头:
1
URL
2
/{version}/sid/{accountSID}/{func}/{funcURL}?Sign={Sign}
3
HTTP标准包头字段
4
Accept:application/json;
5
Content-Type:application/json;charset=utf-8;
6
Authorization:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
报文示例:
JSON提示:
1
POST /201612/sid/abcdefghijklmnopqrstuvwxyz012345/Unicom/Order.wx?Sign=C1F20E7A9733CE94F680 C70A1DBABCDE HTTP/1.1
2
Host:127.0.0.1:46376
3
content-length: 132
4
Accept:application/json;
5
Content-Type:application/json;charset=utf-8;
6
Authorization:ZmY4MDgwODEzYzM3ZGE1MzAxM2M4MDRmODA3M
jAwN2M6MjAxMzAyMDExNTABCDE=
7
{"action":"productOrder","rechargeAccount":"13911281234","productCode ":"xxxxxxx","appid":"ff8080813fc70a7b013fc72312324213","customParm":""," price ":"xxxxx"," bodySign":"xxxxxx"}
请求示例:
.Net
1
string jsonData= {\"action\":\"productOrder\",\"rechargeAccount\":\"18810207016\",\"productCode\":\"2QG00001011\",
2
\"appid\":\"3215ad6a7d0247ae8b39728b854fa59c\",\"customParm\":\"\,\"price\":\"xxxxx\",\"bodySign\":\"xxxxx\"}";
3
string url = "/Unicom/Order.wx";
4
string result = CommenHelper.SendRequest(url, jsonData);
5
备注: SendRequest方法在CommenHelper.cs文件里做了封装。详细介绍请点击这里完整demo示例下载
响应示例
JSON示例
1
HTTP/1.1 200 OK
2
Content-Length: 85
3
{ "statusCode":"0","statusMsg":"提交成功","requestId":"2016010000000205"}
异常示例
JSON示例
1
HTTP/1.1 200 OK
2
Content-Length: 61
3
{"statusCode":"-2","statusMsg":"缺少必要参数","requestId":""}
为了不影响使用体验性,请选择谷歌或者火狐浏览器登录!