支付宝接入文档整理
第三方支付
第三方支付是指具备一定实力和信誉保障的独立机构,采用与各大银行签约的方式,通过与银行支付结算系统接口对接而促成交易双方进行交易的网络支付模式,如:支付宝,微信支付,百度钱包,PayPal;
-
优点
- 支付平台降低了政府、企业、事业单位直连银行的成本,满足了企业专注发展在线业务的收付要求;
- 使用方便,对支付者而言,他所面对的是友好的界面,不必考虑背后复杂的技术操作过程;
-
缺点
- 风险问题,在电子支付流程中,资金都会在第三方支付服务商处滞留即出现所谓的资金沉淀,如缺乏有效的流动性管理,则可能存在资金安全和支付的风险;
- 电子支付经营资格的认知、保护和发展问题;
聚合支付
-
聚合支付也叫第四方支付,是相对之前的第三方支付而言的,作为对第三方支付平台服务的拓展,第三方支付是介于银行和商户之间的,而聚合支付是介于第三方支付和商户之间;
-
出现的场景
- 一堆第三方支付出现,并通过大量的钱补贴线上商家使用它们的支付,导致商户收银台堆满各种,POS机器,扫码设备,商户还需要去各家支付公司申请账号,结算等;
- 聚合支付产品,其实聚合的是一种支付能力(支付宝支付、微信支付、百度钱包等),将这些收款能力聚合在一起,统一打包提供给电商网站或一些线下商家;
-
解决的问题
- 聚合支付公司提供的二维码,支付多种方式支付,不再是一种,各个公司的竞争,就是支付渠道和方式的支持;
支付宝申请
蚂蚁金服开放平台
- 地址:https://openhome.alipay.com/docCenter/docCenter.htm
- 介绍:https://opendocs.alipay.com/open/200/105304
网页移动应用开发指南
- 地址:https://opendocs.alipay.com/open/200
- 申请应用:https://openhome.alipay.com/platform/developerIndex.htm
同一收单交易支付接口
调用支付接口的时候需要传入超时时间这个参数,对于二次支付的时候,假如设置订单的过期时间为30分钟,此时创建订单设置的过期时间还剩下10分钟,再过了15分钟进行支付,此时的订单的状态是被MQ置为取消,但是二次支付时设置的过期时间还是30分钟,支付还是可以成功,因此会出现订单状态被后台取消,但是支付还是成功的问题;由于创建订单的时间是临界点,需要获取订单创建到现在的时间,如每次调用再次支付时将订单创建到现在的时间稍微加上一点延长,之后设置给timeout_express这个参数;
上面这些是需要上传对应的资料进行审核;
支付宝沙箱环境
如果只是进行接口开发测试,可使用支付宝的沙箱环境;
沙箱环境 (Beta) 是协助开发者进行接口功能开发及主要功能联调的辅助环境;在开发者应用上线审核前,开发者可以根据自身需求,先在沙箱环境中了解、组合和调试各种开放接口,进行开发调试工作,从而帮助开发者在应用上线审核完成后,能更快速、更顺利的完成线上调试和验收;
文档地址:https://opendocs.alipay.com/open/200/105311
沙箱地址:https://openhome.alipay.com/platform/appDaily.htm?tab=info
支付接入:有时不稳定,或者一直报错等等,一般就是支付宝沙箱环境问题;
在沙箱应用中,添加对应的密钥,回调地址等信息;
密钥工具:https://miniu.alipay.com/keytool/create
支付宝异步通知说明:https://opensupport.alipay.com/support/helpcenter/193/201602472200?ant_source=opendoc#anchor__6
应用对接支付宝加密的流程大致如下:
支付宝服务端接入流程:https://opendocs.alipay.com/open/203/105285
其中手机网站支付文档地址:https://opendocs.alipay.com/apis/api_1/alipay.trade.wap.pay?scene=API002020081300013628
关于使用开发平台SDK接入:https://opendocs.alipay.com/open/291/105974#%E4%BD%BF%E7%94%A8%E5%BC%80%E6%94%BE%E5%B9%B3%E5%8F%B0%20SDK%20%E6%8E%A5%E5%85%A5
沙箱环境的坑:
- 如果支付页面出现 "支付存在钓鱼风险" ,清空浏览器缓存,只开一个支付宝支付窗口;
- 每周日中午12点至每周一中午12点沙箱环境进行维护,期间可能出现不可用;