介绍
微信服务端接口集成,支持公众号,小程序,企业微信,第三方开放平台 支付宝接口集成,支持商户号 银联支付接口集成,目前支持全渠道 贝宝支付环境
必要
PHP: 7.0.0+ redis扩展: 5.0.0+ yaconf扩展: 1.0.0+可选
seaslog扩展: 1.9.0+配置
环境
本项目使用了yaconf作为配置管理,redis作为缓存,seaslog作为日志工具,因此php环境需要按照这三个扩展,如需替换成其他工具,请自行参考对应工具的使用方式对照替换
php7
复制configs/php.ini的内容到服务器php环境配置文件中 修改yaconf.directory配置为服务器配置文件全路径地址 修改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文件相关配置
项目
微信
第三方开放平台
修改DesignPatternsSingletonsWxConfigSingleton.php的getOpenCommonConfig方法,自己设置相关配置
企业号服务商
修改DesignPatternsSingletonsWxConfigSingleton.php的getCorpProviderConfig方法,自己设置相关配置
公众号,小程序
修改SyTraitWxConfigTrait.php的refreshAccountConfig方法,参考现有的代码替换掉
企业号
修改SyTraitWxConfigTrait.php的refreshCorpConfig方法,参考现有的代码替换掉
支付宝
商户号
修改SyTraitAliPayConfigTrait.php的refreshPayConfig方法,参考现有的代码替换掉
银联支付
全渠道
修改SyTraitPayConfigTrait.php的refreshUnionChannelsConfig方法,参考现有的代码替换掉
贝宝支付
修改SyTraitPayConfigTrait.php的refreshPayPalConfig方法,参考现有的代码替换掉
使用
要求(必须完成)
在框架运行流程的初始化阶段(bootstrap),初始化autoload.php和defines.php,这两个文件的内容可根据需要自行调整 日志组件如需替换成其他方式,请参考现有SyLogLog.php文件自行替换,最好不要改函数名和参数,改内部实现即可 如需修改redis缓存,请参考DesignPatternsSingletonsRedisSingleton.php的init方法实现自行修改支付方式
微信
说明
已完成的接口,请看WxREADME.md文件使用样例
$orderRefund = new WxPaymentWayOrderRefund('111111');
$orderRefund->setOutTradeNo('xxx');
//其他相关设置请参考类的实现
$res = $orderRefund->getDetail();
var_dump($res);
支付宝
说明
已完成的接口,请看AliPayREADME.md文件使用样例
$pay = new AliPayPayPayWap('111111');
$pay->setSubject('红富士苹果');
//其他相关设置请参考类的实现
$res = AliPayAliPayUtilBase::sendServiceRequest($pay);
var_dump($res);
银联支付
说明
已完成的接口,请看SyPayUnionREADME.md文件使用样例
$obj = new SyPayUnionChannelsWapConsume('111111', SyPayBaseUnion::ENV_TYPE_PRODUCT);
$obj->setOrderId('123456');;
//其他相关设置请参考类的实现
$res = SyPayUtilUnionChannels::sendServerRequest($obj);
var_dump($res);
贝宝支付
使用样例
$clientId = '111111';
$config = DesignPatternsSingletonsPayConfigSingleton::getInstance()->getPayPalConfig($clientId);
$client = DesignPatternsSingletonsPayConfigSingleton::getInstance()->getPayPalClient($clientId);
$request = new SyPayPayPalOrdersOrdersCreateRequest();
$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 (SyPayPayPalHttpHttpException $ex) {
echo $ex->statusCode;
print_r($ex->getMessage());
}
备注
如有疑问,请联系QQ: 837483732 由于时间比较久,部分接口没有写上注释,可以通过在IDE中搜索相关的请求地址来查找对应的接口是否已经集成
版权声明:
1、该文章(资料)来源于互联网公开信息,我方只是对该内容做点评,所分享的下载地址为原作者公开地址。2、网站不提供资料下载,如需下载请到原作者页面进行下载。
3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考学习用!
4、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。