Payment 支付聚合系统 v5.0.0

支付聚合系统

  • 源码大小:184KB
  • 源码语言:简体中文
  • 源码类型:国产软件
  • 源码授权:免费软件
  • 源码类别:商务商城
  • 应用平台:PHP
  • 源码官网:
  • 更新时间:2023-01-04
  • 网友评分:
360通过 腾讯通过 金山通过

情介绍

Payment是一个php版本的支付聚合第三方sdk,集成了微信支付、支付宝支付、招商一网通支付。提供统一的调用接口,方便快速接入各种支付、查询、退款、转账能力。

Payment 的目的是简化大家在对接主流第三方时需要频繁去阅读第三方文档,还经常遇到各种问题。Payment 将所有第三方的接口进行了合理的建模分类,对大家提供统一的接入入口,大家只需要关注自身业务并且支付系统设计上。

目前已经集成:支付宝、微信、招商绝大部分功能。

如何使用

安装

当前 Payment 项目仅支持 PHP version > 7.0 的版本,并且仅支持通过 composer 进行安装。

需要 PHP 安装以下扩展:

 - ext-curl
- ext-mbstring
- ext-bcmath
- package-Guzzle

composer安装方式:

直接在命令行下安装:

composer require "riverslei/payment:*"

通过项目配置文件方式安装:

"require": {
"riverslei/payment": "*"
}

项目集成

按照上面的步骤完成安装后,即可在项目中使用。

对于整个过程,提供了唯一的入口类 \Payment\Client,每一个渠道,均只介绍 APP支付 与 异步/同步通知 该如何接入。会重点说明每个请求支持的参数。

APP支付demo

$config = [
// 配置信息,各个渠道的配置模板见对应子目录
];

// 请求参数,完整参数见具体表格
$payData = [
'body' => 'test body',
'subject' => 'test subject',
'trade_no' => 'trade no',// 自己实现生成
'time_expire' => time() + 600, // 表示必须 600s 内付款
'amount' => '5.52', // 微信沙箱模式,需要金额固定为3.01
'return_param' => '123',
'client_ip' => isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : '127.0.0.1', // 客户地址
];``

// 使用
try {
$client = new \Payment\Client(\Payment\Client::WECHAT, $wxConfig);
$res = $client->pay(\Payment\Client::WX_CHANNEL_APP, $payData);
} catch (InvalidArgumentException $e) {
echo $e->getMessage();
exit;
} catch (\Payment\Exceptions\GatewayException $e) {
echo $e->getMessage();
var_dump($e->getRaw());
exit;
} catch (\Payment\Exceptions\ClassNotFoundException $e) {
echo $e->getMessage();
exit;
} catch (Exception $e) {
echo $e->getMessage();
exit;
}

异步/同步通知

// 自己实现一个类,继承该接口
class TestNotify implements \Payment\Contracts\IPayNotify
{
/**
* 处理自己的业务逻辑,如更新交易状态、保存通知数据等等
* @param string $channel 通知的渠道,如:支付宝、微信、招商
* @param string $notifyType 通知的类型,如:支付、退款
* @param string $notifyWay 通知的方式,如:异步 async,同步 sync
* @param array $notifyData 通知的数据
* @return bool
*/
public function handle(
string $channel,
string $notifyType,
string $notifyWay,
array $notifyData
) {
//var_dump($channel, $notifyType, $notifyWay, $notifyData);exit;
return true;
}
}

$config = [
// 配置信息,各个渠道的配置模板见对应子目录
];

// 实例化继承了接口的类
$callback = new TestNotify();

try {
$client = new \Payment\Client(\Payment\Client::ALIPAY, $config);
$xml = $client->notify($callback);
} catch (InvalidArgumentException $e) {
echo $e->getMessage();
exit;
} catch (\Payment\Exceptions\GatewayException $e) {
echo $e->getMessage();
exit;
} catch (\Payment\Exceptions\ClassNotFoundException $e) {
echo $e->getMessage();
exit;
} catch (Exception $e) {
echo $e->getMessage();
exit;
}

从上面的例子简单总结下,所有的支持的能力,通过 \Payment\Client 对外暴露方法;所有需要的常量也在这个类中进行了定义。其次需要一个 $config,关于config的模板,在每个渠道下面去看。最后一个传入请求的参数,完整的参数会在每个渠道中列出来,需要说明的是这些参数名字根据第三方文档部分进行了改写。在使用的时候请注意。

支付宝

配置文件模板

$config = [
'use_sandbox' => true, // 是否使用沙盒模式

'app_id' => '2016073100130857',
'sign_type' => 'RSA2', // RSA RSA2


// 支付宝公钥字符串
'ali_public_key' => '',

// 自己生成的密钥字符串
'rsa_private_key' => '',

'limit_pay' => [
//'balance',// 余额
//'moneyFund',// 余额宝
//'debitCardExpress',// 借记卡快捷
//'creditCard',//信用卡
//'creditCardExpress',// 信用卡快捷
//'creditCardCartoon',//信用卡卡通
//'credit_group',// 信用支付类型(包含信用卡卡通、信用卡快捷、花呗、花呗分期)
], // 用户不可用指定渠道支付当有多个渠道时用“,”分隔

// 与业务相关参数
'notify_url' => 'https://dayutalk.cn/notify/ali',
'return_url' => 'https://dayutalk.cn',
];

微信

对于每一个微信支持的能力,并不是所有参数都支持了,有些参数绝大多数场景并不需要用到。如果确实需要请自行对源码进行修改。

配置文件模板

