对接支付宝接口流程(沙箱环境)
文章目录
欢迎技术交流,QQ:569265915,添加了与SpringBoot整合的实例 1
1 配置沙箱环境
1.1 入驻开放平台
- 进入蚂蚁金服开放平台登录界面,入口:link,使用支付宝扫码支付。
- 登录成功后,选择自由开发者->开始入驻。
- 完善信息。
- 同意协议。
- 开发者中心->研发服务。开发者中心->研发服务。开发者中心->研发服务。开发者中心->研发服务。
- 可以看到系统给我们提供了沙箱应用,沙箱账号,沙箱工具等服务。注意这句话:为保证沙箱长期稳定,每周日中午12点至每周一中午12点沙箱环境进行维护,期间可能出现不可用,敬请谅解。
- 点击沙箱账号,这里有个系统提供的商家信息、买家信息,到时候测试能用到。
- 点击沙箱工具,点击沙箱版钱包(目前只有安卓版),扫描后安装到手机上,使用上一步说账号登录看看。
1.2 下载官方DEMO
- 点击沙箱应用页面中的沙箱当面付接入引导,下载SDK。
- 当面付DEMO,自己选择版本,我选择JAVA版。
- 下载好DEMO后解压,使用Eclipse或者IDEA进行导入,我用IDEA。
- 直接open节后后F2FPay_Demo_Java文件夹下的TradePayDemo。删除圈出来的文件(个人习惯)。
1.3 配置DEMO中的zfbinfo.properties
- 先配置1、2、3项。
配置文件中1、2、3对应沙箱应用截图中1、2、3。
- 配置RSA私钥、公钥和支付宝公钥。
第一、点击设置应用公匙。
第二、点击设置应用公匙。
第三、点击查看密钥生成方法
第四、点击下载对应工具。
第五、解压下载好的工具,点击以下运行程序。
第六、点击生成密匙。
复制私钥到__zfbinfo.properties__中的__private_key__,复制公钥到__zfbinfo.properties__中的__public_key__
复制公钥到沙箱应用应用公钥,点击保存。
然后页面会刷新,点击查看支付宝公钥
复制查看内容,填写到__alipay_public_key__
至此,zfbinfo.properties配置文件修改好了。 - 商户部分应用网关跟支付宝网关保持一致,授权回调地址后期添加。
2 测试
2.1 运行Main.java,控制台输出如下,测试成功
十一月 02, 2018 12:26:28 下午 com.alipay.demo.trade.config.Configs init
信息: 配置文件名: zfbinfo.properties
十一月 02, 2018 12:26:28 下午 com.alipay.demo.trade.config.Configs init
信息: Configs{支付宝openapi网关: https://openapi.alipaydev.com/gateway.do
, 支付宝mcloudapi网关域名: http://mcloudmonitor.com/gateway.do
, pid: 2088102176529960
, appid: 2016092000557923
, 商户RSA私钥: MIIEvA******yZsA==
, 商户RSA公钥: MIIBIj******IDAQAB
, 支付宝RSA公钥: MIIBIj******IDAQAB
, 签名类型: RSA2
, 查询重试次数: 5
, 查询间隔(毫秒): 5000
, 撤销尝试次数: 3
, 撤销重试间隔(毫秒): 2000
, 交易保障调度延迟(秒): 5
, 交易保障调度间隔(秒): 900
}
十一月 02, 2018 12:26:28 下午 com.alipay.demo.trade.service.impl.AbsAlipayTradeService tradePrecreate
信息: trade.precreate bizContent:{"out_trade_no":"tradeprecreate15411327883825138848","seller_id":"","total_amount":"0.01","undiscountable_amount":"0","subject":"xxx品牌xxx门店当面付扫码消费","body":"购买商品3件共20.00元","goods_detail":[{"goods_id":"goods_id001","goods_name":"xxx小面包","quantity":1,"price":"10"},{"goods_id":"goods_id002","goods_name":"xxx牙刷","quantity":2,"price":"5"}],"operator_id":"test_operator_id","store_id":"test_store_id","extend_params":{"sys_service_provider_id":"2088100200300400500"},"timeout_express":"120m"}
十一月 02, 2018 12:26:30 下午 com.alipay.api.internal.util.AlipayLogger logBizSummary
信息: Summary^_^10000^_^null^_^ProtocalMustParams:charset=utf-8&method=alipay.trade.precreate&sign=eU/2GWboeBFjtSMvuZB6pX4tdGdWNRocbjCno/NwZhe2f8T+ljo/+UbgJA1UXo/1LU5F7TGQgla1RLXNlh9Oa1esCx1HdGHlqb9r/PSA6VtJAuOr055IeZ/V6IBmSeMTwFBX7DFbrHbar4WzerqIXjvjZGIHCkCqdq5XjWKUgD2V605OMDXwAgQVtU/13TOflkygBjxrJx2/sdQyvGSttnr3rSf8ROCCqBkRjbXVALLEcp2lUA0SoJ7gn3YLMSIjZTnIEogaB8md+b+49aTq7cw7KVrmG5mDSKLPa1mn1pj6kkjP6Jek8VH4GJlHdVQiHjuvXx+fqoCAyBMv35TwfA==&version=1.0&app_id=2016092000557923&sign_type=RSA2×tamp=2018-11-02 12:26:28^_^ProtocalOptParams:alipay_sdk=alipay-sdk-java-3.3.0&format=json^_^ApplicationParams:biz_content={"out_trade_no":"tradeprecreate15411327883825138848","seller_id":"","total_amount":"0.01","undiscountable_amount":"0","subject":"xxx品牌xxx门店当面付扫码消费","body":"购买商品3件共20.00元","goods_detail":[{"goods_id":"goods_id001","goods_name":"xxx小面包","quantity":1,"price":"10"},{"goods_id":"goods_id002","goods_name":"xxx牙刷","quantity":2,"price":"5"}],"operator_id":"test_operator_id","store_id":"test_store_id","extend_params":{"sys_service_provider_id":"2088100200300400500"},"timeout_express":"120m"}^_^883ms,797ms,56ms
十一月 02, 2018 12:26:30 下午 com.alipay.demo.trade.service.impl.AbsAlipayService getResponse
信息: {"alipay_trade_precreate_response":{"code":"10000","msg":"Success","out_trade_no":"tradeprecreate15411327883825138848","qr_code":"https:\/\/qr.alipay.com\/bax020234ydxaolw6ftp0006"},"sign":"xeK8w2spKOKsXe9gglnacZGEE4zN2g6/XgsZeP4X38uBqTnNoc0MtoI5oTiURyhZYro75gNnDilGh72ZHVMPfKwHNnqwSxkbb03+TAlnKUiQy0seMqD7/TiyNv5dA34kgpZpsa+hMPUFgQl0spAYLn9qp60xHzkwmsvq6omVnAFkSNhgOG5Btpqca4/JqbEV02YH4xYk8c06s8HHbp0vAy0qMPlrM6GWyuTLbFQ57dABl2zFsZF26lf+Zt3i7hEvM72/Ma88fVB5jchH2gZ8rtL96xtOKvUALIcxvdPpt8zIuShMSi4F9Xy/F3OsmDHKkergy7azUev+EaXhxyya2g=="}
十一月 02, 2018 12:26:30 下午 com.alipay.demo.trade.Main test_trade_precreate
信息: 支付宝预下单成功: )
十一月 02, 2018 12:26:30 下午 com.alipay.demo.trade.Main dumpResponse
信息: code:10000, msg:Success
十一月 02, 2018 12:26:30 下午 com.alipay.demo.trade.Main dumpResponse
信息: body:{"alipay_trade_precreate_response":{"code":"10000","msg":"Success","out_trade_no":"tradeprecreate15411327883825138848","qr_code":"https:\/\/qr.alipay.com\/bax020234ydxaolw6ftp0006"},"sign":"xeK8w2spKOKsXe9gglnacZGEE4zN2g6/XgsZeP4X38uBqTnNoc0MtoI5oTiURyhZYro75gNnDilGh72ZHVMPfKwHNnqwSxkbb03+TAlnKUiQy0seMqD7/TiyNv5dA34kgpZpsa+hMPUFgQl0spAYLn9qp60xHzkwmsvq6omVnAFkSNhgOG5Btpqca4/JqbEV02YH4xYk8c06s8HHbp0vAy0qMPlrM6GWyuTLbFQ57dABl2zFsZF26lf+Zt3i7hEvM72/Ma88fVB5jchH2gZ8rtL96xtOKvUALIcxvdPpt8zIuShMSi4F9Xy/F3OsmDHKkergy7azUev+EaXhxyya2g=="}
十一月 02, 2018 12:26:30 下午 com.alipay.demo.trade.Main test_trade_precreate
信息: filePath:/Users/sudo/Desktop/qr-tradeprecreate15411327883825138848.png
2.2 查看返回信息
{
"alipay_trade_precreate_response": {
"code": "10000",
"msg": "Success",
"out_trade_no": "tradeprecreate15411327883825138848",
"qr_code": "https:\/\/qr.alipay.com\/bax020234ydxaolw6ftp0006"
},
"sign": "xeK8w2spKOKsXe9gglnacZGEE4zN2g6/XgsZeP4X38uBqTnNoc0MtoI5oTiURyhZYro75gNnDilGh72ZHVMPfKwHNnqwSxkbb03+TAlnKUiQy0seMqD7/TiyNv5dA34kgpZpsa+hMPUFgQl0spAYLn9qp60xHzkwmsvq6omVnAFkSNhgOG5Btpqca4/JqbEV02YH4xYk8c06s8HHbp0vAy0qMPlrM6GWyuTLbFQ57dABl2zFsZF26lf+Zt3i7hEvM72/Ma88fVB5jchH2gZ8rtL96xtOKvUALIcxvdPpt8zIuShMSi4F9Xy/F3OsmDHKkergy7azUev+EaXhxyya2g=="
}
复制qr_code,在线生成二维码
登录买家账号,扫码便可以完成交易。
3 整合SpringBoot完整跳转实例
克隆代码后直接运行,输入:localhost:8080
只有把命运掌握在自己手中,从今天起开始努力,即使暂时看不到希望,也要相信自己。因为比你牛几倍的人,依然在努力。