最近一个海外项目需要paypal支付,之前没弄过,着实费了一番功夫,最终把paypal快速结账集成进了项目中去,现在用文档总结下。整的时候感觉很难,各种找资料,等真正整出来后,发现也就那样了。下面是整个代码:
1、说下快速结账的整个流程, PayPal快速结账 :此种方式是paypal推荐的最佳集成网站付款解决方案。
2、开始快捷支付:
a.创建主账号(已有)
b.登陆主账号,创建买家账号
c.创建卖家账号(创建详细过程请参见文档PayPal测试环境使用指南_PayPal_Sandbox_Guide_中文版.pdf)
d.登陆卖家测试账号(https://www.sandbox.paypal.com)
e.申请API,如下图
3、创建前台的支付方式(具体怎么写我就不说了,我写下调用paypal接口的方法代码)
、先调用setExpressCheckout接口,将订单信息送到paypal那边去(具体参数参考PayPal_EC_NVP_Guide_CN_V2.0.pdf,可以根据自己的需求设置相应的参数),并得到TOKEN(该TOKEN在后面的两个接口都会用到),代码参考ExpressCheckout.java中的setExpressCheckout方法。
paypal页面,并展示设置的订单信息如下:
、确定支付后回回调到a步骤设置的回调地址并调用getExpressCheckoutDetails接口(接口需要的参数参考PayPal_EC_NVP_Guide_CN_V2.0.pdf)获取到从paypal传过来的一些信息(比如收货地址和支付用户的信息),并跳转到订单确认页(调用代码参考ExpressCheckout.java中的getExpressCheckoutDetails方法)。
、用户确认了自己购买的信息后,确定支付后调用doExpressCheckoutPayment接口支付了,这个时候就只是在自己的网站上,通过该支付接口返回的支付是否成功来进行跳转到自己网站的结果页(调用代码参考ExpressCheckout.java中的doExpressCheckoutPayment方法)。
至此paypal快速结账就集成完成了。
jar包及文档压缩放在一起,大家可以找找。