Prestashop PayPal错误

时间:2018-03-03 23:15:18

标签: paypal prestashop paypal-sandbox braintree prestashop-1.7

我正在尝试使用PayPal & Braintree Official Module(v3.11.6)在Prestashop(v1.7.3)商店中添加PayPal付款,但直到现在还没有成功。

安装并配置模块没有任何问题,但每次我继续付款时,都会向用户显示此错误:

enter image description here

在沙箱和生产环境中测试模块,错误仍然存​​在。

可能是什么问题?

更新:经过一些调试后,我找到了问题的根源。问题是模块无法通过带有SSL / TLS的cURL连接到PayPal的API。 我在Windows Server中使用Prestashop和IIS,在此环境中,必须通知cURL证书颁发机构所在的位置以建立安全连接。 我从curl website下载了cacert.pem文件,将其存储在我的服务器中,然后在模块文件(PPHtmlConfig.php)中我手动在cURL选项设置中添加了CA位置:

CURLOPT_CAINFO => 'C:\\(...)\\cacert.pem',

现在我可以连接到PayPal的API并成功付款!

我已经联系过该模块的技术支持团队,他们正在分析这个问题。

1 个答案:

答案 0 :(得分:0)

在与模块技术支持部门多次接触后,这是他们对该问题的最终回应:

  

我们不知道您服务器的特性。这不是经常性的   我们模块中的错误。如果CURL找不到CA,则会发生这种情况   证书。一般情况下,我们建议您要求您的服务器进行验证   CA证书已正确配置。否则就是   必须指定路由或curl来查找证书,for   例如,正如您在模块中所做的那样。

     

目前我们的模块中无法指定此内容   一般。因此,您应该等待Paypal模块的下一次更新。

因此,如果在使用Windows Server环境时遇到同样的问题,请在模块文件中指定完整的CA路径(如问题更新中所述):

  

我从curl网站下载了cacert.pem文件,将其存储在我的   服务器然后,在模块文件(PPHtmlConfig.php)中我添加了CA.   手动在cURL选项设置中的位置:

CURLOPT_CAINFO => 'C:\\(...)\\cacert.pem',