微信支付JSAPI支付问题

JS支付脚本没有执行

调起微信支付的JS脚本为

WeixinJSBridge.invoke(
            ‘getBrandWCPayRequest‘, {
                "appId": "{{.AppId}}",      //公众号名称,由商户传入
                "timeStamp": "{{.TimeStamp}}",//时间戳,自1970年以来的秒数
                "nonceStr": "{{.NonceStr}}",//随机串
                "package": "{{.Package}}",
                "signType": "{{.SignType}}",//微信签名方式:
                "paySign": "{{.PaySign}}"   //微信签名
            },
            function (res) {
                if (res.err_msg == "get_brand_wcpay_request:ok") {
                    alert("支付成功");

                }else if (res.err_msg == "get_brand_wcpay_request:cancel")  {
                     alert("支付过程中用户取消");
                 }else{
                    //支付失败
                    alert(res.err_msg)
                 }

            }
        );

如果发生没有执行的情况,请检查

WeixinJSBridge

对象是否没有加载完成

支付域名未授权,无法发起该笔交易

出现这个问题有2种情况:

1.JSAPI支付目录在多个公众号重复设置,一个JSAPI支付目录只能在一个公众号设置

2.没有设置JSAPI支付目录

提示invalid appid错误

有2种情况会出现这个错误:

1.如果是正式的支付地址,如果支付路径不是支付目录的子路径,会产生该错误。例如支付目录设置为:www.weixinpay.com/,支付路径为www.weixinpay.com/index/pay就会报错,不能嵌套,必须是子目录,正确的支付地址应该是:www.weixinpay.com/pay

2.如果是测试的支付地址,除了第一种情况,该支付链接必须在当前支付账号对应的公众号里面打开才可以,否则也报该错误

另外

支付页面不可以在订阅号里面打开,否则报错

时间: 2024-10-10 12:25:45

微信支付JSAPI支付问题的相关文章

微信支付-JSAPI支付V3-发起一次支付请求

JSAPI支付业务流程:图片来源于:http://pay.weixin.qq.com/wiki/doc/api/index.php?chapter=7_4 准备工作:需要先在项目中引用Senparc.WeiXin.dll和Senparc.WeiXin.MP.dll,开源项目见:https://github.com/JeffreySu/WeiXinMPSDK 第一步:绑定域名 先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”. 第二步:引入JS文件 在需要调用JS接口的

微信支付-JSAPI支付V3-查询订单

接口链接 https://api.mch.weixin.qq.com/pay/orderquery 请求参数: 字段名 变量名 必填 类型 示例值 描述 公众账号ID appid 是 String(32) wx8888888888888888 微信分配的公众账号ID 商户号 mch_id 是 String(32) 1900000109 微信支付分配的商户号 微信订单号 transaction_id 否 String(32) 013467007045764 微信的订单号,优先使用 商户订单号 ou

微信支付-JSAPI支付V3-关闭订单

接口链接 https://api.mch.weixin.qq.com/pay/closeorder 请求参数 字段名 变量名 必填 类型 示例值 描述 公众账号ID appid 是 String(32) wx8888888888888888 微信分配的公众账号ID 商户号 mch_id 是 String(32) 1900000109 微信支付分配的商户号 商户订单号 out_trade_no 否 String(32) 1217752501201407033233368018 商户系统内部的订单号

微信支付-JSAPI支付V3-支付通知接口

首先我们会在配置支付请求参数的时候,配置了回调地址(notify_url),支付完成微信服务器就会将结果推送到这个地址上,我们只是需要获取那些数据就可以了,然后根据处理相关业务. 后台代码: /// <summary> /// 微信服务器支付结果通知接口 /// </summary> /// <returns></returns> public ActionResult PayNotifyUrl() { Senparc.Weixin.MP.TenPayLib

微信支付-JSAPI支付V3-下载对账单

接口链接 https://api.mch.weixin.qq.com/pay/downloadbill 是否需要证书 不需要. 请求参数 字段名 变量名 必填 类型 示例值 描述 公众账号ID appid 是 String(32) wx8888888888888888 微信分配的公众账号ID 商户号 mch_id 是 String(32) 1900000109 微信支付分配的商户号 设备号 device_info 否 String(32) 013467007045764 微信支付分配的终端设备号

asp.net微信jsapi支付

1.前台页面: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"><head runat="server">    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <meta name="viewpo

微信JSApi支付~集成到MVC环境后的最后一个坑(网上没有这种解决方案)

大叔第一人 之前写了关于微信的坑<微信JSApi支付~坑和如何填坑>,今天将微信的jsapi支付封装到了MVC环境里,当然也出现了一些新的坑,如支付参数应该是Json对象而不是Json字符串,这样也会应付引起“get_brand_wcpay_request:fail_invalid appid”这个大家都知道的异常,呵呵,解决方案网上说是“授权目录“,事实上,还有一种原因,那就是你的WeixinJSBridge.invoke方法里的参数应该是Json对象而不是字符串,这才是最重要的. 代码我们

微信公众号JSAPI支付

微信公众号JSAPI支付 一:配置参数 申请成功后,获取接口文件, 将所有文件放入项目根目录weixin下,在WxPay.ub.config.php中填入配置账户信息; 二:设置授权 开发者中心->网页服务->网页授权获取用户基本信息->修改; “授权回调页面域名修改成你的域名地址即可,须保证网页授权已获得,不然会报redirect_uri 参数错误; 三:网页授权获取用户openid js_api_call.php 请求文件中改动(所有传给微信的参数都在入口文件中接收) $out_tr

微信支付JsAPI

https://pay.weixin.qq.com/wiki/doc/api/download/WxpayAPI_php_v3.zip 下载获取微信支付demo压缩包 打开压缩包,并将其中 WxpayAPI_php_v3\example下的 jsapi.php log.php WxPay.JsApiPay.php WxPay.MicroPay.php WxPay.NativePay.php 解压缩到根目录 tellingtent/ 打开 WxPay.JsApiPay.php WxPay.Micr