支付宝即时到账开通账

支付宝即时到账交易接口
支付宝即时到账
请留下您的手机号码并点击[确认支付]按钮。我们会在5分钟内把注册码通过短信的方式发送到您的手机上。
展翅鸟家长控制软件
(请在此留下您的手机号码,付款成功后,我们将在5分钟内将注册码通过短信发送至您的手机上。)支付宝支付是PHP高级课程中ThinkPHP商城项目课的内容之一,在此视频中将会讲解如何将支付宝作为第三方库集成到ThinkPHP框架中,并且将支付宝的配置参数写入自定义配置中从而达到在整个项目中灵活调用支付的目的。涉及到的知识点有使用vendor函数加载第三方扩展库,对vendor函数做了详细的介绍。使用C函数来读取自定义配置。结合ThinkPHP的特性和支付宝第三方支付的调用方式做了支付宝集成到ThinkPHP框架的完整流程。
&1.&&&支付宝支付–即时到账
1.1.&&获取即时到账sdk
获取即时到账sdk地址为:
这是一个非常强大的SDK,包含了完整的demo,也就是说我们下载后只要简单的配置就可以测试完整的付款流程!!
1.2.&&SDK目录结构讲解
目录包括lib和img,当然为什么我的demo脚Alipay呢!是因为我下载后自己修改了名称。好了我们先来看看sdk中都有哪些东西。上图让大家看得更明白
1.3.&&开始使用demo
1.3.1.&&&使用前的配置(alipay.config.php)
当然我们只需要配置这四个位置,partner是在你的支付宝商家后台可以查看得到,key也是在支付宝商家后台查看,看下边会有一副高清大图带大家看看在哪儿查找,这些本来是保密的东西哦。
注意notify_url和return_url的配置:听过我讲解的微信支付的同学应该已经明白这个是干什么用的了。对的就是告诉我们支付结果的地址。那这个地址的配置肯定是有讲究的。首先,他的格式为http://商户网址。这个商户网址必须是经过备案的,而且在地址中不能带有get方式的参数,必须保证外网可以正常访问。如果不对了是不能跳转的哦。往下看是不是有一个地址
1.3.2.&&&教你两步完成支付
第一步拼接参数,这个参数的格式是怎么样的呢:
注意了,除了out_trade_no,subject,total_fee,body其他的参数都是从配置文件中读取的。那么这四个特立独行的参数是什么意思呢?其实分别是订单编号,商品名称,订单金额,订单描述。
第二步建立请求
要注意了支付是调用阿里的东西支付的,那肯定要建立关系的,你来我往的一起完成支付,那就必须建立请求。建立请求是实例化AlipaySubmit,实例化之前当然要引入了。那就需要require_once lib/alipay_submit.class.php这个文件。
然后调用对象的buildRequestForm来建立请求当然是建立一个html请求了。那么这个方法的输出也是一段html字符串了,为了解析我们简单粗暴的使用了php的echo来处理。这一步执行时的结果就是下图的样子。
再熟悉不过了有木有。
1.4.&&在ThinkPHP中集成支付宝支付
1.4.1.&&&有何不同?
当然是大有文章,其实也没有什么不同。既然在TP中集成那么我们还是要入乡随俗,复合TP开发规范。那就是第三方扩展放在Libraray中的Vendor目录下。那当然是把我们刚刚的demo拖过去就行了,简单粗暴的拖过去,别手软。然后,为了管理方便那个alipay.config.php我们是否可以阉割掉呢?当然是,但是又不能没有配置数据,怎么办呢?那就写在自定义配置中。还记得C()函数吗?当你需要配置中的数据时你肯定会想到他。
1.4.2.&&&把配置写在Common/config.php中
是不是看着都感觉身心愉悦了?这样我们就可以在项目中用C()函数非常方便的读取到支付宝配置参数。
1.4.3.&&&引入alipay_submit.class.php
如果你在引入vendor中的扩展时你想不到vendor()这个函数时那么你就有必要来魏老师的课堂再学习下ThinkPHP的项目开发了,魏老师一定会念叨到你想吐,还记得大话西游中的only you吗?
vendor(‘Alipay.lib.alipay_submit’,’’,’.class.php’);
vendor的三个参数我再说一次喽,第一个参数就是类库的路径,第二个参数本来可以定义类库的根目录的默认是Vendor那就不用修改了,第三个参数是类库的后缀,因为默认是.php而我们的文件时alipay_submit.class.php那么我们就自己设定下。
1.4.4.&&&获取配置参数:
1.4.5.&&&构造要请求的参数数组
看着注释中的无需改动就感觉很感动有木有,阿里的工程师真的好贴心。其他参数都是从配置中拿到的。只有四个参数要自己传。他们的意义我已经唠叨过了。当然还有很多参数,根据自己的需求自己去查阅一下。
1.4.6.&&&建立请求,距离成功只有半步之遥
这样你的请求就建立了,那么,如果看到扫码页面说明你成功了,如果报错了,请别砸电脑,掰键盘。静下心来分析分析。
1.4.7.&&&关于通知
为了接收支付结果消息,支付宝是允许我们自己设置两个地址作为通知地址的,分别是异步通知地址和同步通知地址。异步通知地址是不需用页面参与的,将结果推送到后台,而且不能有除约定之外的其他输出。
1.4.8.&&&异步消息通知地址
异步消息通知地址配置的参数名为notify_url,这个地址必须符合外网可以访问的条件。在支付时支付宝系统会带着POST的参数来访问该地址。该地址接受的参数可以再支付宝即时到账文档中查看。我们在接收到数据后要对数据进行判断并更新我们自己系统中的订单状态。
当然你可能会想这样安全吗?万一别人知道我们的异步通知地址后模拟post怎么办。其实支付宝为我们考虑到了这一点。所以我们需要对接受到的请求进行验证。验证的方法如下。
private $_notifyObj;
public function _initialize()
vendor('Alipay.lib.alipay_notify', '', '.class.php');
$this-&_notifyObj = new \AlipayNotify(C('ALIPAY_CONFIG'));
需要引入notify这个类,我们还是用vendor来引入。这样我们就实例化了AlipayNotify这个类。
对于异步通知的验证是调用AlipayNotify中的verifyNotify()方法
$verifyResult&=&$this-&_notifyObj-&verifyNotify();
该方法的返回结果如果验证通过为true如果失败为false。如果为false说明不是支付宝系统发送来的请求。
如果为true我们就可以继续处理支付的其他操作了。
1.4.9.&&&同步消息通知地址
通知消息同步意思是当支付完成后支付宝系统会给我们跳转到我们设置在return_url中的地址,并且会在url中带有参数,这样我们就可以接收传来的参数并且对参数判断后给用户输出一个漂亮的界面。在该过程中我们还是需要对请求进行判断,判断是否是支付宝系统发来的请求,指示在此处调用的是AlipayNotify中的verifyReturn()方法,该方法的返回结果也是true或者false。
$verifyResult&=&$this-&_notifyObj-&verifyReturn&();
1.5.&&讲完了该做什么
我的学生当然是该交作业了,但是在这儿我还要梳理下支付的流程。
首先是我们的商城平台中创建了支付的订单,这儿订单的状态当然是未支付了。然后调用支付来支付订单。在请求建立后我们会让支付宝支付系统去处理,支付系统处理完后会将结果给我们的通知地址,通知地址收到结果后分析下,如果成功了那就修改订单状态为已支付,然后给用户一个可爱的提醒。其实所有的支付流程都是这样的,所以在会用支付宝支付后这个支付流程你值得拥有,不然你有钱都不知道怎么花,那就去扫一扫魏老师的线上demon,当然说明了,一角钱以上才能找我退款哈。
阅读(...) 评论()Payment:支付宝即时到账接口接入教程
Payment:支付宝即时到账接口接入教程
记住,如果觉得文档写得不清楚,一定要告诉我。励志写好文档为大家服务!
Payment 3.0 支付宝的配置设置文档请
项目GitHub地址:
支付宝从新版本开始,提供了沙箱方式,方便进行调试。但是,即时到账支付宝没有提供沙箱模式。因此大家在使用过程中,注意设置配置。
我在项目中提供的初始配置也不能用于测试 即时到账接口。
即时到账属于老版本接口。不支持 RSA2 的签名方式,请设置为 RSA 签名方式。
即时到账 主要应用于网站支付。当前也可使用支付宝提供的当面付–扫码支付来完成网站支付的业务。
即时到账接口属于支付宝老版本接口,当前 Payment 依然将其进行了保留。后期会跟随支付宝公告进行调整。
即时到账的权限需要在支付宝商家平台进行签约。
即时到账签约后,默认开通以下两个接口的权限:
- 即时到账交易接口(create_direct_pay_by_user)
- 即时到账批量退款有密接口(refund_fastpay_by_platform_pwd)
但是 Payment3.x 并未接入 即时到账批量退款有密接口。大家可以通过 新版退款接口发起退款操作。
退款操作文档,可点击这里(TODO)
先上 即时到账发起支付 需要的参数列表
商品名称,该参数最长为128个汉字
商户网站唯一订单号
timeout_express
设置未付款交易的超时时间,一旦超时,该笔交易就会自动被关闭。
该笔订单的资金总额,单位为RMB-Yuan
return_param
公用回传参数
扫码支付方式
默认支付方式
body 主要是对商品的描述,根据自己的业务写就好,不要用一些非常特殊的字符,支付宝可能会进行一些处理,导致你的结果与预期不一样
subject 可以写一下商品名称信息,主要是方便支付宝后台对账时查看
order_no 自己生成的订单号,每次下单的单号必须唯一。也就是说:同一个 order_no 他的其他下单数据不能发生变化,价格、名称等等。如果有变化,需要重新生成一个订单号。
timeout_express 订单过期时间,很简单,你希望在那一刻过期,就写那个点的时间戳。只会精确到分钟
amount 订单的金额,就是用户实际需要支付的金额。
return_param
希望支付宝异步通知时,原样返回给你的数据,同样注意避免一些特殊字符
qr_mod 这个参数可以不设置,如果没有特殊需求建议不设置,可设置:0 1 2 3
。效果可以自己看看
paymethod 当用户进行支付时,默认使用的付款方式。可选值:creditPay(信用支付)directPay(余额支付)
ok,以上就是需要发起支付的全部参数了。具体到 sdk 如何调用。看代码
use Payment\Common\PayException;
use Payment\Client\Charge;
$config = require_once('./aliconfig.php');
$channel = 'ali_web';
$payData = [
'body' =& '一个苹果',
'subject' =& '牛逼公司--付款吧',
'order_no' =& 'NB',
'timeout_express' =& '',
'amount' =& '100',
'return_param' =& 'buy some',
'paymethod' =& 'creditPay',
$payUrl = Charge::run($channel, $config, $payData);
} catch (PayException $e) {
echo htmlspecialchars($payUrl);
返回值 $payUrl
是跳转向支付宝支付的一个连接。访问该连接即可跳转到支付宝。
即时到账的代码就全部完成了。
接下来说下重点,请仔细往下看。
这里需要注意的一个点: htmlspecialchars() 函数在正式环境上,如果时进行url的跳转操作,请不要用它进行转义。我这里使用它是为了方便输出到页面上。因为 &not 是一个特殊符号,如果不转移,在网页上无法正常显示。
Payment 的设计思路是将配置文件与下单数据进行了分离。配置文件一般来讲是静态的,不会经常变更,并且大家都会用到。而下单的订单数据则不同,每一个支付接口需要的下单数据不同,并且根据业务,其对应的值也不稳定,常常发生变化。
其次,还有一个 $channel 参数,这个简单来讲,就是用来标记,你现在想要使用那种接口。可以取的参数如下:
channel可取值
app支付(移动支付)
H5支付(手机网站支付、wap支付)
当面付中的扫码支付
当面付中的条码支付
如果你有不清楚的或者愿意交流的地方,请联系我:
如果你觉得这个项目有帮助到你,请打赏我,让我有动力持续下去:
ps: 一般性的问题请大家可以先查资料,如果实在无法解决找我吧(不免费服务)。
支付宝当面付接口如何计算优惠
支付宝即时到账接口开发 - DEMO讲解
支付宝即时到账接口调用实例
支付宝支付开发—当面付条码支付和扫码支付
支付宝沙箱环境对接(当面付)
JavaSSM接入支付宝当面付(扫码支付)
支付宝当面付开发(java)
支付宝开放平台当面付接口整体解析
支付宝支付——当面付
没有更多推荐了,支付宝即时到账接口使用说明 - 简书
支付宝即时到账接口使用说明
到支付宝开放平台文档中心,下载即时到账交易接口(create_direct_pay_by_user)()
解压,留下alipaydirect.zip\MD5签名版本\create_direct_pay_by_user-PHP-UTF-8目录下内容,其他删除。
我们用到的文件有:
readme.txt文件中有此文件夹下各文件的说明
特别说明:支付宝目前的即时到账接口只能被企业账号调用,企业的营业执照、工商注册信息等需要通过支付宝官方的审核。个人开发者无法直接使用。
在您企业信息等通过审核之后,需要与支付宝签约“即时到账”产品使用的协议。该签约1日内通过审核,然后您可以在
页面查看您的合作者身份(PID)和安全校验码(Key)
然后修改需要修改alipay.config.php里面的
$alipay_config['partner']';
$alipay_config['key'];
$alipay_config['notify_url'] ;
$alipay_config['return_url'] ;
这4个参数的值。
打开index.php,确认付款之后会进入支付宝的收银台页面,在此页面登录支付宝或者扫码付款,完成之后,返回一个数组数据,分为两路传递给您的网站。一路为同步,跳转到你之前配置的return_url页面,以get方式传递数据。另一路为异步,以post方式传递数据到notify_url,以防同步跳转过程中页面突然被关闭等意外情况而无法传递数据。
包含如下数据:
[body] =& 即时到账测试
[buyer_email] =& i***
[buyer_id] =& 2088*******612
[exterface] =& create_direct_pay_by_user
[is_success] =& T
[notify_id] =& RqPnCoPT3K9************7KdFtb%2Ftds6
[notify_time] =&
[notify_type] =& trade_status_sync
[out_trade_no] =& test39
[payment_type] =& 1
[seller_email] =& s***@s***.com
[seller_id] =& 2088********4976
[subject] =& test商品123
[total_fee] =& 0.01
[trade_no] =& 0737
[trade_status] =& TRADE_SUCCESS
[sign] =& ba8**************ff01e
[sign_type] =& MD5
我的网站:waiting for you(˙?˙)?--?
https://wt4u.top
现支付宝的通知有两类。A服务器通知,对应的参数为notify_url,支付宝通知使用POST方式B页面跳转通知,对应的参数为return_url,支付宝通知使用GET方式 (通知地址不需要像以前一样去账户内设置,而是由客户在支付的时候通过参数传递给我地址。 例如 notif...
最近做系统,需要实现在线支付功能,毫不犹豫,选择的是支付宝的接口支付功能。这里我用的是即时到帐的接口,具体实现的步骤如下: 一、下载支付宝接口包 下载地址: https://b.alipay.com/order/productDetail.htm?productId=201...
支付宝简介文档 (适用于ydm-java接口与后台,如有误入,但愿也能给您带来帮助) 此文档写于2017年3月,只能说明此时该文档适用。使用前请查看以下接口支付宝是否提供。 App支付产品 批量付款到支付宝账户 (链接如有发生变化,请在官方文档中寻找此产品,一般情况下,产品...
此文档写于2017年3月,只能说明此时该文档适用。使用前请查看以下接口支付宝是否提供。 App支付产品 批量付款到支付宝账户 (链接如有发生变化,请在官方文档中寻找此产品,一般情况下,产品名不会发生改变) 1. App支付产品 通俗上讲就是在App中使用支付宝付款,流程上就...
之前由于项目需要,我所负责的产品有接入支付宝,今天抽出时间整理了出了与支付宝对接的流程。文章大部分内容都是直接引用的蚂蚁金服开放平台上的开发文档,我只是做了一些整理。如果有兴趣,可以点击下面的网址阅读详细的开发文档。(内容来源:https://openhome.alipay...
.°?(*??`*)?°.喵酱小铺福利提前预告 宝宝们少女心爆棚不? 更多礼品惊喜敬请期待? 7.3号是喵酱小铺授权申请日,也是喵酱小铺赋予重要意义的日子 所以啦一个月后的今天8.3有个大福利哟具体稍晚几天会进行 该加进来的都踊跃进来 我怕我福袋太少 供不应求 毕竟是先到先...
谁家女子淡如兰,飞霞无端笑嫣然。 面如梨花绽素秋,目若明月照远山。 看不厌繁花纷纷更漫漫, 望无尽春水潺潺又涓涓。 本是神妃仙子辈,谪落人间惹爱怜。
你说 我们之间存在距离 即使在一起 之间也隔着一层面纱 我说 我们之间没有距离 虽然心连心 脑海中也是两个世界
(2014年3月)
提起佛山,相信大家首先想到的就是“佛山无影脚”。没错,黄飞鸿等武术名人都曾在此地活跃过。佛山是国家历史文化名城,中国天下四聚、四大名镇之一,是粤剧的发源地,岭南文化发源地之一。跟着放假网小编来领略下“佛山新八景”的独特魅力吧! 1、祖庙 祖庙从北宋元丰年间始建,至清代初年,...
易效能天使28班第8组晨会记录 乔哥: 个人: 1.早起5点都起床,早起需要早睡: 2.运动周一到周五骑动感单车,周末跑步半小时; 3.职业生涯规划讲师: 4.在伙伴激励下建立口吐莲花群,有39位进入,锻炼口才,提升正能量。 小组: 1. 小伙伴们翻天覆地...

我要回帖

更多关于 支付宝即时到账怎么弄 的文章

 

随机推荐