欢迎来到恵省掌薅-在线能赚钱的购物、学习商城,全新购物体验
登录   |    免费注册   |   

恵省掌薅-在线能赚钱的购物、学习商城,全新购物体验

热门薅搜: 源码   软件   办公   工程   恵薅   恵省掌薅   网站建设   
商家入驻

易支付系统安装与搭建

  • 时间:2008-04-06 12:13:00 作者: znjz 阅读:133

服务器环境

推荐使用宝塔、AMH、XP等面板一键部署服务器环境。

  • PHP版本:>=7.1,推荐7.4或8.0
  • MySQL版本:5.6或5.7

伪静态配置

直接上传后访问即可完成安装!创建好网站之后,需要配置伪静态才能正常发起支付。以下分别是Nginx、Apache、IIS服务器的伪静态配置方法:

Nginx

如果是nginx,伪静态规则在源码包根目录的nginx.txt文件里面。
将nginx.txt里面的全部内容复制,粘贴到宝塔伪静态配置的输入框里面,点保存即可。

Apache

如果是Apache,伪静态规则在.htaccess里面,默认配置好的,不需要单独修改。

IIS

如果是IIS,伪静态规则在IIS.txt里面,复制粘贴到宝塔伪静态配置的输入框里面,点保存即可。

配置好定时任务之后,才可以实现每日0点定时生成结算列表与资金统计。

在后台找到计划任务配置,如下图所示



将 订单统计任务 与 自动生成结算任务 的网址添加到宝塔的《计划任务》功能中,具体参数如下图所示。



订单异步通知重试任务 不是必须的,可以不用添加!

网站信息配置

  • 在 系统设置->网站信息配置 里面,可以配置网站名称、SEO信息、客服QQ、注册开关、测试支付开关、验证码开关等。
  • 如果开启注册付费测试支付,需要事先在用户列表,手动添加一个用于自己收款的商户!

支付与结算配置

  • 在 系统设置->支付与结算配置 里面,可以配置支付最大最小金额、商品屏蔽关键词、支付IP黑名单、支付账号黑名单、结算开关、结算规则等。
  • 支付账号黑名单的拦截只支持支付宝JS支付与微信公众号支付方式,支付宝黑名单填写2088开头的UserId,微信黑名单填写用户在公众号对应的Openid。
  • 结算总开关默认开启自动结算,结算周期选T+1,这种情况下在每日0点如果定时任务正常执行,则会自动生成结算列表。管理员可以在第二天进行结算,实现资金T+1到账。
  • 结算周期如果选择T+0并且开启手动结算,则用户中心会显示手动提现菜单,用户可以实时提现全部的商户余额(不推荐此种模式)。

支付方式:

支付方式用于定义发起支付的调用值(在前台开发文档里面显示)与支付方式名称。目前系统自带6种支付方式,它们的名称和调用值分别是支付宝(alipay)、微信支付(wxpay)、QQ钱包(qqpay)、云闪付(bank)、京东支付(jdpay)、PayPal(paypal)

支付插件:

支付插件是对接某个支付平台的具体实现,可以自行开发定制。一个支付插件可以包含多种支付方式,例如《支付宝官方支付》插件只有1种支付方式alipay,《QQ钱包官方支付》插件只有1种支付方式qqpay,《威富通RSA》插件包含5种支付方式alipay、wxpay、qqpay、bank、jdpay

支付通道:

支付通道需要管理员手动添加,每个支付通道都对应1个支付方式和1个支付插件,可以配置支付密钥与单独的费率。

添加支付通道

  • 在支付通道列表点击添加,分别需要选择支付方式与支付插件,通道模式必须选“平台代收(默认)”,否则无法正常发起支付以及无法给用户正常增加余额!
  • 分成比例是填写的给商户分成比例,如果填写95即为用户支付100元到账商户余额95元,实际支付费率是5%
  • 分成比例有2个地方可以配置,其中一个是支付通道信息这里,另外一个是用户组信息那里。分成比例优先级:用户组>支付通道
  • 部分支付插件如果不知道申请地址的,可以查看支付插件列表,上面有对应链接。

