PHPackages                             mzsongyan/pay - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Payment Processing](/categories/payments)
4. /
5. mzsongyan/pay

ActiveLibrary[Payment Processing](/categories/payments)

mzsongyan/pay
=============

专注 Alipay 和 WeChat 的支付扩展包

0174PHP

Since Jan 29Pushed 3y ago1 watchersCompare

[ Source](https://github.com/SyanH/pay)[ Packagist](https://packagist.org/packages/mzsongyan/pay)[ RSS](/packages/mzsongyan-pay/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Pay
===

[](#pay)

[![Scrutinizer Code Quality](https://camo.githubusercontent.com/d961693ad843215404145f5498444337e7f2615761e34a29ec8d47260e833724/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f79616e736f6e6764612f7061792f6261646765732f7175616c6974792d73636f72652e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/yansongda/pay/?branch=master)[![Build Status](https://camo.githubusercontent.com/989773e46bb62a400b7ce38e3349d2e0be5572e6aea064d3813d35b110da3946/68747470733a2f2f7363727574696e697a65722d63692e636f6d2f672f79616e736f6e6764612f7061792f6261646765732f6275696c642e706e673f623d6d6173746572)](https://scrutinizer-ci.com/g/yansongda/pay/build-status/master)[![Latest Stable Version](https://camo.githubusercontent.com/74107b02dd7e23ec93a9cb953c4587619443a466ea320e4d85f2e2f403969f20/68747470733a2f2f706f7365722e707567782e6f72672f79616e736f6e6764612f7061792f762f737461626c65)](https://packagist.org/packages/yansongda/pay)[![Total Downloads](https://camo.githubusercontent.com/59c752cf7390481a9f0e2f264980a3579d8e2c7fb92b0acd43cb2d8fc8ab0a56/68747470733a2f2f706f7365722e707567782e6f72672f79616e736f6e6764612f7061792f646f776e6c6f616473)](https://packagist.org/packages/yansongda/pay)[![Latest Unstable Version](https://camo.githubusercontent.com/6f2ac4108a9105811c4a80f14959b75e9055a66ed6ebfb194b8f82ab531affad/68747470733a2f2f706f7365722e707567782e6f72672f79616e736f6e6764612f7061792f762f756e737461626c65)](https://packagist.org/packages/yansongda/pay)[![License](https://camo.githubusercontent.com/3e43e32e81e72fda1fb9b451a79d12d72503c76b737b12068e947ede50f1f1f8/68747470733a2f2f706f7365722e707567782e6f72672f79616e736f6e6764612f7061792f6c6963656e7365)](https://packagist.org/packages/yansongda/pay)

该文档为 v2.x 版本，如果您想找 v1.x 版本文档，请点击

**注意：v1.x 与 v2.x 版本不兼容**

开发了多次支付宝与微信支付后，很自然产生一种反感，惰性又来了，想在网上找相关的轮子，可是一直没有找到一款自己觉得逞心如意的，要么使用起来太难理解，要么文件结构太杂乱，只有自己撸起袖子干了。

**！！请先熟悉 支付宝/微信 说明文档！！请具有基本的 debug 能力！！**

欢迎 Star，欢迎 PR！

laravel 扩展包请 [传送至这里](https://github.com/yansongda/laravel-pay)yii 扩展包请 [传送至这里](https://github.com/guanguans/yii-pay)

QQ交流群：690027516

特点
--

[](#特点)

- 丰富的事件系统
- 命名不那么乱七八糟
- 隐藏开发者不需要关注的细节
- 根据支付宝、微信最新 API 开发而成
- 高度抽象的类，免去各种拼json与xml的痛苦
- 符合 PSR 标准，你可以各种方便的与你的框架集成
- 文件结构清晰易理解，可以随心所欲添加本项目中没有的支付网关
- 方法使用更优雅，不必再去研究那些奇怪的的方法名或者类名是做啥用的

运行环境
----

[](#运行环境)

- PHP 7.0+ (v2.8.0 开始 &gt;= 7.1.3)
- composer

> php5 请使用 v1.x 版本

支持的支付方法
-------

[](#支持的支付方法)

### 1、支付宝

[](#1支付宝)

- 电脑支付
- 手机网站支付
- APP 支付
- 刷卡支付
- 扫码支付
- 账户转账
- 小程序支付

method描述web电脑支付wap手机网站支付appAPP 支付pos刷卡支付scan扫码支付transfer帐户转账mini小程序支付### 2、微信

[](#2微信)

- 公众号支付
- 小程序支付
- H5 支付
- 扫码支付
- 刷卡支付
- APP 支付
- 企业付款
- 普通红包
- 分裂红包

method描述mp公众号支付miniapp小程序支付wapH5 支付scan扫码支付pos刷卡支付appAPP 支付transfer企业付款redpack普通红包groupRedpack分裂红包支持的方法
-----

[](#支持的方法)

所有网关均支持以下方法

- find(array/string $order)
    说明：查找订单接口
    参数：`$order` 为 `string` 类型时，请传入系统订单号，对应支付宝或微信中的 `out_trade_no`； `array` 类型时，参数请参考支付宝或微信官方文档。
    返回：查询成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据。
    异常：`GatewayException` 或 `InvalidSignException`
- refund(array $order)
    说明：退款接口
    参数：`$order` 数组格式，退款参数。
    返回：退款成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据。
    异常：`GatewayException` 或 `InvalidSignException`
- cancel(array/string $order)
    说明：取消订单接口
    参数：`$order` 为 `string` 类型时，请传入系统订单号，对应支付宝或微信中的 `out_trade_no`； `array` 类型时，参数请参考支付宝或微信官方文档。
    返回：取消成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据。
    异常：`GatewayException` 或 `InvalidSignException`
- close(array/string $order)
    说明：关闭订单接口
    参数：`$order` 为 `string` 类型时，请传入系统订单号，对应支付宝或微信中的 `out_trade_no`； `array` 类型时，参数请参考支付宝或微信官方文档。
    返回：关闭成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据。
    异常：`GatewayException` 或 `InvalidSignException`
- verify()
    说明：验证服务器返回消息是否合法
    返回：验证成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据。
    异常：`GatewayException` 或 `InvalidSignException`
- PAYMETHOD(array $order)
    说明：进行支付；具体支付方法名称请参考「支持的支付方法」一栏
    返回：成功，返回 `Yansongda\Supports\Collection` 实例，可以通过 `$colletion->xxx` 或 `$collection['xxx']` 访问服务器返回的数据或 `Symfony\Component\HttpFoundation\Response` 实例，可通过 `return $response->send()`(laravel 框架中直接 `return $response`) 返回，具体请参考文档。
    异常：`GatewayException` 或 `InvalidSignException`

安装
--

[](#安装)

```
composer require yansongda/pay -vvv
```

使用说明
----

[](#使用说明)

### 支付宝

[](#支付宝)

```
