聚合支付怎么搭建(第三方支付聚合接口)

简介

asbamboo/openpay 是微信支付、支付宝支付等第三方支付接口的聚合接口。它能帮助开发者,以最简单、最快捷的方式接入第三方支付渠道。

聚合支付怎么搭建(第三方支付聚合接口)(1)

如果开发者使用asbamboo/openpay提供的接口实现系统支付功能,在将来添加新的支付渠道时,他不需要修改已有的代码,他只需要安装(或者自行开发)该支付渠道的扩展。

支付渠道

asbamboo/openpay 需要配合支付渠道代码库一起使用

渠道名称支持openpay版本代码库

支付宝支付

请根据 asbamboo/openpay 的说明: https://github.com/asbamboo/openpay/blob/master/docs/install.rst 将asbamboo/openpay-alipay 应用到你的项目上。

参数配置

asbamboo\openpayAlipay\Env 类中声明的几个常量,是使用 asbamboo//openpay-alipay 必须配置的环境变量。通过asbamboo\helper\env\Env::set("变量名", "变量值") 方法进行设置。

OPENPAY_ALIPAY_GATEWAY_URI:请求支付宝接口的网关url。OPENPAY_ALIPAY_RSA_PRIVATE:生成支付宝请求参数sign,使用的秘钥文件(SHA256withRsa)。OPENPAY_ALIPAY_RSA_ALIPAY:验证支付宝响应参数sign,使用的支付宝公钥文件(SHA256withRsa)。OPENPAY_ALIPAY_APP_ID:支付宝应用app_id。

支付宝秘钥说明请查看:https://alipay.open.taobao.com/doc2/detail?treeId=200&articleId=105310&docType=1

需要在 config/openpay-config.php 中配置环境变量:

<?php use asbamboo\database\Factory; use asbamboo\helper\env\Env AS EnvHelper; use asbamboo\openpayAlipay\Env AS AlipayEnv; /*************************************************************************************************** * 环境参数配置 ***************************************************************************************************/ // 支付宝网关 EnvHelper::set(AlipayEnv::ALIPAY_GATEWAY_URI, 'https://openapi.alipaydev.com/gateway.do'); // 自己生成支付宝rsa私银文件 EnvHelper::set(AlipayEnv::ALIPAY_RSA_PRIVATE_KEY, dirname(__DIR__) . '/alipay-rsa/app_private_key.pem'); // 支付宝生成支付宝rsa公银文件 EnvHelper::set(AlipayEnv::ALIPAY_RSA_ALIPAY_KEY, dirname(__DIR__) . '/alipay-rsa/app_alipay_key.pem'); // 支付宝app id EnvHelper::set(AlipayEnv::ALIPAY_APP_ID, 'xxxxxxxxxxxxxxxxx'); /***************************************************************************************************/

使用asbamboo/openpay-alipay模块后,交易支付(trade.pay)接口将支持如下渠道(channel字段)

ALIPAY_APP:支付宝APP支付(手机app支付的服务端参数生成接口)ALIPAY_PC:支付宝PC电脑端支付ALIPAY_QRCD:支付宝扫码支付(买家手机扫商户)

微信支付v1.0

安装

请根据 asbamboo/openpay 的说明: https://github.com/asbamboo/openpay/blob/master/docs/install.rst 将asbamboo/openpay-wxpay 应用到你的项目上。

参数配置

asbamboo\openpayWxpay\Env 类中声明的几个常量,是使用 asbamboo//openpay-wxpay 必须配置的环境变量。通过asbamboo\helper\env\Env::set("变量名", "变量值") 方法进行设置。

OPENPAY_WXPAY_GATEWAY_URI:请求微信接口的网关url,(各个接口公共的那部分url)。OPENPAY_WXPAY_SIGN_KEY:生成微信请求参数sign,使用的key(https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=4_3)。OPENPAY_WXPAY_APP_ID:微信分配的公众账号ID(接口中的appid参数)。OPENPAY_WXPAY_MCH_ID:微信支付分配的商户号(接口中的mch_id参数)。

需要在 config/openpay-config.php 中配置环境变量:

<?php use asbamboo\helper\env\Env AS EnvHelper; use asbamboo\openpayWxpay\Env AS WxpayEnv; /*************************************************************************************************** * 环境参数配置 ***************************************************************************************************/ // 微信网关 EnvHelper::set(WxpayEnv::WXPAY_GATEWAY_URI, 'https://api.mch.weixin.qq.com/'); // 微信加密使用的key值 EnvHelper::set(WxpayEnv::WXPAY_SIGN_KEY, 'xxxxxxxxxxxxxxxxxxxxxxxxxx'); // 微信 appid EnvHelper::set(WxpayEnv::WXPAY_APP_ID, 'wxxxxxxxxxxxxxx'); // 微信商户号 EnvHelper::set(WxpayEnv::WXPAY_MCH_ID, '00000000000000'); /***************************************************************************************************/

使用asbamboo/openpay-wxpay模块后,交易支付(trade.pay)接口将支持如下渠道(channel字段)

WXPAY_APP:微信APP支付(手机app支付的服务端参数生成接口)WXPAY_H5:微信H5支付WXPAY_QRCD:微信扫码支付(买家手机扫商户)

如何使用

你需要通过 composer 管理项目的依赖,可以参考 asbamboo/openpay-example (这是一个简单且完整的asbamboo/openpay服务端接口程序)。

  1. 在项目根目录下创建composer.json文件,配置你的程序支持的支付渠道:
  • composer require 中添加依赖的支付渠道库
  • composer scripts 中添加 asbamboo\openpay\script\Channel::generateMappingInfo

{ ... "require": { ... "asbamboo/openpay-wxpay": "^1.0", "asbamboo/openpay-alipay": "^1.0" ... }, "scripts": { "openpay-scripts": [ "asbamboo\\openpay\\script\\Channel::generateMappingInfo" ], "post-install-cmd": [ "@openpay-scripts" ], "post-update-cmd": [ "@openpay-scripts" ] }, ... }

  1. 在项目根目录下执行composer install安装项目依赖的代码库

php composer update

  1. 安装数据库
  2. 创建web入口
  3. 运行测试
  4. 进入web跟目录运行

php -S 127.0.0.1:8000

演示

演示地址: http://demo.asbamboo.com/openpay-example/public

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页