虎皮椒个人免签支付插件,实现网站自动收款。
首先声明:写该插件的原因是正好用到了,虎皮椒开通支付功能是收费的,官方地址https://www.xunhupay.com/,先看一下介绍再考虑是否用我这款插件。
使用方法:
1、上传插件到对应目录,直接进行安装,安装完之后配置一下基础信息。
2、插件目录中有基础订单表的cmf_order.sql,进行安装后即可使用,也可以在此基础上修改。
3、需要在使用的应用目录下新建hooks.php 文件,内容如下:
return [ 'pay' => [ "type" => 2,//钩子类型(默认为应用钩子;2:应用钩子;3:模板钩子;4:后台模板钩子) "name" => '虎皮椒发起支付', // 钩子名称 "description" => "虎皮椒发起支付钩子", //钩子描述 "once" => 0 // 是否只执行一次 ], 'check_hash' => [ "type" => 2,//钩子类型(默认为应用钩子;2:应用钩子;3:模板钩子;4:后台模板钩子) "name" => '虎皮椒Hash校验', // 钩子名称 "description" => "虎皮椒异步回调Hash校验", //钩子描述 "once" => 0 // 是否只执行一次 ], ];
4、后台插件中心-钩子管理-同步钩子
5、插件列表中对插件进行设置


表单中的信息去虎皮椒官网申请即可,异步回调地址填写自己编写的,相关文档需要参看官方文档。
发起支付的简单示例,钩子的使用
// 示例参数
$params = [
'trade_order_id' => $data['trade_order_id'], // 网站生成的订单编号
'total_fee' => $data['total_fee'],// 订单金额
'title' => $data['order_title'], // 订单标题
'time' => $data['time'], // 时间戳
'nonce_str' => $data['nonce_str'] // str_shuffle(time())
];
$result = hook('pay',$params);
$xunhupay_res = json_decode($result[0],true);
if ($xunhupay_res['errcode'] == 0) {
// 返回必要的数据
$xunhupay_res['trade_order_id'] = $trade_order_id;
$xunhupay_res['price'] = $total_fee;
$this->success('success','',$xunhupay_res);
} else {
$this->error($xunhupay_res['errmsg']);
}
再写一个异步回调的例子
public function notify_url()
{
$data = $_POST;
if (!isset($data['hash']) || !isset($data['trade_order_id'])) {
echo 'failed';
exit;
}
$res = hook('check_hash',$data);
if (!$res) { // 签名验证失败
echo 'failed';
exit;
}
// 商户订单ID
$trade_order_id = $data['trade_order_id'];
if ($data['status'] == 'OD') {
$up_data = [
'transaction_id' => !empty($data['transaction_id']) ? $data['transaction_id'] : '',
'open_order_id' => !empty($data['open_order_id']) ? $data['open_order_id'] : '',
'status' => $data['status'],
'appid' => !empty($data['appid']) ? $data['appid'] : '',
'hash' => !empty($data['hash']) ? $data['hash'] : '',
];
// 更新订单数据和状态
Db::name('order')->where('trade_order_id',$trade_order_id)->data($up_data)->update();
}
echo 'success';
exit;
}
如有问题可以联系我!第一次发插件,写的比较啰嗦,就想让大家轻松用上免签的个人支付插件。
ThinkCMF模板插件交流群:550851374 ,领取阿里云1000通用代金券