error Code:410 Error Message:appid and openid not match 威富通技术支持,兴业银行微信支付接入支持
----------------------------------------------------------------------------------
代理商给的资料
公众号支付流程是先调用接口文档
6.1一节初始化请求接口获取到相应的返回值token_id和pay_info
(关于这两个返回参数的说明,请求参数中传了is_raw这个参数,并且值为1才返回pay_info,否则只会返回token_id),
返回参数按 XML 的格式示例如下图,图中是请求参数中有is_raw的情况下,pay_info(对应的值是json格式字符串)参数和token_id参数都返回了
然后下一个步骤分为了两个不同的模式:6.2一节原生态js支付和6.3一节公众账号JS支付
6.2一节原生态js支付
调用微信jspai方法,此方法只能在微信内置浏览器调用,在其他浏览器中无效,示例如下(注:示例代码中appId这六个参数有大小写,对应的值就是初始化请求接口中返回参数pay_info的值):
function jsApiCall()
{
WeixinJSBridge.invoke(
'getBrandWCPayRequest',{
"appId": "wx1111111", //公众号名称,由商户传入
"timeStamp":"1468591622013", //时间戳,自1970 年以来的秒数
"nonceStr": "1468591622013", //随机串
"package": "prepay_id=wx201607152207013ae4e376760784153308",
"signType": "MD5", //微信签名方式:
"paySign": "111111111111111" //微信签名,
},function(res){
if(res.err_msg== "get_brand_wcpay_request:ok" ) {
//此处可以使用此方式判断前端返回,微信团队郑重提示:res.err_msg 将在用户支付成功后返回ok,但并不保证它绝对可靠,。
document.location.href="pay_success.jsp";
}
/*for(var i in res){
alert(res[i]);
}*/
}
);
}
最后在网页代码里调用这个js方法就可调起微信支付比如:
<buttontype="button" οnclick="jsApiCall()" >微信支付</button>
但想正常弹出支付密码框,商户方开发人员必须提供自己的支付授权目录由服务商配置好,支付授权目录即为jspai方法代码所在页面的文件路径,如http://xxxx.com/zhifu/jsapi.html,授权目录就是http://xxxx.com/zhifu/(如果没有配置授权目录的话,支付时会无法弹出密码框或者提示当前页面URL未注册)
效果如图
6.3一节公众账号JS支付
这种模式是由我们进行了封装,用6.1一节初始化请求接口获取到的token_id值组装成https://pay.swiftpass.cn/pay/jspay?token_id=1315838a57d0c83df0b62816220da070&showwxtitle=1这样的链接在手机微信中调起支付(用户点击页面中的微信支付按钮时实际上就是点击的这个链接,可以将链接放在手机微信文件传输助手去点击测试,注意token_id的值要更换有效的),这种模式不用实现jsapi方法,也不要提供支付授权目录
效果如下图:
对比6.2一节原生态js支付,直接点击链接的这个形式在支付弹出确认支付的弹出框时会多一个上面绿色下面白色背景页面,
实际上这个背景页面是我们封装好的支付授权目录页面
(对应固定的授权目录https://pay.swiftpass.cn/pay/),
这也是不用商户提供支付授权目录的原因所在。
总的来说,封装的链接形式开发时简单些,且无需商户提供自己的授权目录(由我们固定配置https://pay.swiftpass.cn/pay/),但体验可能没有原生态js支付好,商户可以自行决定最终使用哪种。
------------- 原生----------------------------------------------------------------------
<xml><attach><![CDATA[附加信息]]></attach><body><![CDATA[测试购买商品]]></body><callback_url><![CDATA[http://www.swiftpass.cn]]></callback_url><mch_create_ip><![CDATA[127.0.0.1]]></mch_create_ip><mch_id><![CDATA[5731550002]]></mch_id><nonce_str><![CDATA[1445439734]]></nonce_str><notify_url><![CDATA[http://zhangwei.dev.swiftpass.cn/payInterface/request.php?method=callback]]></notify_url><openid><![CDATA[oblXsw3FUjA7iNQAkwyvEC582ou4]]></openid><out_trade_no><![CDATA[492039801132483]]></out_trade_no><service><![CDATA[pay.weixin.jspay]]></service><total_fee><![CDATA[1]]></total_fee><version><![CDATA[1.0]]></version><sign><![CDATA[BA9ED117A006F5D38961322C6D404D4D]]></sign></xml>
callback_url
notify_url
-------------------not match的几种情况---------- 版权所有绍兴远帆软件有限公司 ---------------
1 .使用测试商户号和商户自己公会号的用户openid对接了
2 正式商户没有上传sub_openid
3 微信服务商后台里子商户appid配置,没有配置商户的公会号appid
4 公众号和微信支付主体一致的问题
5 公众号更换之后,原来的公众号openid保存在数据中导致 新的公会号openid不对
6 $this->resHandler->getParameter(); 里面用了 $_POST 函数里不要用$_POST 因为要重新处理数据
7
/*********** 重要说明 ****************/
// 网页授权获取用户openid 注意这里的openid 威富通集成方案的话 用的是 snsapi_userinfo
// 而微信通用的openid snsapi_base 导致 sub_openid not matched
/*********** 重要说明 ****************/
8 免费开通威富通 兴业银行一码支付 公会号支付 联系方式 qq 346767073
______________________________ 版权所有绍兴远帆软件有限公司 _________________
error Code:410 Error Message:appid and openid not match 威富通技术支持,兴业银行微信支付接入支持相关推荐
- 微信支付异常:appid and openid not match
微信支付异常:appid and openid not match 参考文章: (1)微信支付异常:appid and openid not match (2)https://www.cnblogs. ...
- Node提示:error code Z_BUF_ERROR,error error -5,error zlib:unexpected end of file
场景 npm 执行npm install 时提示: error code Z_BUF_ERROR,error error -5,error zlib:unexpected end of file 注: ...
- 如何跨公众号进行微信支付(appid and openid not match)
appid and openid not match问题 最近,运营发现在我们公司A公众号下授权登录的用户在微信里访问我们的H5官网时,无法进行支付,主要原因是付款时是B公众号的账户. 问题描述:由于 ...
- visio ERROR CODE: 0xC004F009 ERROR DESCRIPTION: The Software Licensing Service reported that the gra
用激活工具激活visio 2010时报错 SKU ID: 66cad568-c2dc-459d-93ec-2f3cb967ee34 LICENSE NAME: Office 14, OfficeVis ...
- 亲历H5移动端游戏微信支付接入及那些坑(二)——获取Openid和授权
第一篇中将一些坑说明,那么这篇开始正式进入接入步骤.具体的参数说明,我不会列出,毕竟微信官方文档都有,我想大家都看的懂,而且这接口也有可能微信会变动,所以不列出来,也是不想引起大家的误解,接入步骤只起 ...
- linux常见OS error code 值对照表
当linux指令执行结束后: 返回值为 0,则表示程序执行成功. 返回值非 0,则表示程序执行出错,其提示所代表的意义可以参照以下error code 对照表: "OS error code ...
- Flask出现Error code 400, message Bad request syntax异常
有一个小坑,所以记录下. 请求api是出现Error code 400, message Bad request syntax,然后后面有一串乱码 其实这个问题最大的原因就是请求时用的https,然后 ...
- deepdive连接mysql数据库_如何从Error Code获取Message
如何从Error Code获取Message 1.Windows下根据错误代码号打印错误消息 "displays information about Windows network mess ...
- 28 Apr 10:25:21.537 # HandleServiceCommands: system error caught. error code=1072, message = Create
安装redis报错信息: 28 Apr 10:25:21.537 # HandleServiceCommands: system error caught. error code=1072, mess ...
- No message found under code 'login.error' for locale 'zh'. 的解决办法
在使用国际化的时候,出现了No message found under code 'login.error' for locale 'zh'. 这个错误. 想到这应该是一个识别不到国际化文件的问题吧, ...
最新文章
- 【数据挖掘】基于划分的聚类方法 ( K-Means 算法简介 | K-Means 算法步骤 | K-Means 图示 )
- vsftp的被动模式
- 如何在PowerPoint中自动调整图片大小
- linux下关于密码复杂度设置
- javascript 西瓜一期 13 十六进制的数数方式与进位
- Spket在Eclipse/MyEclipse下的安装和配置支持Ext(图文教程)
- 【推荐】Zeal 离线API文档浏览器
- git只提交一张图片_几张图让你彻底弄懂git工作流(三) ——git深入
- Knockout事件传递参数的几种方式
- java valueof null,String.valueOf(null) 遇到的坑
- 提高你的迅雷速度,绝对值得一看
- SQL语句基本用法格式
- SIM900A—基础指令
- 淘宝联盟饿了么推广 API取链转链 永久有效
- iOS添加子控制器(addChildViewController)
- 使用Springboot+Feign Clients快速搭建REST客户端应用
- MaxProxy代理可以替代911s5代理吗?还有哪些软件可以使用
- vue获取地址栏参数值
- 关于微信小程序中时间预约的简单实现
- PPT修改幻灯片大小