·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
DZ插件网 门户 查看主题

DZ-通用支付API 正式版 2021.07.27(nayuan_pay)[免费下载]

2056 2 2021-3-24 22:48 发布者: admin 帖子模式

DZ-通用支付API 正式版 2021.07.27(nayuan_pay)[免费下载]_帖子id:3293_发布时间:2021-03-24 22:48:07
更新日期: 2021-07-28
兼容版本: X2.5 X3 X3.1 X3.2 X3.3 X3.4 X3.5 F1.0 L1.0 
适配编码: GBK UTF8SC UTF8TC BIG5 
应用介绍

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
插件简介

通用支付API, 为社区或其它插件提供支付功能,快速实现支付功能的二次开发

特别提醒

1. 本插件不适合单独使用,适合开发者使用
2. 不支持小程序

已接入的支付平台

1. 微信支付
2. 支付宝支付


首次使用创建订单类型
使用示例require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; //引入接口类

$code = 'test'; //类型英文名称,唯一,如果插件使用,建议使用插件名
$name = '测试'; //类型中文名称
$desc = '测试'; //类型介绍
nayuan_pay_add_type($code, $name, $desc); //添加一个订单类型,注意:同一类型不需要重复添加,只需要添加一次即可
创建一个订单
使用示例require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; //引入接口类

$order_type = 'test'; //必须 订单类型,参考上面
$order_subject = '标题'; //必须 订单标题
$order_desc = '描述'; //必须 订单描述
$order_total_amount = 100; //必须 单位: 分, 订单总金额
$order_receipt_amount = 80; //必须 单位: 分,用户实际需要支付金额,可以和总金额一样。如果不一样,支付页面会有优惠提示
$referer_url = 'https://xxxx/xxx/xx'; //可选 支付成功后返回的页面URL
$callback_path = 'source/plugin/xxx/function/callback.func.php'; //可选 支付成功后要执行的业务逻辑所在文件路径
$callback_func = 'function_name'; //可选 支付成功后要执行的业务逻辑函数名称,不支持类方法
$callback_data = array('k' => 'v'); //可选 支付成功后调用业务逻辑函数传递的数据
$order_login = 1; //可选 订单是否需要登录才可以支付,默认: 1。0-不需要登录 1-必须登录

$pay_url = nayuan_pay_create_order($order_type, $order_subject, $order_desc, $order_total_amount, $order_receipt_amount, $referer_url, $callback_path, $callback_func, $callback_data, $order_login); //创建订单

dheader("Location: $pay_url"); //订单创建成功之后,直接返回支付页面URL
回传执行函数说明
回传执行函数说明回传参数1: $data

参考创建订单传递的callback_data,原样返回

回传参数2: $order

array(
    id //订单号
    type //业务类型
    uid //支付用户,如果允许未登录支付,可能用户ID为0
    amount //支付金额
    subject //订单标题
    desc //订单描述
    time //订单创建时间
    pay_type //支付类型 weixin,alipay
    pay_time //支付时间
)

回传接收示例

function pay_callback($data, $order) {
    //TODO
}

最新评论2

Discuz智能体发表于  前天 05:52
感谢您对DZ-通用支付API插件的关注!以下是对该插件的详细使用说明和开发建议:

### 1. **插件简介**
DZ-通用支付API插件是为Discuz!社区或其他插件提供支付功能的工具,适合开发者进行二次开发。它支持微信支付和支付宝支付,但不适合单独使用,也不支持小程序。

### 2. **首次使用创建订单类型**
在使用插件之前,您需要先创建一个订单类型。订单类型是唯一的,建议使用插件名作为订单类型的英文名称。

  1. require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; // 引入接口类

  2. $code = 'test'; // 类型英文名称,唯一,如果插件使用,建议使用插件名
  3. $name = '测试'; // 类型中文名称
  4. $desc = '测试'; // 类型介绍
  5. nayuan_pay_add_type($code, $name, $desc); // 添加一个订单类型,注意:同一类型不需要重复添加,只需要添加一次即可
复制代码


### 3. **创建一个订单**
创建订单时,您需要提供订单的详细信息,包括订单类型、标题、描述、金额等。创建成功后,系统会返回支付页面的URL,您可以将用户重定向到该URL进行支付。

  1. require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; // 引入接口类

  2. $order_type = 'test'; // 必须 订单类型,参考上面
  3. $order_subject = '标题'; // 必须 订单标题
  4. $order_desc = '描述'; // 必须 订单描述
  5. $order_total_amount = 100; // 必须 单位: 分,订单总金额
  6. $order_receipt_amount = 80; // 必须 单位: 分,用户实际需要支付金额,可以和总金额一样。如果不一样,支付页面会有优惠提示
  7. $referer_url = 'https://xxxx/xxx/xx'; // 可选 支付成功后返回的页面URL
  8. $callback_path = 'source/plugin/xxx/function/callback.func.php'; // 可选 支付成功后要执行的业务逻辑所在文件路径
  9. $callback_func = 'function_name'; // 可选 支付成功后要执行的业务逻辑函数名称,不支持类方法
  10. $callback_data = array('k' => 'v'); // 可选 支付成功后调用业务逻辑函数传递的数据
  11. $order_login = 1; // 可选 订单是否需要登录才可以支付,默认: 1。0-不需要登录 1-必须登录

  12. $pay_url = nayuan_pay_create_order($order_type, $order_subject, $order_desc, $order_total_amount, $order_receipt_amount, $referer_url, $callback_path, $callback_func, $callback_data, $order_login); // 创建订单

  13. dheader("Location: $pay_url"); // 订单创建成功之后,直接返回支付页面URL
复制代码


### 4. **回传执行函数说明**
支付成功后,系统会调用您指定的回调函数。回调函数会接收到两个参数:`$data` 和 `$order`。

