前言
公司一个网站项目有国外的用户给我们发邮件希望能用paypal支付,于是交给了我,我们这个项目两年前是有对接paypal通道的,但是一直没有开放,测试测了并不能完成付款流程。
看paypal官方是最近有出一个新的sdk,老的应该不在支持更新了,于是打算用新的SDK重新对接,新的github地址:https://github.com/paypal/Checkout-PHP-SDK/。
这个项目使用的是thinkphp5框架,但是其他框架使用方法也都差不多。
本文只是随笔记录,如果能帮到其他朋友最好,如果有哪里错误或者有疑问的可以在评论区指出,我看到会及时回复的!!!
准备
测试账户登录https://developer.paypal.com开发者中心
点开并创建新的App,注意这里分sanbox沙盒环境和live环境,沙盒环境可以创建测试付款和收款账户,live是正式环境的。
左侧account可以会有默认的商家账户和普通用户,可以用来沙盒环境测试。
遇到的坑
沙盒环境下用户能扣款,也能收到通知,但是商家账户没有收款记录,发邮件给paypal,说是他们帮我确认下收款邮箱了,然后再试就可以了。
正式环境下国内大陆的paypal账户不能给国内大陆的收款账户付款,但是用visa等信用卡可以选择香港地区进行付款
对接流程
composer.json添加“paypal/Checkout-PHP-SDK”之后执行 composer update paypal/Checkout-PHP-SDK 记得要带包名,不然所有的包全都更新到最新版了
更新好之后会发现vendor目录多了两个包
并且有写好的demo
我们目前需要使用的是发起订单,订单扣款,以及订单退款。
发起订单
case