支付平台推荐

如果你有营业执照(企业、个体),推荐申请以下支付平台:

  • 支付宝官方支付申请地址,需申请电脑网站支付+手机网站支付(如果条件不足可以申请当面付,但是当面付稳定性不如电脑/手机网站支付)。支付插件使用“支付宝官方支付”。
  • 微信官方支付申请地址,同时还需要有已认证的服务号或小程序,NATIVE支付=扫码支付,JSAPI支付=公众号支付和小程序支付。扫码支付只能在电脑或手机浏览器支付;H5支付只能在手机浏览器支付;公众号支付和小程序支付均可实现电脑+手机浏览器+微信内浏览器支付。支付插件使用“微信官方支付”。
  • QQ钱包官方支付申请地址,目前不开放申请,可在金易汇申请。支付插件使用“QQ钱包官方支付”。
  • 金易汇申请地址,只有QQ钱包
  • 哆啦宝申请地址
  • 汇商通盈申请地址,支付插件使用“银联前置”
  • 汇付申请地址,支付插件使用“adapay聚合支付”
  • 汇付斗拱平台申请地址
  • 汇付宝申请地址
  • 掌易收申请地址
  • 新生支付申请地址
  • 银盛支付申请地址
  • 首信易支付申请地址
  • 银联商务申请地址
  • 通联支付申请地址
  • 一体支付申请地址
  • 联动优势申请地址
  • 富友支付申请地址
  • 杉德支付申请地址
  • 易票联支付申请地址
  • 付呗聚合支付申请地址
  • 悠久支付申请地址,可联系QQ2850443411进件,支付插件使用“知宇支付”

如果你没有营业执照,可申请以下支付平台(有营业执照也可以申请):

新版支付宝接口RSA密钥配置教程

第一步:申请支付宝官方支付接口

首先需要申请支付宝官方支付接口,如果没申请接口,即使是配置上密钥也是无法使用的。

申请地址是:https://b.alipay.com/signing/productSetV2.htm


第二步:下载“支付宝开放平台开发助手”
支付宝开放平台开发助手下载地址:https://ideservice.alipay.com/ide/getPluginUrl.htm?clientType=assistant&platform=win&channelType=WEB
安装完后直接运行即可。


第三步:点击【生成密钥】(加密算法都为默认,不用改),如下图所示

QQ截图20200402194652.png

将【应用私钥】填写到网站后台相应的配置项内。


第四步: 进入支付宝开放平台密钥页面,可以看到APPID,将APPID填写到网站后台。

然后点击【接口加签方式】后面的【设置】

QQ截图20200402195203.png


接口加签模式选择“公钥”,然后将刚才在软件里面生成的【应用公钥】填写到下方输入框内:QQ截图20200402195430.png


保存设置之后,会出现一个【支付宝公钥】,将支付宝公钥复制后填写到网站后台。

QQ截图20200402195831.png

至此,支付宝新版接口的密钥已经配置完毕了。

要注意的是【支付宝公钥】和【应用公钥】是不一样的,千万不能搞混了!另外【应用公钥】和【应用私钥】是一一对应的,也就是填写到网站后台的【应用私钥】和提交到支付宝那边的【应用公钥】是同一对才可以!

如何从私钥证书中提取私钥

部分支付通道要用到pem格式的私钥文件,但是支付平台给的是带密码的私钥证书(jks、pfx或p12)格式。下面介绍2种从私钥证书中提取私钥的方法。

使电脑软件KeyStore Explorer

1、下载KeyStore Explorer软件,选Windows的第一个就可以。下载后安装。
2、打开KeyStore Explorer,点击打开按钮,选择支付平台给你的pfx或p12格式的证书文件。

3、输入该私钥证书的密码,成功进入后如下所示

4、在私钥证书上点右键->Export->Export Private Key

5、密码还是输入和刚才一样的密码,导出类型选第一个

6、注意上面的Encrypt一定要取消勾选,下面选择导出的目录,然后点Export

