终于把3.0版本做好了。从今天开始好好写文档,让大家做支付做的开心点。

从2016年6月payment做出来,到这一版本(3.0),坚持了快一年啦。感谢这期间给我支持(打赏与协作)的人。

Payment 主要针对支付宝支付、微信支付的接口进行了聚合。开发者无需重复集成繁琐的支付接口,使用 Payment 就能应对所有支付场景,快速接入支付功能。

Payment 针对不同支付服务商的接口,提供了统一的调用方式,并且内部将签名、验签进行了集成,使用者只需要喂数据然后拿到结果进行自己的业务即可。完全屏蔽支付宝与微信内部繁杂的细节。只要按照我的文档操作,10分钟可完成支付流程。

当前 Payment 基本接入完支付宝与微信的资金相关接口。到当前为止,Payment SDK 主要支持功能如下:

支持的支付宝相关接口清单:

即时到账功能(主要用于pc上支付)

手机网站支付(WAP支付)

APP支付(移动支付)

当面付(扫码支付与条码支付)

交易查询(支付订单查询接口)

退款接口(完成支付的订单,可通过该接口完成退款)

退款查询接口(退款接口需要通过该接口进行查询状态)

单笔转账到支付宝账户接口(只能转到用户支付宝帐号)

转账订单查询接口(查询转账订单状态)

ps: 支付宝接口从 payment 3.0 开始,仅支持支付宝新版本接口。

支持的微信支付相关接口清单:

手机网站支付(H5支付,特殊商家可用)

APP支付(移动支付)

公众号支付

刷卡支付(类似支付宝的条码支付)

小程序支付

交易查询(支付订单查询)

申请退款接口

查询退款接口

企业付款给个人接口

查询企业付款接口

微信最糟糕的就是,不同支付接口,需要申请不同的商户号。这里简单总结一下:

APP支付 必须到 微信开放平台申请一个应用,然后去申请开通支付功能,申请的商户帐号无法用于 公众号支付与小程序支付。

公众号支付 必须首先有一个认证的服务号,然后到公众号后台进行申请开通支付功能。又会获得一个商户号

小程序支付 微信分配的小程序ID,所以恭喜你,你又有了一个商户号

至于其他支付,目前检测好像可用共享。也就只剩下一个刷卡支付了。

本文主要讲解支付宝的配置文件,配置清单如下:

return [

'use_sandbox' => true,

'partner' => '2088102169252684',

'app_id' => '2016073100130857',

'sign_type' => 'RSA2',

'ali_public_key' => 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAU3GYXkAaumdWQt7IDAQAB',

'rsa_private_key' => dirname(__FILE__) . DIRECTORY_SEPARATOR . 'rsa_private_key.pem',

'limit_pay' => [

//'balance',

//'moneyFund',

// ... ...

],

'notify_url' => 'https://helei112g.github.io/',

'return_url' => 'https://helei112g.github.io/',

'return_raw' => false,

];

在支付中最麻烦的就是配置密钥。这里逐一为大家说明每一个配置的含义、以及如何进行设置。

其中 是否必须 列表中如果标记为 是 ,则该项必须设置,否则sdk将无法得到结果。

参数

类型

是否必须

说明

use_sandbox

boolean

是否开启沙箱模式

partner

string

商户UID,以2088开头

app_id

string

支付宝分配给开发者的应用ID

sign_type

string

签名方式

ali_public_key

string

支付宝公钥

rsa_private_key

string

用户应用私钥

limit_pay

string

限制的支付方式

notify_url

string

支付宝异步通知的服务器地址

return_url

string

支付报支付成功返回地址

return_raw

boolean

是否返回支付宝原始数据

接下来对每一个参数详细说明,不同的设置带来的不同效果。

use_sandbox 支付宝新版本提供了沙箱模式。如果该选项设置为 true 则使用支付宝的沙箱功能。

下面简单介绍沙箱的使用方式。

首先登陆 蚂蚁金服开放平台 按照下图找到自己的沙箱应用。

大家注意截图,重要的配置信息均来自这里。

partner 对应图中的 商户UID,如果是正式应用,可用在【我的应用】=》【应用】中找到对应的信息。

这部分信息较敏感,就不截图了。

app_id 就是对应的创建的应用的id。图中有很醒目的字标记。

