[![Software license][ico-license]](LICENSE)
[![Latest development][ico-version-dev]][link-packagist]
[![Monthly installs][ico-downloads-monthly]][link-downloads]
-----
## 提醒:发现有人将我提供的支付宝测试账号乱修改资料,打广告。请大家不要加上面的任何联系方式。如果再发现,我就把测试账号注销了(怕大家被骗)
- [Payment使用文档](https://helei112g1.gitbooks.io/payment-sdk/content/)
- [Payment使用常见问题汇总](https://helei112g1.gitbooks.io/payment-sdk/content/faq.html)
----
>
Payment 需要 PHP >= 5.6以上的版本,并且同时需要PHP安装以下扩展
```
- cUR extension
- mbstring
- BC Math
- Guzzle
```
guzzle 是一个开源的php http请求lib,[项目地址](https://github.com/guzzle/guzzle)
<p align="center">
<b>成都本地内推微信公众号,有需要的拿走:</b>
<br><br>
</p>
<p align="center">
<img src="http://ol59nqr1i.bkt.clouddn.com/neituisologan.jpeg" width=350>
<img src="http://ol59nqr1i.bkt.clouddn.com/neituiqr.jpeg" width="200" >
</p>
# Payment是什么?
Payment是一个集成了 **支付宝支付**、**微信支付**、**招商支付**的PHP SDK。服务端开发者将它集成到自己的项目中,可以方便的通过相同的操作方式进行各项支付操作。不在需要开发者去单独了解支付宝、微信、招商的接口文档。以发起支付举例,开发者只需要通过:
```
try {
$str = Charge::run(支付类型, 配置文件, 支付数据);
} catch (PayException $e) {
echo $e->errorMessage();
exit;
}
```
就可以得到支付结果返回数据。关心的核心只需要正确了解如何组装**支付数据**,以及如何正确处理返回后的数据即可。
Payment支持所有的PHP项目,只要求PHP版本大于等于5.6即可。同时支持composer与手动引入两种安装方式。
# 当前支持的接口
当前sdk仅接入了支付宝支付、微信支付、招商支付(支付、退款)。中国现在电子支付的公司巨多,无法一一接入,欢迎各位发扬自己动手、丰衣足食的光荣传统,提交**PR**给我,代码贡献指南 [看这里](CONTRIBUTING.md)
## 支付宝接口
* **APP支付**(接入支付宝SDK,用户支付时唤起支付宝完成支付)
* **手机网站支付**(移动端唤起支付宝钱包或网页收银台完成支付)
* **电脑网站支付**(用户通过支付宝完成支付,交易款项即时到账)-原即时到账
* **当面付**(商户扫码首款或用户扫码付款)
* **单笔转账到支付宝**(支付宝商户向其它支付宝账户单笔转账)
* **交易支付、转账、退款查询接口**
* **交易退款接口**
* 对账单下载(待开发)
* 交易结算接口(待开发)
* 交易关闭接口(待开发)
## 微信支付接口
* **刷卡支付**(用户打开微信钱包的刷卡界面,商户扫码后提交完成交易)
* **公众号支付**(用户在微信内进入商家的H5页面,页面内调用JSSDK完成支付)
* **扫码支付**(用户打开扫一扫,扫码商户二维码完成支付)
* **APP支付**(商户APP中集成微信SDK,用户点击后跳转到微信完成支付)
* **H5支付**(用户在微信以外的浏览器请求微信支付的场景唤起微信支付)
* **小程序支付**(用户在微信小程序中使用微信支付)
* **企业付款**(企业向用户付款)
* **交易支付、转账、退款查询接口**
* **交易退款接口**
* 对账单下载(待开发)
* 现金红包(待开发)
* 代金券或立减优惠券(待开发)
## 招商支付
* **用户签约**(首次使用招商支付的用户完成绑卡操作)
* **招商一网通支付**(发起支付请求,招商支付仅此一个接口)
* **交易退款**
* **查询招商公钥**
* **交易支付、退款查询**
* 查询入账明细(待开发)
* 查询协议(待开发)
* 取消协议(待开发)
## 安装
通过composer,这是推荐的方式,可以使用composer.json 声明依赖,或者直接运行下面的命令。
```php
composer require "riverslei/payment:~4.0.0"
```
放入composer.json文件中
```php
"require": {
"riverslei/payment": "~4.0.0"
}
```
然后运行
```
composer update
```
# Change Log #
- 接入支付宝电脑网站支付、微信服务商模式支持(from v4.0.0)
- 加入招商一网通支付,加入详细的demo(from v3.1.0)
- 支付宝密钥支持字符串、文件两种方式配置,微信支持HMAC-SHA256加密(from v3.0.1)
- 支持支付宝rsa2签名 加入支付宝当面付-条码支付(条码与声波两种模式) 微信加入刷卡支付、小程序支付、H5支付 提供客户端静态调用类 不再兼容支付宝老版本接口(from v3.0.0)
- 支持支付宝新版本支付接口(from v2.7.0)
- 配置文件控制权限由使用者控制(from v2.0.0)
----
# 联系&打赏 #
感谢朋友们的支持:[支持名单](SUPPORT.md)
<p align="center">
<img src="http://ol59nqr1i.bkt.clouddn.com/mp-qr.jpg">
<p align="center">个人公众号:icanfo</p>
<p align="center">联系邮箱:dayugog@gmail.com</p>
</p>
----
<p align="center">
<img src="http://ol59nqr1i.bkt.clouddn.com/pay-qr.jpg?imageView2/2/w/500/h/400">
<p align="center">打赏扫这里,请留下尊姓大名</p>
</p>
# Contribution #
[Contribution Guide](CONTRIBUTING.md)
# License #
The code for Payment is distributed under the terms of the MIT license (see [LICENSE](LICENSE)).
[ico-license]: https://img.shields.io/github/license/helei112g/payment.svg
[ico-version-dev]: https://img.shields.io/packagist/vpre/riverslei/payment.svg
[ico-downloads-monthly]: https://img.shields.io/packagist/dm/riverslei/payment.svg?style=flat-square
[link-packagist]: https://packagist.org/packages/riverslei/payment
[link-downloads]: https://packagist.org/packages/riverslei/payment/stats