EasyWeChat实现微信真实支付操作

如有不了解请参考官方文档

https://easywechat.com/4.x/installation.html#%E7%8E%AF%E5%A2%83%E8%A6%81%E6%B1%82icon-default.png?t=M4ADhttps://easywechat.com/4.x/installation.html#%E7%8E%AF%E5%A2%83%E8%A6%81%E6%B1%82

进行 composer 安装操作(根据PHP版本安装合适的应用)

composer require overtrue/wechat:~4.0 -vvv

代码展示

要先授权登录后获取到 openid 才可以进行微信支付操作

 微信授权登录教程链接地址

https://blog.csdn.net/Xian_Hu/article/details/122840639?spm=1001.2014.3001.5502icon-default.png?t=M4ADhttps://blog.csdn.net/Xian_Hu/article/details/122840639?spm=1001.2014.3001.5502

public function pay($request, $adminUser)
    {

        //接收传递过来的openid
        $openid = $request->all('openid');
        $config = [
            // 必要配置
            'app_id'             => 'wxa3bb197aff0a4e65',  //用户APPID
            'mch_id'             => '1999091602', //商品开发号
            'key'                => 'fd583d34f526927fb4950pp515dc9b',   // API v2 密钥 (注意: 是v2密钥 是v2密钥 是v2密钥)
            'cert_path'          => 'path/to/your/cert.pem', // XXX: 绝对路径!!!!
            'key_path'           => 'path/to/your/key',      // XXX: 绝对路径!!!!
            'notify_url'         => '默认的订单回调地址',
        ];

        $payment = Factory::payment($config);
        
        $result = $payment->order->unify([
            'body'         => '仙狐',//订单名称
            'out_trade_no' => '20220530961533012',//订单号
            'trade_type'   => 'JSAPI',  // 必须为JSAPI
            'openid'       => $openid['openid'], // 这里的openid为付款人的openid
            'total_fee'    => 1, // 总价
        ]);

        // 如果成功生成统一下单的订单,那么进行二次签名
        if ($result['return_code'] === 'SUCCESS') {
            // 二次签名的参数必须与下面相同
            $params = [
                'appId'     => 'wxa3bb197aff0a4e65',
                'timeStamp' => time(),
                'nonceStr'  => $result['nonce_str'],
                'package'   => 'prepay_id=' . $result['prepay_id'],
                'signType'  => 'MD5',
            ];

            // config('wechat.payment.default.key')为商户的key
            $params['paySign'] = generate_sign($params, 'ewq321yui123duxq018xq12341skqsc1');

            return $params;
        } else {
            return $result;
        }

    }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值