支付宝几口之条码支付,公司最近要开一家店铺,收银系统要本身来开发,由于配套的还有app,做为程序要,这下就苦逼了吧!本身用java写可视化界面就算了,还要去调用支付宝的支付接口和微信的支付接口,唉,没办法,下面就关于条码支付作一个记录吧!java
第一步:做为程序员,确定直接去看api,看到第一步,就知道要去注册一个企业帐号,固然要填写企业的信息(企业为的法人信息、营业执照,对公帐户信息(收钱)什么的..)程序员
第二部:注册成功以后,实名认证也作了(这里须要1到2天),固然继续研究支付宝的开发文档咯,按文档走,建立一个应用,个人应用叫“大头”,由于“测试应用”,支付宝典型不会让你经过的...编程
建立完了以后在你的应用列表里面就会有了,不过这时候是开发状态,在开发状态,他的接口只能在沙箱环境中使用,因此本人二话不说,直接上线,因而就有了下面的“菜叔叔”这个应用了,由于那个沙箱环境我去配过,没有成功,并且周末还罢工,因此果断放弃,windows
在这里我说一下,上线以前,须要把你用的条码支付的功能加上去,以下图:api
在功能里面是“当面付”,上线的时候须要,若是用于app,须要填写app的资料,好比安卓要填写安卓的应用签名和应用报名,苹果的要填写一个BxxxID,在开发的时候,这个id能够统一的,安卓这边的应用签名与应用包名我在下面补充。微信
这些都作完了以后,ok,咱们接下来要配置秘钥,通常状况,这里配置很差,条码支付都会报签名错误,并且还无头绪,由于你明明是按照文档走的,可是就是跑不通,我最开始的秘钥是下载的的支付宝提供的windows的秘钥生成工具,按照文档走,用的是2048的,java版(PKCS8)的,后来一炮程序的时候就出问题,老是报签名错误:app
上网去搜了,才发现,唉,仍是用openssl 工具靠谱,因而去网上下载了一个windows 64位的openssl 工具,下面会附上该工具的下载地址,若是是32位的朋友,就麻烦本身找一下咯!工具
下载好了,按照文档走,支付宝把命令写错了,该死,又不行测试
此次又上网去搜,在谷歌上找到了正确解法,以下:spa
下载openSSL工具:AMD64-Win64OpenSSL-0_9_8g.zip
随便解压到哪一个目录下,在该目录的地址栏输入cmd:
进入命令提示符,依次输入一下命令:
1.openssl genrsa -out rsa_private_key.pem 1024
2.openssl rsa -in rsa_private_key.pem -pubout -out rsa_public_key.pem
3.openssl pkcs8 -topk8 -nocrypt -inform PEM -in rsa_private_key.pem -outform PEM outform
注:非java编程,第3步就能够省略哈,若是是java,则须要转换,转换以后生成的数据记得copy保存到你的记事本文件或者其余,我是直接copy到我生成的那个私钥的文件里的..)
将这3步执行完了以后,你回到你的openssl 的解压路径下,会看到2个文件,以下所示:
ok,这时候就开始去配置你的 应用的应用环境了,主要是网关和回调地址,以及秘钥,上面我主要讲的秘钥,我先讲秘钥配置好,至于网关和回调地址下面说,在配置秘钥的时候又2中选择RSA和RSA2
在这里我一开始选择的支付宝推荐的RSA2,用它工具生成的秘钥,无论用,可是用上面的命令生成的秘钥又只是针对RSA的(我试着把1024改为了2048,发现仍是不行),因而就没有关RSA2了,果断用的RSA了,因此看起来我好想2个都配置了秘钥,可是我使用的倒是RSA:
完成以后就会生成支付宝公钥了,这2个在代码中都会用到,到这里,你的秘钥配置就结束了,下面讲一下网关的配置,这里主要是方便支付宝和咱们的程序交互
这里的网关和受权回调地址,我感受好像没什么影响,下次能够试一下不配置这个有没有关系,多是尚未研究好支付宝的接口文档,还不太清楚这里的网关和受权回调地址的含义,会继续去研究的。
好了,到这里你们都知道直接去下载demo运行了吧,demo里也说了只要把本身的数据更换上去就能够了(pid,appid,秘钥等等),在这里我要说一下填写秘钥的时候,若是是java编,要用以前转码以后的那串数据,以下:
还有一点给你们提示一下,不少用户不知道pid在哪里查,打开这个网址就能够查询了:https://e.alipay.com,登陆后,选择签约管理;
进去以后就就可查询了pid了。