设置paypal
默认是不需要使用证书的,也就是 use_local_certs 设置为false,如果您想要使用https的方式与paypal进行通信,那么,需要使用证书
如果您为了更加安全,想使用证书的方式,那么设置 use_local_certs 为true,
下面是详细步骤(如果您use_local_certs 设置为false,则不需要操作下面的步骤):
首先需要下载证书,我本地是沙盒环境,下载的是沙盒环境的证书:
1.下载https的证书【下面都是在沙盒地址的方式】
在www.sandbox.paypal.com
,打开火狐浏览器访问地址:https://www.sandbox.paypal.com/cgi-bin/webscr,
在火狐浏览器下,下载证书的步骤如图:
下载的证书,在配置文件:@common/config/fecshop_local_services/Payment.php
中配置证书路径,
可以先用ftp上传到fecshop下面的路径
,譬如下载的证书为wwwsandboxpaypalcom.crt
,ftp上传到@common/config/payment/paypal/cert/wwwsandboxpaypalcom.crt
,
那么将配置中,crt_file
下面 www.sandbox.paypal.com
对应的值改成@common/config/payment/paypal/cert/wwwsandboxpaypalcom.crt
即可
'paypal' => [
/**
* paypal 主账户可以绑定多个子账户,每个子账户一个邮箱,在网站付款后
* 将相应的子账户的email呈现给买家
* 可以通过下面指定这个账户呈现给买家的收款paypal email
* **如果** 您的paypal只有一个emial,这个部分为空即可,默认为空,不需要填写。
*/
'seller_email' => '', //譬如:payment@fecshop.com
'express_payment_method' => 'paypal_express',
'standard_payment_method' => 'paypal_standard',
'version' => '109.0',
// 是否使用证书的方式进行paypal api对接(https ssl)
// 如果配置为true,那么必须在crt_file中配置证书地址。
// 默认不使用证书验证
'use_local_certs' => false,
'crt_file' => [
'www.paypal.com' => '@common/config/payment/paypal/cert/paypal.crt',
'api-3t.paypal.com' => '@common/config/payment/paypal/cert/api-3tsandboxpaypalcom.crt',
],
],
也就是将use_local_certs
设置成true,然后 在crt_file
中设置相应的crt文件。
一般,不用https的方式,用默认的就行,如果您想开启https的方式,就可以按照上面的步骤操作。
2. api-3t.sandbox.paypal.com
,打开火狐浏览器访问地址:https://api-3t.sandbox.paypal.com/nvp
后面的步骤参看第一步。
另外注意,沙盒地址和线上paypal地址是不一样的,您需要去线上地址下载证书
,并上传,需要把上面的沙盒地址改成正式地址,也就是去掉url中的sandbox,
譬如沙盒地址:https://api-3t.sandbox.paypal.com/nvp
对应的线上地址为:
https://api-3t.paypal.com/nvp