7、导出成功,在导出目录就可以看到pkcs8格式的私钥,改后缀名为pem即可使用。

企业付款

企业付款是用于批量转账的,包含支付宝、微信、QQ的转账接口,都需要企业资质才能申请到。

支付宝转账接口

需要申请《转账到支付宝账户》,申请地址:https://b.alipay.com/signing/productDetailV2.htm?productId=I1012000291000001000
添加支付插件为“支付宝官方支付”的支付通道,选中即可使用。

微信企业付款接口

需要先在微信支付后台开通企业付款功能。
添加支付插件为“微信官方支付”的支付通道,选中即可使用。
结算账号必须都为Openid,用户前台可以扫码自助获取。

QQ钱包企业付款接口

需要先在QQ钱包支付后台开通企业付款功能。
添加支付插件为“QQ钱包官方支付”的支付通道,密钥配置处需填写操作员ID和操作员密码,即为登录QQ商户平台的账号密码。

批量转账

如果没有企业资质,支付宝可以使用网页版的批量付款功能,直接导入Excel就能批量转账。在生成的结算批次点击“下载CSV”,稍微变更一下格式就能提交支付宝批量付款。

实名认证接口主要分为3大类:支付宝扫码认证、微信扫码认证、运营商手机号三要素认证。

支付宝扫码认证

  • 支付宝身份验证:申请地址,该接口费用1元/人,支持人脸识别,同一个人重复验证不重复收费。
  • 支付宝实名信息验证:申请地址,该接口完全免费,但不支持人脸,而且申请困难,基本上不给通过。
  • 阿里云金融级实人认证:申请地址获取密钥,该接口费用1元/人,支持人脸识别,同一个人重复验证不重复收费。无需签约,只需要阿里云企业认证账号即可开通。

微信扫码认证

运营商手机号三要素认证

用户支付成功,在扫码页面不跳转,并且后台订单显示未支付

  1. 首先去上游支付接口网站查看订单,状态是否已支付,如果是未支付,那就是上游支付网站的问题,不是你自己网站的问题!
  2. 检查伪静态是否已经配置正确,可以点击左侧“搭建教程”查看。
  3. 在后台网站信息配置里面,有个“回调专用网址”,必须留空,或填写正确的能访问的网址!
  4. 服务器有开启防火墙、防CC的,需要关闭,否则上游支付接口无法异步通知到本站!
  5. 如果是对接的支付宝官方支付,需要检查SSL证书是否使用的Let's Encrypt品牌的免费证书(宝塔自带的SSL就是这个),如果是的话需要换掉,这个品牌的证书支付宝不认。可以去腾讯云或阿里云申请免费SSL证书。
  6. 去上游支付网站点重新通知(补单),可以重试异步通知。

用户支付成功,后台对应订单显示已支付,但是商户网站没有订单或显示未支付

  1. 那是因为用户支付成功后直接关闭了网页或者直接点返回了,没有等页面跳转回商户网站。
  2. 另外商户网站可能有防火墙防CC等,导致易支付无法异步通知到商户网站。
  3. 如果商户网站是自行开发对接的,也可能是对接的有问题,需要商户网站根据开发文档自行检查代码。
  4. 在订单列表点重新通知(补单),可以重试异步通知。

微信公众号支付,提示redirect_uri域名与后台配置不一致

  • 需要在【微信公众平台->公众号设置->功能设置】设置网页授权域名

微信公众号支付,提示当前页面的url未注册

  • 需要在【微信支付商户平台->产品中心->开发配置】设置JSAPI支付授权目录,直接填写你自己网站首页的网址即可。

微信小程序封装H5支付