sign_type 请求支付时,数据加密的方式,目前支持RSA2和RSA,推荐使用RSA2。你完全不用管签名的实现,只需要这里做一下配置就好。

接下来,密钥的配置是重点,70% 的支付无法成功的原因,均是密钥设置问题。

关于密钥如何生成与配置,请看

ali_public_key 注意看这张图的红线部分,只要上传自己应用的公钥后,可用点这里,查看支付宝公钥,可获取到支付宝的公钥。

这里一定要记得是 支付宝的公钥,不是你自己本地生成的,而是在开发平台中上传自己的公钥后,拿到的支付宝公钥。

接下来就是这个配置该如何填写了。这里支持文件的方式,你可以将支付宝公钥复制到一个单独的文件,然后这个字段填写对应文件的路径。例如:

'ali_public_key' => dirname(__FILE__) . DIRECTORY_SEPARATOR . 'alipay_public_key_rsa.pem'

你也可用直接将支付宝公钥的值,填入这里,例如:

'ali_public_key' => 'MIIBIjANBgkqhkiG9w0BAQEFAAOO1BU3GYXkAaumdWQt7f+khoFoSw+x8yqQIDAQAB',

这里为了文章排版美观,有删减部分支付宝公钥内容

无论那种方式,强烈建议在填入时,去掉:

-----BEGIN PUBLIC KEY-----

以及 -----END PUBLIC KEY----- 只保留中间部分的内容。

rsa_private_key 商户私钥的设置,按照上面发的教程)进行操作,然后把获取到的值,复制出来。跟支付宝公钥一样,也可以单独放在一个文件里,然后引用他的路径,或者直接将它的值,设置在这个字段上。

请记得只保留密钥内容部分。

这里请一定分清楚 私钥,是商户自己生成的。 公钥,是支付宝开发平台看到的

limit_pay 在让用户使用支付宝支付过程中,可能想禁止用户使用某些渠道,比如:不准使用 信用卡支付 不准使用 花呗支付。都可以在这里进行配置。详细的可取值,请看图片

notify_url 异步通知。当支付宝支付成功后,你想要在服务端收到支付宝支付成功的通知,就必须设置该选项。应该是:http/https 开头的url。

这里强烈建议以支付宝服务器的通知为依据来判断是否支付成功。关于异步通知的处理,在后面的文章将有专题讲解。

return_url 当前主要是即时到账、手机网站支付两个接口会用到,在支付成功后,跳转到哪一个链接。也必须是以 HTTP/HTTPS 开头的url。可以理解为同步通知,但请不要以它的结果为准。为了安全还是应该以异步为准。

return_raw 之前的版本都没有该参数,是3.0新加入的,它的主要目的是让调用者控制自己拿到什么样的数据。如果设置为true。SDK 则只会向支付宝发出请求,收到数据后进行验签,通过后,会以数组的形式将所有支付宝返回的数据返回给客户端。

如果设置为false ,则会抛弃支付宝的某些字段。并且会对某些字段名称进行重新映射,这种方式带来的好处是,可用确保支付宝、微信返回的数据是基本一致的,但是可能导致调用者损失部分信息。这里大家根据实际情况进行衡量。

至此,支付宝的配置全部讲解完毕。 去看看如何完成即时到账吧

如果你有不清楚的或者愿意交流的地方,请联系我:

邮箱:dayugog@gmail.com

如果你觉得这个项目有帮助到你,请打赏我,让我有动力持续下去[左边微信,右边支付宝]():

ps: 一般性的问题请大家可以先查资料,如果实在无法解决找我吧(不免费服务)。

