Payment:支付宝手机网站支付教程
来源:互联网 发布:淘宝上一千多的6s 编辑:程序博客网 时间:2024/04/27 22:56
支付宝的H5支付体验真不错(支付宝叫他手机网站支付)。
反观微信支付干嘛要把H5支付藏起来?而且体验还那么差。
Payment 3.0
支付宝的配置设置文档请 点击这里
项目GitHub地址:https://github.com/helei112g/payment
从本篇开始,将用支付宝的沙箱方式进行演示,在项目的 payment/examples
中我已经提供了我的沙箱帐号。
新版接口已经同时支持 RSA 与 RSA2 。更换签名方式时,注意公钥的变化,在demo中我进行了注释。
另外支付宝为了提升支付体验,可以将 手机网站支付转Native支付
,对于混合应用是非常好的体验。这部分服务器端的业务逻辑无须变动,只需要客户端更新到最新的 详情地址
还是先讲手机网站支付需要设置哪些参数,后面用代码演示。代码部分大家会发现跟 即时到账
支付的使用完全一致。他们的不同之处仅仅是下单参数的区别。
body
主要是对商品的描述,根据自己的业务写就好,不过不要用一些非常特殊的字符,支付宝可能会进行一些处理,导致你的结果与预期不一样
subject
可以写一下商品名称信息,主要是方便支付宝后台对账时查看
order_no
自己生成的订单号,每次下单的单号必须唯一。也就是说:同一个 order_no 他的其他下单数据不能发生变化,价格、名称等等。如果有变化,需要重新生成一个订单号。
timeout_express
订单过期时间,很简单,你希望在那一刻过期,就写那个点的时间戳。只会精确到分钟
amount
订单的金额,就是用户实际需要支付的金额。
return_param
希望支付宝异步通知时,原样返回给你的数据,同样注意避免一些特殊字符
goods_type
用来区分购买的是实际商品还是虚拟商品,虚拟商品不需要物流发货,并且 虚拟类商品不支持使用花呗渠道
store_id
门店编号,这部分数据主要是支付宝为了将业务深化到线下而提供的,如果用不到,不设置就好。
代码调用。
use Payment\Common\PayException;use Payment\Client\Charge;$config = require_once('./aliconfig.php');// 支付宝的配置信息$channel = 'ali_wap';$payData = [ 'body' => '一个苹果', 'subject' => '牛逼公司--付款吧', 'order_no' => 'NB12312355', 'timeout_express' => '1489241888', 'amount' => '100', 'return_param' => 'buy some', 'goods_type' => 1, 'store_id' => '',// 没有就不设置];try { $payUrl = Charge::run($channel, $config, $payData);} catch (PayException $e) { // 异常处理 exit;}echo htmlspecialchars($payUrl);
大家在这里可以回到即时到账的部分对比一下,调用代码完全一致。唯一的差别就是 payData
中的些微差别。
多了一个 store_id
参数。少了另外两个参数: qr_mod paymethod
后面的几种支付在调用上也是如此没有差别,变化主要时围绕 payData
进行的。
当然这里最重要的变化是:$channel
。Payment 知道使用那种支付方式,完全是根据这个参数来设置的。因此一定要设置正确。再把对应的信息贴出来。方便大家查看。
另外这里返回的依然是一个url。大家根据自己的业务进行合理的处理。htmlspecialchars()
函数的目的还是为了转义,正式使用时,请注意。
关于异步通知部分,会有专门的文章讲解,这里暂时略过。请关注后面的文章。
如果你有不清楚的或者愿意交流的地方,请联系我:
邮箱:dayugog@gmail.com
如果你觉得这个项目有帮助到你,请打赏我,让我有动力持续下去 左边微信,右边支付宝:
ps: 一般性的问题请大家可以先查资料,如果实在无法解决找我吧(不免费服务)。
关于沙箱
对于支付宝的沙箱功能,我得再啰嗦几句。先把我配置的沙箱帐号贡献出来。方便大家测试
商家信息
- 商家账号 naacvg9185@sandbox.com
- 商户UID 2088102169252684
- appId 2016073100130857
买家信息
- 买家账号 aaqlmq0729@sandbox.com
- 登录密码 111111
- 支付密码 111111
当前沙箱的买家帐号,只能使用 android
版本进行登陆。
沙箱钱包只支持扫一扫、付款码、门店详情页功能,其余功能不提供
所以大家,不要在使用我提供的沙箱帐号时,用你们真实的支付宝帐号去支付,那样子是不会成功的。沙箱的所有功能,都只能使用上面的沙箱帐号去完成。
- Payment:支付宝手机网站支付教程
- Payment:支付宝支付配置文件设置教程
- Payment:支付宝移动支付服务端教程
- 支付宝手机网站支付教程
- 支付宝手机网站支付
- 支付宝手机网站支付
- java支付宝支付,支付手机支付,pc网站支付
- java支付宝支付,支付手机支付,pc网站支付
- 支付宝手机网站支付接入详细教程
- Payment:接入支付宝当面付(扫码支付与条码支付)教程
- Payment:支付宝即时到账接口接入教程
- Payment:支付宝即时到账接口接入教程
- java接入支付宝手机网站支付
- Java版支付宝手机网站支付
- 支付--支付宝手机网站支付(WAP)
- 支付宝支付--手机支付
- 手机网站支付宝配置
- 新版支付宝手机网站支付、支付宝pc支付、支付宝无密退款实现
- 平衡树splay
- PostgreSQL数据类型
- Android中AlarmManager详解以及利用PendingIntent设置闹钟
- 5-12 最长对称子串 (25分) 思维
- 实战项目商城(第八天)
- Payment:支付宝手机网站支付教程
- Leetcode-539. Minimum Time Difference
- LeetCode 207、Course Schedule 题解
- ReactiveCocoa之一
- 数据结构实验之链表二:逆序建立链表 (sdut oj)
- Spark整合kafka0.10.0新特性(二)
- HDU1563 Find your present!
- Leetcode-536. Construct Binary Tree from String
- [BZOJ3611][Heoi2014]大工程(虚树+树形dp)