首先确保你申请过微信官方支付接口,并且能够以企业资质认证小程序,如果这一个条件达不到就不用往下看了。
1、下载小程序支付页面源码:http://m.580c.cn
2、将源码里面的 pages/pay 目录整合到你自己的任意小程序源码中,然后修改 app.json 的路由配置。不要直接把上面的小程序源码直接发布了,否则肯定审核不通过!
3、在【小程序后台->开发->开发设置->服务器域名】设置request合法域名
4、将改好的小程序源码发布上线并审核通过。
5、在后台公众号小程序列表,先添加一个微信小程序,然后在支付通道密钥配置那里,绑定刚才添加的微信小程序。
6、以上小程序源码属于旧版小程序,后台“微信小程序支付跳转小程序页面路径”请勿填写,或者你也可以自行根据接口开发小程序页面。

注:一个微信小程序只能在一个网站使用,不能在多个网站同时使用!否则会经常出现“access_token is invalid or not latest”错误提示。 如果想多网站使用的可以对接微信公众号多域名回调系统

服务商直清模式是指平台不接管资金,商户资金由上游结算给商户。

自有微信或支付宝服务商

  1. 添加支付通道,支付插件选“微信官方支付服务商版”,通道模式选“商户直清”。
    在配置密钥里面,子商户号填写[submchid],如下图所示。这里的submchid是可以自定义的,与下面步骤填写的保持一致即可。

  2. 在用户组设置里面,新增一个用户组,微信选刚才添加的支付通道,用户变量处填写submchid:子商户号,如下图所示

  3. 让用户扫描微信服务商的进件二维码进行进件,或在微信服务商后台帮用户进件,得到一个子商户号。
  4. 在用户列表,给对应用户分配该用户组后,点击【编辑】->【自定义接口信息】,在此处填写该用户所使用的子商户号,如下图所示

  5. 这样用户发起微信支付就会用他自己的商户进行支付了,平台不需要给商户结算。如果设置的商户分成比例不是100,那么用户需要先在用户中心充值余额,支付的时候作为手续费进行扣除。
  6. 在网站信息配置,[用户编辑自定义接口信息]开启后,这样用户就可以在用户中心自己修改子商户号(不建议开启)。

其他银行服务商接口(以信汇支付为例)

  1. 添加支付通道,支付插件选“信汇支付”,通道模式选“商户直清”。
    在配置密钥里面,商户号填写[appid],商户密钥填写[appkey],如下图所示,这里的appid和appkey是可以自定义的,与下面步骤填写的保持一致即可。

  2. 在用户组设置里面,新增一个用户组,选刚才添加的支付通道,用户变量处填写appid:商户号,appkey:商户密钥,如下图所示

  3. 在用户列表,给对应用户分配该用户组后,点击【编辑】->【自定义接口信息】,在此处填写该用户所使用的信汇支付商户号和密钥,如下图所示

插件文件说明

支付插件全部放在plugins目录下,可以参考其他插件进行开发。
例如一个支付插件名字是abcpay,则插件代码应该在/plugins/abcpay/abcpay_plugin.php里面。

插件方法说明

在插件代码里面$info是插件信息
接着是定义插件方法,public的方法可以直接通过地址栏访问,所有需要访问的插件方法都不能有方法参数,访问规则如下:
http://你的域名/pay/方法名称/订单号/
跳转支付接口的入口方法是submit(),API接口支付的入口方法是mapi(),这2个方法名称是系统固定的,submit()方法不能没有,mapi()方法可以没有。
剩余的方法可以自行实现具体的支付页面与回调页面。

插件方法返回值说明

返回值格式:

返回类型 返回代码
跳转到url ['type'=>'jump','url'=>'跳转到的链接']
显示html代码 ['type'=>'html','data'=>'HTML代码']
显示json字符串 ['type'=>'json','data'=>{JSON数组}]
显示指定页面 ['type'=>'page','page'=>'页面文件名称','data'=>{变量数组}]
显示扫码页面 ['type'=>'qrcode','page'=>'页面文件名称','url'=>'二维码链接']
显示小程序跳转页面 ['type'=>'scheme','page'=>'页面文件名称','url'=>'小程序跳转链接']
返回错误提示 ['type'=>'error','msg'=>'提示内容']

注:以上的“页面文件名称”,均为/includes/pages/目录下的文件名,不包含后缀名。



联系我们

安卓APP:

惠省掌薅

PM办公


二维码