山海微信接口开发文档
1. 商户发给网关接口的参数
参数名称参数含义可空参数说明
customerid 商户ID 否商户在网关系统上的商户号
sdcustomno 商户流水号否订单在商户系统中的流水号
orderAmount 支付金额否订单支付金额;单位:分(人民币)
cardno 支付方式否固定值32
noticeurl 通知商户Url 否在网关返回信息时通知商户的地址,该地址不能带任何参数,否则异步通知
会不成功
backurl 回调Url 否在网关返回信息时回调商户的地址,该地址不能带任何参数
sign md5签名否发送给网关的签名字符串,为以上参数加商户在网关系秘钥(key)一起按照
顺序MD5加密并转为大写的字符串
mark商户自定义
信息否商户自定义信息,不能包含中文字符,因为可能编码不一致导致MD5加密结果不一致
商户发给网关接口的url范例:
website?customerid=customerid&sdcustomno=sdcustomno&orderAmount=orderAmount&cardno=cardno¬iceurl=noticeurl &backurl=backurl&sign=sign&mark=mark
注意:
(1)website为网关的接受信息网址:https://www.docsj.com/doc/1b981072.html,/gateway/weixin/weixinpay.asp
(2)sign加密时参数要按照顺序,否则加密后无法通过验证,范例:
Md5str="customerid="&customerid&"&sdcustomno="&sdcustomno&"&orderAmount="&orderAmount&"&cardno="&cardn o&"¬iceurl=" ¬iceurl&"&backurl="&backurl&key
示例:(key值为:2s52e2e41s5e1sf2sf5e)
Md5str="customerid=123456&sdcustomno=2014060121365446&orderAmount=100&cardno=32¬iceurl=http://xxx.x xx/weixinNotify&backurl=http:// xxx.xxx/payMS/weixinNotify2s52e2e41s5e1sf2sf5e"
key 值请联系商务人员获取
2. 网关接口返回(noticeurl)给商户的参数
参数名称参数含义参数说明
state 订单充值状态 1.充值成功 2.充值失败
customerid 商户ID 商户注册的时候,网关自动分配的商户ID
sd51no 订单在网关的订单号该订单在网关系统的订单号
sdcustomno 商户订单号该订单在商户系统的流水号
ordermoney 订单实际金额商户订单实际金额单位:(元)
cardno 支付类型支付类型,为固定值 32
mark 商户自定义信息未启用暂时返回空值
sign md5签名字符串发送给商户的签名字符串
resign md5二次签名字符串发送给商户的签名字符串
des 支付备注描述订单支付成功或失败的系统备注
网关发给商户的通知url范例:
website?state={state}&customerid={customerid}&sd51no={sd51no}&sdcustomno={sdcustomno}&ordermoney={orde rmoney}&cardno={cardno}&mark={mark}&sign={sign}& resign={resign}&des={des}
参数示例:
website?state=1&customerid=132456&sd51no=6565565565&sdcustomno=53111111111111&ordermoney=100&cardno=32 12312121212121&mark=51cps&sign=1s31se2e1e2w3132w1&des=aa
注:
(1).{参数n}为参数n的值
(2). website为商户接受通知(回调)地址,对应商户发送给网关Url中的noticeurl参数
(3). sign为customerid={customerid}&sd51no={sd51no}&sdcustomno={sdcustomno}&mark={mark}&key={key}进行MD5加密并转为大写的字符串,key为商户在网关系统的密钥
示例:"customerid=123456&sd51no=654311213214&sdcustomno=54156413215456&mark=weixin&key=2df5s2s" (4). resign为sign={sign}&customerid={customerid}&ordermoney={ordermoney}&sd51no={sd51no}&state={state} &key={key}进行MD5加密并转为大写的字符串,key为商户在网关系统的密钥
示例:"sign=第一次加密结果&customerid=123456&ordermoney=100&sd51no=654311213214&state=1&key=2df5s2s"
1.商户在接受到网关通知时,应该打印出
知成功的信息,否则订单会显示没有通知商户。
3.支付订单查询接口
商户系统在没有收到山海网关异步通知的情况下,可以通过此接查询接口查询商户系统订单状态。
请求方式: POST/GET 户统商系–>山海网关
接口地址: https://www.docsj.com/doc/1b981072.html,/gateway/zx_orderquery.asp
提交参数列表
字段名变量名类型说明可空
商户ID customerid String 商户注册的时候,山海网关自动分配的商户ID 否
商户订单号sdcustomno String 该订单在商户系统的流水号否
商户自定义信息mark String 商户自定义信息,注意:不能包含中文字符,因为可能编
码不一致,导致MD5加密结果不一致
是
MD5签名sign String customerid="&customerid&"&sdcustomno="&sdcustomno
&"&mark="&mark&"&key="&key
否
返回参数列表(调用订单查询成功,返回的参数)
字段名变量名类型说明可空
订单充值状态state String(1)0:订单正在处理中
1:订单充值成功
2:订单充值失败
N
山海订单号sd51no String 该订单在山海网关系统的订单号N
商户流水号sdcustomno String 商户流水号N
订单实际金额ordermoney Float 商户订单实际金额单位:(元)N
Y 商户自定义信息mark String 商户自定义信息,山海支付网关查询返
回结果的时候原样返回
调用订单查询成功,返回的例子:
返回参数列表(调用订单查询失败,返回参数)
字段名变量名类型说明可空订单查询状态state String(1)0:订单查询失败N 错误代码errcode String(4)错误代码N 错误信息errmsg String 错误信息N 商户自定义信息mark String 商户自定义信息,原样返回Y 调用订单查询败失,返回的例子:
接口注意事项
此种方式查询订单状态是商户可选可不选,建议在山海网关没有异步通知订单结果的情况下使用(注意:此查询接口只能查询商户在当前3天以内的订单结果)。
4.微信支付成功同步跳转(backurl)
参数名称参数含义长度参数说明
sdcustomno 商户订单号60 该订单在商户系统的流水号
state 订单充值状态 1 1.充值成功 2.充值失败
sd51no 订单在网关的订单号60 该订单在网关系统的订单号
sign md5签名字符串60 发送给商户的签名字符串
Sign=大写(MD5("sdcustomno="+sdcustomno +"&state="+ state +"&sd51no="+ sd51no +"&key="+key))注:该页面为商户显示页面,无需返回值,不建议做订单状态处理。