$config = [
'use_sandbox' => false, // 是否使用 微信支付仿真测试系统

'app_id' => 'wxxxxxxxx', // 公众账号ID
'sub_appid' => 'wxxxxxxxx', // 公众子商户账号ID
'mch_id' => '123123123', // 商户id
'sub_mch_id' => '123123123', // 子商户id
'md5_key' => '23423423dsaddasdas', // md5 秘钥
'app_cert_pem' => 'apiclient_cert.pem',
'app_key_pem' => 'apiclient_key.pem',
'sign_type' => 'MD5', // MD5 HMAC-SHA256
'limit_pay' => [
//'no_credit',
], // 指定不能使用信用卡支付 不传入,则均可使用
'fee_type' => 'CNY', // 货币类型 当前仅支持该字段

'notify_url' => 'https://dayutalk.cn/v1/notify/wx',

'redirect_url' => 'https://dayutalk.cn/', // 如果是h5支付,可以设置该值,返回到指定页面
];

招商银行

配置文件模板

$config = [
'use_sandbox' => true, // 是否使用 招商测试系统

'branch_no' => 'xxx', // 商户分行号,4位数字
'mch_id' => 'xxxx', // 商户号,6位数字
'mer_key' => 'xxxxxx', // 秘钥16位,包含大小写字母 数字

// 招商的公钥,建议每天凌晨2:15发起查询招行公钥请求更新公钥。
'cmb_pub_key' => 'xxxxx',

'op_pwd' => 'xxxxx', // 操作员登录密码。
'sign_type' => 'SHA-256', // 签名算法,固定为“SHA-256”
'limit_pay' => 'A', // 允许支付的卡类型,默认对支付卡种不做限制,储蓄卡和信用卡均可支付 A:储蓄卡支付,即禁止信用卡支付

'notify_url' => 'https://dayutalk.cn/notify/cmb', // 支付成功的回调

'sign_notify_url' => 'https://dayutalk.cn/notify/cmb', // 成功签约结果通知地址
'sign_return_url' => 'https://dayutalk.cn', // 成功签约结果通知地址

'return_url' => 'https://dayutalk.cn', // 如果是h5支付,可以设置该值,返回到指定页面
];


载地址

下载错误?【投诉报错】

Payment 支付聚合系统 v5.0.0

      气源码

      关文章

      • BEESSHOP小程序商城 v1.3

        微信小程序商城系统,php+mysql ,Yii2框架开发,支持虚拟主机、服务器,支持本地测试。欢迎需要的朋友下载使用...

      • 7PAY支付-个人支付接口源码SDK v1.0 bulid20230718

        7支付 - 个人支付接口是一款支持小微商户、个人、公司、个体开通支付宝的接口,支持当面付等支付方式,资金由支付宝官方实时结算自动下发个人支付宝...

      • 07FLY-erp 零起飞ERP进销存管理软件 v1.2.7

        07FLYERP一套完善的ERP管理系统。实现了从采购入库、生产入库到销售出库、应收应付的完整流程。帮助解决企业发展壁垒,提高自身的核心竞争力,打造企业全程一体化管理体系...

      • 奇乐中介专业系统 v1.5.2

        奇乐中介担保交易专业版成交率高,买卖双方无需入驻,只需实名认证,即可在平台发起交易,用户粘度高。同样的商城系统如果想产生交易极其困难...

      • 极品模板微商城订单系统 v1.2.1.9

        极品模板微商城订单系统支持商品规格、订单短信提醒,订单提交限制,站外调用, 批量发货/导出,数据报表,物流轨迹、免签支付等...

      • 魔众盲盒系统 v1.5.0

        魔众盲盒系统,快速搭建在线盲盒系统。现在,“盲盒”已经深入到了各个行业,电商、化妆品、旅游、餐饮、 NFT等各个领域...

      • 大米商城开源版damishop(适合外贸) v3.9.3

        大米外贸商城系统 简称damishop 完全开源版,只需做一种语言一键开启全球133中语言自动翻译功能,欢迎需要的朋友下载使用...

      • 发卡宝-卡密寄售系统 v1.0 build0818

        发卡宝-卡密寄售系统致力于解决虚拟商品的快捷商城服务,为商户及其买家 提供,便捷、绿色、安全、快速的销售和购买体验...

      • Payment 支付聚合系统 v5.0.0

        Payment是一个php版本的支付聚合第三方sdk,集成了微信支付、支付宝支付、招商一网通支付。提供统一的调用接口,方便快速接入各种支付、查询、退款、转账能力...

      • BeikeShop跨境电商PHP商城源码 v1.3.5

        BeikeShop 一款开源好用的跨境电商系统,BeikeShop是基于 Laravel 开发的一款开源商城系统主要面向外贸/跨境电商行业提供商品管理、订单管理、会员管理、支付、物流、系统...

      载声明

      ☉ 解压密码:www.jb51.net 就是本站主域名,希望大家看清楚,[ 分享码的获取方法 ]可以参考这篇文章
      ☉ 推荐使用 [ 迅雷 ] 下载,使用 [ WinRAR v5 ] 以上版本解压本站软件。
      ☉ 如果这个软件总是不能下载的请在评论中留言,我们会尽快修复,谢谢!
      ☉ 下载本站资源,如果服务器暂不能下载请过一段时间重试!或者多试试几个下载地址
      ☉ 如果遇到什么问题,请评论留言,我们定会解决问题,谢谢大家支持!
      ☉ 本站提供的一些商业软件是供学习研究之用,如用于商业用途,请购买正版。
      ☉ 本站提供的Payment 支付聚合系统 v5.0.0资源来源互联网,版权归该下载资源的合法拥有者所有。