支付宝的App支付
支付宝商家中心:https://b.alipay.com/signing/productSet.htm?navKey=all
App支付的介绍
支付宝的app支付,是支付宝2016年8月新推出的一种新型的移动支付方式,相对应的老版本叫“移动支付”
App支付与移动支付的区别:
(1)请求网关不一样
移动支付请求支付宝的网关地址为:https://mapi.alipay.com/gateway.do
App支付请求支付宝的网关地址为:https://openapi.alipay.com/gateway.do
(2)签名方式
移动支付仅支持RSA签名方式,App支付支持RSA和RSA2两种签名方法
(3)商户公钥上传入口不一样
移动支付:在“mapi网关产品密钥”入口上传并获取支付宝公钥
App支付:在“开放平台密钥”入口上传并获取支付宝公钥
(4)移动支付接口产生的交易,可以通过app支付的查询接口(alipay.trade.query)进行查询。但是可能会缺少receipt_amount等信息。如果想通过App支付查询接口(alipay.trade.query)进行查询,必须从移动支付接口升级改签为app支付接口(改签方法可以参见 app支付签约)
(5)移动支付改签到app支付,原移动支付的退款接口会失效!如果希望延用原来的移动支付退款接口(refund_fastpay_by_platform_nopwd,refund_fastpay_by_platform_pwd)请联系您的业务经理签约即时到账无密退款的产品,如果没有可联系的支付宝业务经理,请直接使用的新的退款接口(alipay.trade.refund)来替代原来的老退款接口!
移动支付和App支付目前仅支持Android版沙箱联调(测试环境)。支付宝沙箱版钱包:https://sandbox.alipaydev.com/user/downloadApp.htm
开发流程
(1)创建应用,在开放平台的“开发者中心”里,创建一个应用,并签约app支付功能,获取应用的APPID
(2)登录蚂蚁金服开放平台https://www.ant-open.com
–> 开发文档 –> app支付
有比较完整的app支付开发流程。相应的文档都可以从这里下载到,如:支付宝logo素材、客户端SDK及DEMO、密钥工具等等
(3)使用密钥工具生成一对RSA2私钥和公钥
将公钥上传至创建应用中的 RSA2(SHA256)密钥上,app支付推荐使用RSA2。公钥上传之后,会获取相应的“支付宝公钥”。这里需要注意,旧版本的移动支付,所有的支付宝公钥都是一样的,而app支付则不是。将支付宝公钥保存至本地,后面代码中将会用私钥对参数进行签名,而在回调函数中,使用支付宝公钥对返回的结果进行验签;建议在使用私钥和支付宝公钥时,不要直接在代码中显示,利用I/O的方法读取文件获取较为安全;另外需要提醒的是,某些签名和验签的方法,可能需要要求私钥和公钥有一定的开始和结束标识,不然会报错:
-----BEGIN PUBLIC KEY-----
xxxxxx
-----END PUBLIC KEY-----
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/04/01/alipay-app-payment/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
共有 0 条评论