1 Star 12 Fork 5

a07061625 / pay

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

介绍

  • 微信服务端接口集成,支持公众号,小程序,企业微信,第三方开放平台
  • 支付宝接口集成,支持商户号
  • 银联支付接口集成,目前支持全渠道
  • 贝宝支付

环境

必要

  • PHP: 7.0.0+
  • redis扩展: 5.0.0+
  • yaconf扩展: 1.0.0+

可选

  • seaslog扩展: 1.9.0+

配置

环境

本项目使用了yaconf作为配置管理,redis作为缓存,seaslog作为日志工具,因此php环境需要按照这三个扩展,如需替换成其他工具,请自行参考对应工具的使用方式对照替换

php7

  1. 复制configs/php.ini的内容到服务器php环境配置文件中
  2. 修改yaconf.directory配置为服务器配置文件全路径地址
  3. 修改seaslog.default_basepath配置为服务器日志文件全路径地址

redis

cp configs/caches.ini /path/to/yaconf //yaconf地址为php环境配置中yaconf.directory配置项的值
修改caches.ini文件相关配置

微信

cp configs/wx.ini /path/to/yaconf //yaconf地址为php环境配置中yaconf.directory配置项的值
修改wx.ini文件相关配置

项目

微信

第三方开放平台

修改DesignPatterns\Singletons\WxConfigSingleton.php的getOpenCommonConfig方法,自己设置相关配置

企业号服务商

修改DesignPatterns\Singletons\WxConfigSingleton.php的getCorpProviderConfig方法,自己设置相关配置

公众号,小程序

修改SyTrait\WxConfigTrait.php的refreshAccountConfig方法,参考现有的代码替换掉

企业号

修改SyTrait\WxConfigTrait.php的refreshCorpConfig方法,参考现有的代码替换掉

支付宝

商户号

修改SyTrait\AliPayConfigTrait.php的refreshPayConfig方法,参考现有的代码替换掉

银联支付

全渠道

修改SyTrait\PayConfigTrait.php的refreshUnionChannelsConfig方法,参考现有的代码替换掉

贝宝支付

修改SyTrait\PayConfigTrait.php的refreshPayPalConfig方法,参考现有的代码替换掉

使用

要求(必须完成)

  • 在框架运行流程的初始化阶段(bootstrap),初始化autoload.php和defines.php,这两个文件的内容可根据需要自行调整
  • 日志组件如需替换成其他方式,请参考现有SyLog\Log.php文件自行替换,最好不要改函数名和参数,改内部实现即可
  • 如需修改redis缓存,请参考DesignPatterns\Singletons\RedisSingleton.php的init方法实现自行修改

支付方式

微信

说明

  • 已完成的接口,请看Wx\README.md文件

使用样例

$orderRefund = new \Wx\Payment\Way\OrderRefund('111111');
$orderRefund->setOutTradeNo('xxx');
//其他相关设置请参考类的实现
$res = $orderRefund->getDetail();
var_dump($res);

支付宝

说明

  • 已完成的接口,请看AliPay\README.md文件

使用样例

$pay = new \AliPay\Pay\PayWap('111111');
$pay->setSubject('红富士苹果');
//其他相关设置请参考类的实现
$res = \AliPay\AliPayUtilBase::sendServiceRequest($pay);
var_dump($res);

银联支付

说明

  • 已完成的接口,请看SyPay\Union\README.md文件

使用样例

$obj = new \SyPay\Union\Channels\Wap\Consume('111111', \SyPay\BaseUnion::ENV_TYPE_PRODUCT);
$obj->setOrderId('123456');;
//其他相关设置请参考类的实现
$res = \SyPay\UtilUnionChannels::sendServerRequest($obj);
var_dump($res);

贝宝支付

使用样例

$clientId = '111111';
$config = \DesignPatterns\Singletons\PayConfigSingleton::getInstance()->getPayPalConfig($clientId);
$client = \DesignPatterns\Singletons\PayConfigSingleton::getInstance()->getPayPalClient($clientId);
$request = new \SyPay\PayPal\Orders\OrdersCreateRequest();
$request->prefer('return=representation');
$request->body = [
    "intent" => "CAPTURE",
    "purchase_units" => [[
        "reference_id" => "test_ref_id1",
        "amount" => [
            "value" => "100.00",
            "currency_code" => "USD"
        ]
    ]],
    "application_context" => [
        "cancel_url" => $config->getCancelUrl(),
        "return_url" => $config->getReturnUrl()
    ]
];

try {
    // Call API with your client and get a response for your call
    $response = $client->execute($request);

    // If call returns body in response, you can get the deserialized version from the result attribute of the response
    print_r($response);
} catch (\SyPay\PayPal\Http\HttpException $ex) {
    echo $ex->statusCode;
    print_r($ex->getMessage());
}

备注

  • 如有疑问,请联系QQ: 837483732
  • 由于时间比较久,部分接口没有写上注释,可以通过在IDE中搜索相关的请求地址来查找对应的接口是否已经集成
MIT License Copyright (c) 2019 a07061625 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

微信(小程序,公众号,企业号,第三方开放平台);支付宝(商户号);银联支付(全渠道);PayPal; 展开 收起
PHP
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
PHP
1
https://gitee.com/a07061625/pay.git
git@gitee.com:a07061625/pay.git
a07061625
pay
pay
master

搜索帮助