PHPackages                             yilu/alipay - 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. yilu/alipay

ActiveLibrary[Payment Processing](/categories/payments)

yilu/alipay
===========

支付宝SDK在Laravel5封装包。

1.0(9y ago)040MITPHPPHP &gt;=5.4.0

Since Nov 7Pushed 9y ago1 watchersCompare

[ Source](https://github.com/toplitao/Alipay)[ Packagist](https://packagist.org/packages/yilu/alipay)[ RSS](/packages/yilu-alipay/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

Alipay
======

[](#alipay)

支付宝SDK在Laravel5/Lumen封装包。

该拓展包想要达到在Laravel5/Lumen框架下，便捷使用支付宝的目的。

部分代码参考latrell/Alipay。

安装
--

[](#安装)

```
composer require yilu/alipay dev-master

```

更新你的依赖包 `composer update` 或者全新安装 `composer install`。

使用
--

[](#使用)

要使用支付宝SDK服务提供者，你必须自己注册服务提供者到Laravel/Lumen服务提供者列表中。 基本上有两种方法可以做到这一点。

### Laravel

[](#laravel)

找到 `config/app.php` 配置文件中，key为 `providers` 的数组，在数组中添加服务提供者。

```
    'providers' => [
        // ...
        'Yilu\Alipay\AlipayServiceProvider',
    ]
```

运行 `php artisan vendor:publish` 命令，发布配置文件到你的项目中。

### Lumen

[](#lumen)

在`bootstrap/app.php`里注册服务。

```
//Register Service Providers
$app->register(Yilu\Alipay\AlipayServiceProvider::class);
```

由于Lumen的`artisan`命令不支持`vendor:publish`,需要自己手动将`src/config`下的配置文件拷贝到项目的`config`目录下, 并将`config.php`改名成`yilu-alipay.php`, `mobile.php`改名成`yilu-alipay-mobile.php`, `web.php`改名成`yilu-alipay-web.php`， `batch_trans.php`改名成`yilu-alipay-batch_trans.php`.

### 说明

[](#说明)

配置文件 `config/alipay/yilu-alipay.php` 为公共配置信息文件， `config/alipay/yilu-alipay-web.php` 为Web版支付宝SDK配置， `config/alipay/yilu-alipay-mobile.php` 为手机端支付宝SDK配置, `config/alipay/yilu-alipay-batch_trans.php` 为批量付款到支付宝账户SDK配置。

例子
--

[](#例子)

### 支付申请

[](#支付申请)

#### 网页

[](#网页)

```
	// 创建支付单。
	$alipay = app('alipay.web');
	$alipay->setOutTradeNo('order_id');
	$alipay->setTotalFee('order_price');
	$alipay->setSubject('goods_name');
	$alipay->setBody('goods_description');

	$alipay->setQrPayMode('4'); //该设置为可选，添加该参数设置，支持二维码支付。

	// 跳转到支付页面。
	return redirect()->to($alipay->getPayLink());
```

#### 手机端

[](#手机端)

```
	// 创建支付单。
	$alipay = app('alipay.mobile');
	$alipay->setOutTradeNo('order_id');
	$alipay->setTotalFee('order_price');
	$alipay->setSubject('goods_name');
	$alipay->setBody('goods_description');

	// 返回签名后的支付参数给支付宝移动端的SDK。
	return $alipay->getPayPara();
```

#### 手机网站支付（Wap）

[](#手机网站支付wap)

```
	// 创建支付单。
	$alipay = app('alipay.wap');
	$alipay->setOutTradeNo('order_id');
	$alipay->setTotalFee('order_price');
	$alipay->setSubject('goods_name');
	$alipay->setBody('goods_description');

	// 返回支付链接到手机浏览器唤醒支付宝支付。
	return 'location.href = "'.$alipay->getPayLink().'";';
```

#### 批量付款到支付宝账户（开发者测试中......）

[](#批量付款到支付宝账户开发者测试中)

```
$alipay = app('alipay.batch_trans');
$a=[
	"notify_url" => '',
	"pay_date" => '20161111',
	"batch_no" => '20161111001',
	"batch_fee" => '0.01',
	"batch_num" => '1',
	"detail_data" => '12345678^收款方支付宝账号^名字^0.01^备注', //多人请用 | 隔开
];
$result = $alipay->buildRequestForm($a);
return $result;

```

### 结果通知

[](#结果通知)

#### 手机网站支付（Wap）

[](#手机网站支付wap-1)

```
	// 创建支付单。
	$alipay = app('alipay.wap');
	$alipay->setOutTradeNo('order_id');
	$alipay->setTotalFee('order_price');
	$alipay->setSubject('goods_name');
	$alipay->setBody('goods_description');

	// 返回支付链接到手机浏览器唤醒支付宝支付。
	return 'location.href = "'.$alipay->getPayLink().'";';
```

### 结果通知

[](#结果通知-1)

#### 网页

[](#网页-1)

```
	/**
	 * 异步通知
	 */
	public function webNotify()
	{
		// 验证请求。
		if (! app('alipay.web')->verify()) {
			Log::notice('Alipay notify post data verification fail.', [
				'data' => Request::instance()->getContent()
			]);
			return 'fail';
		}

		// 判断通知类型。
		switch (Input::get('trade_status')) {
			case 'TRADE_SUCCESS':
			case 'TRADE_FINISHED':
				// TODO: 支付成功，取得订单号进行其它相关操作。
				Log::debug('Alipay notify post data verification success.', [
					'out_trade_no' => Input::get('out_trade_no'),
					'trade_no' => Input::get('trade_no')
				]);
				break;
		}

		return 'success';
	}

	/**
	 * 同步通知
	 */
	public function webReturn()
	{
		// 验证请求。
		if (! app('alipay.web')->verify()) {
			Log::notice('Alipay return query data verification fail.', [
				'data' => Request::getQueryString()
			]);
			return view('alipay.fail');
		}

		// 判断通知类型。
		switch (Input::get('trade_status')) {
			case 'TRADE_SUCCESS':
			case 'TRADE_FINISHED':
				// TODO: 支付成功，取得订单号进行其它相关操作。
				Log::debug('Alipay notify get data verification success.', [
					'out_trade_no' => Input::get('out_trade_no'),
					'trade_no' => Input::get('trade_no')
				]);
				break;
		}

		return view('alipay.success');
	}
```

#### 手机端

[](#手机端-1)

```
	/**
	 * 支付宝异步通知
	 */
	public function alipayNotify()
	{
		// 验证请求。
		if (! app('alipay.mobile')->verify()) {
			Log::notice('Alipay notify post data verification fail.', [
				'data' => Request::instance()->getContent()
			]);
			return 'fail';
		}

		// 判断通知类型。
		switch (Input::get('trade_status')) {
			case 'TRADE_SUCCESS':
			case 'TRADE_FINISHED':
				// TODO: 支付成功，取得订单号进行其它相关操作。
				Log::debug('Alipay notify get data verification success.', [
					'out_trade_no' => Input::get('out_trade_no'),
					'trade_no' => Input::get('trade_no')
				]);
				break;
		}

		return 'success';
	}
```

###  Health Score

26

—

LowBetter than 41% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

3517d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/58b1fd636aef4a2da4b3074519e7f94e09b7a7eac59f4229b6a842946d8abb25?d=identicon)[toplitao](/maintainers/toplitao)

---

Top Contributors

[![toplitao](https://avatars.githubusercontent.com/u/20471143?v=4)](https://github.com/toplitao "toplitao (8 commits)")

---

Tags

laravellaravel 5l5alipayAlipay SDK

### Embed Badge

![Health badge](/badges/yilu-alipay/health.svg)

```
[![Health](https://phpackages.com/badges/yilu-alipay/health.svg)](https://phpackages.com/packages/yilu-alipay)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[latrell/alipay

支付宝SDK在Laravel5封装包。

40349.2k](/packages/latrell-alipay)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k14.1M122](/packages/laravel-pulse)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9742.3M121](/packages/roots-acorn)[propaganistas/laravel-disposable-email

Disposable email validator

6012.9M7](/packages/propaganistas-laravel-disposable-email)[sebdesign/laravel-viva-payments

A Laravel package for integrating the Viva Payments gateway

4849.3k](/packages/sebdesign-laravel-viva-payments)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
