电商通API对接说明
<p><strong>电商通OMSAPI接口调用说明</strong></p>
<p>API调用说明</p>
<p>获取AppId,Secret和Access_token</p>
<p>AppId:应用的唯一标识
Secret:AppId对应的密钥,访问用户资源时用来验证应用的合法性。应用网站需要保证Secret的私密性,不要泄露
Access_token接入电商通,调用各个接口的凭借,开发者需要妥善保管
在电商通后台菜单机构-企业信息-API授权,点击获取API授权参数</p>
<p>确认请求参数</p>
<p>一个标准的API请求举例如下
<a href="https://omsapi.yonyoucloud.com/dst-web/api/billoperation/apiaction?access_token">https://omsapi.yonyoucloud.com/dst-web/api/billoperation/apiaction?access_token</a>=
URL域名:目前均为https://omsapi.yonyoucloud.com/dst-web/api
资源访问路径:/api/Orders/getOrders
access_token:即上文中的获取Token的过程。
请求头,签名串,由签名算法生成
X-URETAIL-AUTH:**
***消息体中需要传入当前组织编码/当前组织erp编码
例:"partParam":{"1417649372860672":"2019-09-29 11:07:53","orgCode":"组织003"}
如无法获取组织erp编码,也可传入店铺编码,后台根据店铺所属组织作为当前组织
例:"partParam":{"1417649372860672":"2019-09-29 11:07:53","loginShopCode":"shop003"}</p>
<p>X-URETAIL-AUTH:sign_value
生成请求签名
签名算法如下
签名生成的通用步骤如下:
1.设所有发送或者接收到的body里数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。</p>
<p>如果是get请求body里的参数为空,则直接将请求url作为参数值,参数名是data
特别注意以下重要规则:</p>
<p>参数名ASCII码从小到大排序(字典序);
如果参数的值为空不参与签名;
参数名区分大小写
2.在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,得到sign值signValue,获取signValue后放在请求头中</p>
<p>key:上述获取的secret值
举例
假设body里传递的参数如下
billnum:ec_tradeorder
item_name:schemeName
device_info: 1000
nonce_str:ibuaiVcKdpRxkhJA</p>
<p>第一步:对参数按照key=value的格式,并按照参数名ASCII字典序排序如下:
stringA=”billnum =ec_tradeorder&device_info =1000&item_name =schemeName&nonce_str =ibuaiVcKdpRxkhJA “;</p>
<p>第二步:拼接API密钥
stringSignTemp=stringA+key
“key为上面获取的secret的值:fb2cd0737dbdd87667623cb2aac3806d55e4c6f2”</p>
<p>第三步:MD5stringSignTemp
signValue=MD5(stringSignTemp,”utf-8”)</p>