PAY支付插件

微信/支付宝在线二维码、小程序支付插件

PAY支付插件

接口整合

简介

PAY插件是基于yansongda/pay -V3版本扩展包开发的微信、支付宝扫描支付、手机端H5支付、小程序支付集成功能的整合插件,安装后可快速帮您实现订单的支付处理!

支付类型

1、扫描支付

2、App应用支付

3、小程序支付

4、电脑端支付(跳转)

5、wap手机端支付

6、余额支付

并支持多租户、转账等操作;

如何使用

1、首先请安装PAY支付插件

2、然后申请支付宝/微信的支付接口权限(注:支付宝使用V3版本密钥。微信需要申请公众号认证)

3、调用前端支付接口Pay.php 实现数据的回传以及回调接口的业务处理

发起支付

1、默认我们调用plugin/pay/library/Service.php下的Order函数

   /**
     *
     * @param string $orderId 订单编号
     * @param string $title 订单标题
     * @param string $price 订单金额
     * @param string $payType 支付类型
     * @param string $method 支付方式
     * @param string $notify 异步通知地址
     * @param string $return 同步通知地址
     * @param string $auth_openid 微信公众号支付时需要传入/支付宝pos方式传入
     * @return mixed
     * @throws ContainerException
     * @throws DataNotFoundException
     * @throws DbException
     * @throws InvalidArgumentException
     * @throws ModelNotFoundException
     * @throws ServiceNotFoundException
     * @throws \Exception
     */
    public static function create(string $orderId,
                                  string $title,
                                  string $price,
                                  string $payType,
                                  string $method = 'scan',
                                  string $notify = '',
                                  string $return = '',
                                  string $auth_openid = '')
    {

分别在此传入订单号,商品标题、价格、支付类型以及支付方式($method 的详解请参考底部扩展包支付文档)

默认我们的回调函数是使用saenv函数来调用系统配置,也就是在网站后台:系统管理->基础设置->接口配置->云支付接口里面的回调函数

可能这个地址是不存在的,你改为自己的回调地址即可,如果你想用app/index/controller/Pay.php里面的回调接口,请填写为

https://www.swiftadmin.net/index/pay/wechat
https://www.swiftadmin.net/index/pay/alipay

// alipay通知
https://www.swiftadmin.net/index/pay/returns

如果你需要在自己开发的插件上对接支付插件,那么请自行编写回调函数,在调用的时候,传入$notify、$return即可(v3版本)

2、使用回调函数、最后统一交付于$this->callback函数去处理业务逻辑即可,请注意本框架不支持?后面传递type参数


    /**
     * 微信支付回调
     */
    public function wechat(): Response
    {
        $pay = Service::notifyCallback('wechat');
        $data = $pay->callback(request()->post());
        return $this->callback($data);
    }

    /**
     * 支付宝支付回调
     */
    public function alipay(): Response
    {
        $pay = Service::notifyCallback('alipay');
        $data = $pay->callback(request()->post());
        return $this->callback($data);
    }

3、详细的相关调用可以参考CMS付费内容支付插件,方便您的理解,如有好的建议欢迎加群讨论!

相关文档

支付宝:https://b.alipay.com/

微信支付 :https://pay.weixin.qq.com/

支付扩展包:https://pay.yansongda.cn/docs/v3/

  • 版本更新1
  • 常见问题

v1.0.0

2个月前

初始化版本

请移步至论坛提问
插件信息
meystack

官方原版插件,商用首选!❤️

插件标识

pay

插件分类

接口整合

下载次数

58

插件评级

版本号

1.0.0

发布日期

2022-11-28 20:48:40