微信支付报错:统一下单和拉起支付的appid不一致(原创)

微信支付报错:统一下单和拉起支付的appid不一致

错误码:-2

提示参考:

参考统一下单的API

 (谦信君原创,转载请注明来源)

原因排查:

我们做的是APP微信支付

客户端向我服务端发请求,获取预支付ID信息,服务端这边在这里请求的是微信的统一下单的接口API

然后我的服务端会给客户端返回一个数组,供客户端请求调用微信的调起支付接口API

问题就出在这个数组,由于微信支付对大小写是非常敏感的,所以里面不符合接口定义参数的写法就容易导致错误,

下面的appid,  timestamp都应该是小写才对

    public function get_prepay_package($prepay_id) {
        $data = array();
        //微信开放平台审核通过的应用APPID
        $data["appId"] = $this->_config["appid"];
        //微信支付分配的商户号
        $data["partnerid"] = $this->_config["mch_id"];
        //预支付交易会话ID
        $data["prepayid"] = $prepay_id;
        //暂填写固定值Sign=WXPay
        $data["package"] = "WXPay";
        //随机字符串,不长于32位
        $data["noncestr"] = $this->get_nonce_string();
        //时间戳
        $data["timeStamp"] = time();
        $data["sign"]   = $this->sign($data);
        return $data;
    }

 

微信支付接口参数定义:

https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_12&index=2

 

  

posted @ 2017-05-25 16:05  谦信君  阅读(15292)  评论(0编辑  收藏  举报