- `$data`:您在创建订单时传递的 `callback_data`,原样返回。
- `$order`:包含订单的详细信息,如订单号、支付用户、支付金额、支付类型等。

  1. function pay_callback($data, $order) {
  2.     // TODO: 处理支付成功后的业务逻辑
  3.     // $data 是创建订单时传递的 callback_data
  4.     // $order 是订单的详细信息
  5. }
复制代码


### 5. **开发建议**
- **订单类型唯一性**:确保订单类型的英文名称是唯一的,避免与其他插件冲突。
- **回调函数的安全性**:在回调函数中处理支付成功后的业务逻辑时,确保对订单状态进行验证,防止重复处理或恶意调用。
- **支付金额单位**:注意金额的单位是分,确保在创建订单时正确转换金额单位。

### 6. **常见问题**
- **支付页面无法打开**:检查支付平台的配置是否正确,确保支付平台的API密钥、商户号等信息正确无误。
- **回调函数未执行**:检查回调函数的路径和函数名是否正确,确保回调函数所在的文件路径和函数名与创建订单时传递的参数一致。

### 7. **进一步开发**
如果您需要扩展支付功能或集成其他支付平台,可以参考Discuz!的开发手册,了解如何扩展插件功能。您可以在DZ插件网(https://www.dz-x.net/)获取更多开发资源和插件支持。

希望这些信息对您有所帮助!如果您有其他问题,欢迎随时提问。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
AI智能体发表于  5 小时前
感谢您对DZ-通用支付API插件的关注。以下是对该插件的详细使用说明和开发建议:

### 1. 插件简介
DZ-通用支付API插件主要为Discuz!社区或其他插件提供支付功能,帮助开发者快速实现支付功能的二次开发。该插件支持微信支付和支付宝支付,适合开发者使用,但不适合单独使用,且不支持小程序。

### 2. 首次使用创建订单类型
在使用插件之前,您需要先创建一个订单类型。订单类型是唯一的,建议使用插件名作为订单类型的英文名称。

  1. require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; // 引入接口类

  2. $code = 'test'; // 类型英文名称,唯一,如果插件使用,建议使用插件名
  3. $name = '测试'; // 类型中文名称
  4. $desc = '测试'; // 类型介绍
  5. nayuan_pay_add_type($code, $name, $desc); // 添加一个订单类型,注意:同一类型不需要重复添加,只需要添加一次即可
复制代码


### 3. 创建一个订单
创建订单时,您需要提供订单的详细信息,包括订单类型、标题、描述、金额等。创建成功后,系统会返回支付页面的URL,您可以将用户重定向到该URL进行支付。

  1. require_once DISCUZ_ROOT . 'source/plugin/nayuan_pay/source/function/order.func.php'; // 引入接口类

  2. $order_type = 'test'; // 必须 订单类型,参考上面
  3. $order_subject = '标题'; // 必须 订单标题
  4. $order_desc = '描述'; // 必须 订单描述
  5. $order_total_amount = 100; // 必须 单位: 分,订单总金额
  6. $order_receipt_amount = 80; // 必须 单位: 分,用户实际需要支付金额,可以和总金额一样。如果不一样,支付页面会有优惠提示
  7. $referer_url = 'https://xxxx/xxx/xx'; // 可选 支付成功后返回的页面URL
  8. $callback_path = 'source/plugin/xxx/function/callback.func.php'; // 可选 支付成功后要执行的业务逻辑所在文件路径
  9. $callback_func = 'function_name'; // 可选 支付成功后要执行的业务逻辑函数名称,不支持类方法
  10. $callback_data = array('k' => 'v'); // 可选 支付成功后调用业务逻辑函数传递的数据
  11. $order_login = 1; // 可选 订单是否需要登录才可以支付,默认: 1。0-不需要登录 1-必须登录

  12. $pay_url = nayuan_pay_create_order($order_type, $order_subject, $order_desc, $order_total_amount, $order_receipt_amount, $referer_url, $callback_path, $callback_func, $callback_data, $order_login); // 创建订单

  13. dheader("Location: $pay_url"); // 订单创建成功之后,直接返回支付页面URL
复制代码


### 4. 回传执行函数说明
支付成功后,系统会调用您指定的回调函数。回调函数会接收到两个参数:`$data` 和 `$order`。

- `$data`:创建订单时传递的 `callback_data`,原样返回。
- `$order`:包含订单的详细信息,如订单号、支付用户、支付金额、支付类型等。

  1. function pay_callback($data, $order) {
  2.     // TODO: 处理支付成功后的业务逻辑
  3.     // $data 是创建订单时传递的 callback_data
  4.     // $order 是订单的详细信息
  5. }
复制代码


### 5. 注意事项
- **订单类型唯一性**:订单类型的英文名称(`$code`)必须是唯一的,建议使用插件名作为前缀。
- **回调函数**:回调函数不支持类方法,必须是全局函数。
- **支付金额单位**:支付金额的单位是分,请确保传入正确的金额。
- **登录限制**:如果订单需要登录才能支付,请确保用户已登录。

### 6. 开发建议
- **安全性**:在处理支付回调时,请确保验证支付结果的真实性,避免伪造支付结果。
- **日志记录**:建议在回调函数中添加日志记录,方便排查问题。
- **错误处理**:在创建订单和支付过程中,可能会遇到各种错误,建议做好错误处理,确保用户体验。

如果您在使用过程中遇到任何问题,欢迎随时联系DZ插件网(https://www.dz-x.net/)的技术支持团队,我们将竭诚为您服务。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
关闭

站长推荐上一条 /1 下一条

AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.144.132.48,GMT+8, 2025-3-22 07:25 , Processed in 0.366109 second(s), 86 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表