支付模块
微信,支付宝支付
更新不兼容提醒:升级模块将同时升级依赖,依赖新版本不兼容旧版本,详见下文
介绍
本模块为系统增加yansongda/pay支付依赖,并在后台提供可视化的支付宝和微信支付配置功能。
安装使用 v3
BuildAdmin >= v2.0.0
- 在后台配置好支付参数后,在后端任意位置使用
\ba\PayLib::getConfig()
即可获得组装好的参数数组。 - 发起支付、查询、退款等非常简单,请参考这里
- 我们在
app/api/controller/PayNotify.php
提供了支付回调示例。 yansongda/pay V2
并不兼容V3
,所以升级系统和本模块后,需要对支付相关进行改造。- 以下对发起支付提供了一个快速预览的示例。
php
// 支付1元
$amount = 1;
$amount = intval(bcmul($amount, 100));
$order = [
'out_trade_no' => time().'',
'description' => 'subject-测试',
'amount' => [
'total' => $amount,
],
];
$result = Pay::wechat(PayLib::getConfig())->scan($order);
var_dump($result);
安装使用 v2
BuildAdmin <= v1.1.7
- 在后台配置好支付参数后,在后端任意位置使用
\pay\PayConfig::getAliConfig()
或\pay\PayConfig::getWxConfig()
即可获得组装好的参数数组。 - 支付、查询、退款等需要参考这里,在业务代码中发起。
- 我们在
app/admin/controller/Config.php
内提供了支付发起示例。
常见问题
证书私钥/公钥路径问题?
需要你证书所在位置的绝对路径

实际项目中不建议将证书放在public
,可以在网站根目录建立文件夹,保证程序能访问到即可
回调通知配置问题?
ba
项目接口需要加?server=1
而微信不支持传参,可参考以下修改
方式一:URL
加 index.php
- 模块自带微信回调:
https://xxx.com/index.php/api/PayNotify/wechat
- 模块自带支付宝回调:
https://xxx.com/index.php/api/PayNotify/alipay

方式二:如果有多个回调通知地址,可在配置里只配置域名,可通过支付参数的notify_url
字段进行替换或拼接

php
$config = PayLib::getConfig();
$domain = $config['wechat']['default']['notify_url']; // 配置的域名
$notify_url = $domain . '/index.php/api/xxx/xxx'; // 加入index.php 拼接回调地址
$result = Pay::wechat($config)->mini([
'out_trade_no' => $order_no, //订单号
'description' => '订单支付', //订单描述
'amount' => [
'total' => $totalPrice, //支付金额
'currency' => 'CNY',
],
'payer' => [
'openid' => $openid, //支付者openid
],
'notify_url' => $notify_url, //异步通知地址
])->toArray();
更新日志
v1.0.5
修复已知问题,升级依赖- 修复支付模式类型,子商户号字段错误
- 升级
yansongda/pay
包版本
v1.0.4
修复已知问题- 修复微信平台公钥证书配置
v1.0.3
修复已知问题- 修复支付配置可能保存失败的问题
- 清理多余的跨域配置
v1.0.2
更新依赖- 更新
yansongda/pay
依赖至v3
版本 - 此版本仅提供给
>=v2.0.0
版本的BuildAdmin
- 更新
v1.0.1
lodash改为lodash-es无详细更新日志
v1.0.0
首次发布无详细更新日志

小猪
这家伙很懒,什么也没写~
模块授权
正版授权,允许商业使用
自购买起一年内免费下载和升级更新
不加密源代码,私有部署,二开方便
可复制产品,不支持七天无理由退款
禁止转售、分享等任何形式的再分发
仅 BuildAdmin 后台管理系统可以使用
模块信息
模块价格
5积分
访问次数
14055
模块标识
pay
下载次数
1219
模块分类
基础设施
上次更新
2025-03-14 22:01:21
开发者主页
-
购买送积分
-
TypeScript纯手写