php 支付宝配置,Payment:支付宝支付配置文件设置教程 - PHP相关推荐

  1. 低效吃鸡计算机配置要求,绝地求生优化设置教程,低配电脑也能流畅吃鸡了-intel显卡设置...

    <绝地求生:大逃杀>游戏官方连续发了两篇低配电脑吃鸡显卡优化教程,一篇是游戏内的设置,主要针对显卡优化,另外一篇是虚拟内存的设置,显然是针对内存的优化,而<绝地求生>吃鸡游戏对 ...

  2. outlook配置文件添加服务器,配置 Outlook 配置文件设置

    PRF 文件结果 在 OCT 中配置 Office Outlook 2007 配置文件设置时,会实际生成一个配置说明文件 (.prf),在部署中使用的安装程序自定义文件 (.msp) 中也包括该文件. ...

  3. 苹果cms试看无效与用户组权限设置教程

    苹果cms v10 如何对游客开启试看功能? 首先说下必备条件: 1.模板:并不是所有模板都支持试看,尤其是网上一下来历不明的模板,各种bug残缺不全,功能测试建议用正规的模板网站的模板. 2.试看功 ...

  4. java 支付宝 第三方即时到账支付

    java 支付宝 第三方即时到账支付 alipay 的几个内核功能文件: =============================================================== ...

  5. php yii2支付宝开发,yii2 支付宝支付教程 [ 2.0 版本 ]

    yii2 支付宝支付教程 [ 2.0 版本 ] 支付宝支付流程个人理解大致就这三步 1.前台页面将支付信息数据通过立即支付按钮 ajax提交到订单处理层 2.在订单处理层引用支付宝的接口 将支付数据写 ...

  6. 支付宝在线支付接口开发教程

    1.什么是第三方支付 所谓第三方支付,就是一些和各大银行签约.并具备一定实力和信誉保障的第三方独立机构提供的交易支持平台.在通过第三方支付平台的交易中,买方选购商品后,使用第三方平台提供的账户进行货款 ...

  7. 支付宝 微信 内购 支付

    iOS支付 iOS支付分为两类,第三方支付和应用内支付(内购). 第三方支付包括:支付宝支付.微信支付.银联支付.百度钱包.京东支付等等. 应用内支付(In-App Purchase):在应用程序内购 ...

  8. SpringBoot集成支付宝沙箱手机网站支付详细流程和踩坑分享

    描述 本文主要讲解SpringBoot集成支付宝沙箱手机网站支付,即网页点击按钮发起支付,跳转到沙箱app付款 由于其他博客的流程大多笼统,有时候并不能找到正确的集成方式,本文尽可能详细的阐述付款,异 ...

  9. Java支付宝二维码支付和退款,微信二维码支付

    在蚂蚁金服开发平台下载demo 打开 TradePayDemo 项目,里面的main可以直接运行,在配置文件zfbinfo.properties中改为自己支付宝的信息 # 支付宝网关名.partner ...

最新文章

  1. 干货!如何设计实现一个通用的分布式事务框架?
  2. 金谷诺亚携华人文交所 经信研究·李刚:打造元宇宙数字商城
  3. Qt CMake变量参考
  4. leetcode 174. Dungeon Game | 174. 地下城游戏(暴力递归->傻缓存->dp)
  5. 【Mood 16 】史上最全github使用方法:github入门到精通
  6. 2 文件处理、权限管理、搜索
  7. matlab中邮递员问题实例,中国邮递员问题matlab
  8. C++笔记-基于邻接表的BFS(宽度优先遍历)
  9. HDU_2082 找单词 (生成函数)
  10. 超详细的Java基础面试题总结
  11. String去除后面指定字符串
  12. 自动动态调整广告出价OCPC
  13. 计算机桌面怎么添加便签,如何在电脑桌面上添加便签 这些知识你不一定知道...
  14. javafx实现钢笔效果,钢笔笔锋,基于bezier曲线
  15. 动力节点『lol版』Java学习路线图(五)Java框架阶段
  16. 低功耗蓝牙搜索广播的实现流流程介绍 /BLE scan flow ----- 蓝牙低功耗协议栈
  17. jquery的优势是什么?
  18. matlab访问被拒绝,安装MATLAB拒绝访问问题的解决方法
  19. envi栅格图像镶嵌_envi图像镶嵌
  20. SEOER应当避免赌徒式的外链操作手法

热门文章

  1. Apache+Tomcat+Php+Mysql的集成
  2. mysql blackhole_MySQL的BlackHole引擎在主从架构中的作用
  3. 实现北大官网首页的动态图标
  4. 论文学习:Feature Importance-aware Transferable Adversarial Attacks
  5. java assertthat_assertThat 简介
  6. linux安装kde桌面环境,Arch Linux桌面环境(KDE Plasma)安装教程
  7. 被八个鸡蛋打败的爱情
  8. 定时任务(工作有用)
  9. bug---win10电脑权限-文件操作失败。 C:Windows\System32\drivers\etc\hosts 拒绝访问。 (CF@O)
  10. ZedGraph使用(一) 柱形图