支付宝app支付服务端流程

支付宝APP支付服务端详解

前面接了微信支付,相比微信支付,支付宝APP支付提供了支付封装类,下面将实现支付宝APP支付、订单查询、支付结果异步通知、APP支付申请参数说明,以及服务端返回APP端发起支付的签名、商户私钥、支付宝公钥的配置使用等。

支付注意事项

1、APP支付不能在沙箱测试、只能申请上线测试 
2、需要创建RSA密钥设置文档,设置后上传rsa_public_key.pem【开发者公钥,上传时需要去掉公钥的头和尾】上传成功后换取支付宝公钥,为项目的alipay_public_key.pem 
3、rsa_private_key_pkcs8.pem【开发者私钥】,去掉头和尾为项目的alipay_private_key_pkcs8.pem 
4、需要导入所需支付包:alipay-sdk-java.jar 和 commons-logging.jar,具体参考:服务端SDK

支付流程

支付文档参考:支付文档支付文档2

APP支付:服务器端按照文档【统一收单交易支付接口】创建支付OrderStr返回APP端——-APP端拿到OrderStr发起支付—–支付宝服务器端回调服务端异步通知接口——-服务器端按照【App支付结果异步通知】校验签名等做业务逻辑处理

APP支付订单查询:服务器端调用【统一收单线下交易查询】查询支付订单

APP支付申请退款:每笔支付可以申请多次退款,但退款总金额不能超过支付金额,调用【统一收单交易退款接口】发起退款申请

APP支付退款查询:服务端调用【 统一收单交易退款查询】查询退款订单信息

 

 

以上为转载。

 

在具体开发的时候会出现一些问题。总结一下:

问题1:生成密钥的问题

密钥有3个。

 

 

密钥生成见支付宝帮助文档,地址是  https://doc.open.alipay.com/doc2/detail.htm?treeId=193&articleId=105310&docType=1

我在使用WIN10系统使用方式1生成的时候,点击解压打开文件夹,直接运行“支付宝RAS密钥生成器SHAwithRSA1024_V1.0.bat”。他是啥都没有生成,然后我又自作聪明跑到  secret_key_tools_RSA_win\RSA\openssl 目录下运行生成公钥.bat , 生成公钥私钥转换PCKS8.bat , 私钥转换PCKS8.bat 批处理文件。(secret_key_tools_RSA_win.zip解压后的文件夹名)

结果是,还是有问题。

后来同事用方式1,但是改成苹果笔记本生成就好了。

好是怎么验证出来的呢?

打开 https://openhome.alipay.com/platform/detailApp.htm?appId=2016111602874881&tab=appSetting  地址,

在左边的导航栏里面选择,应用环境——》接口加签方式  打开下面的窗口。

在第三步下载签名检验的工具,将生成的密钥放入左侧,然后生成签名后,再放入第三步的窗口中进行验证看是否正确。校验通过,则说明公钥和私钥生成成功。

 

 

 

 

 

 

另附全java服务端和客户端支付宝支付demo:https://pan.baidu.com/s/1kVqmVXX

 

posted @ 2017-07-13 17:15  陈扬天  阅读(1741)  评论(0编辑  收藏  举报