经过了千辛万苦,终于取得支付宝支付真经
我发现网上太多资料代码都是过时了,不能拿来直接使用,而且技术写文章也是硬伤,写的太粗糙,很容易带到沟里去
所以我在这里一次性总结一下,希望可以帮助你,少走弯路
一、支付宝官方参考资料
说明文档:https://opendocs.alipay.com/open/203/105288
dome下载地址:https://opendocs.alipay.com/open/54/106682
二、配置信息
下载下来dome代码之后,config里面看见需要配置三个信息,如图
这三个信息来自哪里呢?
参考官方文档
https://opendocs.alipay.com/open/203/107084
开发者使用支付宝账号登录开放平台,创建应用
https://developers.alipay.com/platform/developerIndex.htm
创建应用,小心被驳回
注意logo和名称
1.logo不能直接使用支付宝默认logo和其它公司注册的logo
2.名称中不能出现如下内容
开发设置:
设置需要短信验证
就可以看见设置过的
开始是没有的,
需要下载软件:支付宝开放平台开发助手,点击生成秘钥,
生成应用私钥和应用公钥
填到这里面,点击保存设置
就会得到支付宝公钥(不是应用公钥)
不要被弄混了,总结一下
1.通过小助手软件生成的是1.应用私钥和2.应用公钥
2.拿着应用公钥填到支付宝创建的应用里面的加密管理公钥框里,得到了3.支付宝公钥
我们开发中用到的是两个,一个是1.应用私钥,一个是3.支付宝公钥,2.应用公钥只是我们用来得到支付宝公钥的
在需要的时候,此步骤可以重复操作,生成新的应用私钥和支付宝公钥
接下来,提交审核就行了,一天会得到结果,只要注意应用命名和logo不盗用,就没问题
所以我们config里面需要的三个信息就都全换了
1.应用号
2.应用私钥
3.支付宝公钥
填入到配置类config里面
审核通过之后就可以测试了
三、 沙箱测试
当然支付宝也提供了沙箱操作,如果等待审核时间等不了,可以先用沙箱测试,
这里不建议你使用沙箱测试,容易把你给弄混了,给的资料也不够详细
但是这里还是介绍一些吧,以免把已经入坑的你,从坑里带出来
入坑沙箱位置在这里
接下来还有个app要下载,别忘了,沙箱测试是无法唤起你手机上真实的支付宝的!!!
同样拿到1,2,3填入到config里面就行了
另外账号中心里面也有个开发平台的秘钥,这个也是一个坑,别进!!!!这里面根本用不到管!
应用秘钥,沙箱秘钥,支付宝还嫌不够乱再整个开放平台秘钥,不把你弄混是不不罢休的,生怕你不迷糊似的·!!
四、代码开发
配置信息讲完了,接下来讲讲如何开发
0.前端
1.点击支付按钮,调用支付接口,后台部分的操作
我自己的代码
2.同步调用,通知给客户界面
对比自己的网站代码,加入自己的逻辑处理
3.异步回调,这个才是真正的逻辑修改数据库代码
如果回调报异常,会隔断时间再请求,大概是3,7,11分钟的样子,直到返回成功
代码就是这么简单,不要被支付吓到,都是纸老虎经不起钻研的,
1.统一接口请求,
2.两个回调,一个通知,一个异步真实修改数据库
五、遇到的错误
1.卖家账户状态异常,请联系卖家解决
这是接近成功的最后一步啦,成功唤起支付宝之后,支付金额,提示如下信息
这个问题与技术无关,打官方客服电话95188联系客服,客服会告诉你是支付宝自动检测到你的商户号异常,给限制了,
会给你发个解开限制的短信操作指引
您好!请您按以下路径,支付宝APP首页搜索"支付宝安全中心"-进入【安全中心】小程序-【解除账号限制】,按页面提示进行操作。 感谢您的支持!【支付宝】
用手机登录商户的支付宝,按照上面步骤操作,可能需要法人扫脸
就可以成功支付了
2.手机网站支付提示操作已超时,请重新发起支付
这个问题很操蛋啦,也有官方说明文档https://opensupport.alipay.com/support/helpcenter/93/201602484768?ant_source=zsearch
但是并不是文档中说的问题,参数也对,第二点说的也含含糊糊,没说清楚
根本原因就是:同时按照了支付宝和沙箱钱包两个APP造成的,真实环境就卸载沙箱钱包就可以了
其它就是配置错误,秘钥私钥的把人给整晕了
还有其它错误,忘记了,总之曲折了好久
另外支付宝支付的过程是这样的
图二中间页是必须会出现的,但是会自动跳转到图三,时间间隔很快,手机网站支付接口这个中间页面无法去掉的
是先进入中间页再唤起支付宝app,您网页在浏览器直接访问打开一般都是直接唤起的,不需要点击,当没唤起时才需要用户点击
如果出现需要点击的情况,可能是因为
这一点不同于微信支付唤起页面
另外关于支付宝的问题需要找人工客服,不知道去哪里找,打客服电话95188客服都不是技术,会给你发个短信
您好!亲爱的商户:技术联系方式: 点击链接:https://open.alipay.com/support/supportCenter.htm 人工客服服务时间是:周一至周日9:00-22:00! 感谢您的支持!【支付宝】
打开地址,你会发现还是无法找到人工客服的电话之类的
只有底下这个智能在线,还是电脑人
只有输入关键字:人工客服,才能调出活人来
这里面才能找到人工客服进行对话!
希望对你的支付宝开发有所帮助,如有如有疑问可以评论!