在中国的网络环境下使用paypal总会遇到一些奇奇怪怪的问题,有的问题运气好只出现一次,但有的问题因为网络环境的原因会成为顽疾,必须通过一些特殊手段加以解决。比如我今天在集成paypal到我新开的一个电子商务网站(wordpress+woocommmerce构建的)时就遇到了下面两个问题:
1. paypal无法完整关联woocommerce,后台提示“We could not complete the onboarding process. Some features, such as card processing, will not be available. To fix this, please try again.”
这种情况下就不能再依靠woocommerce的自动关联机制,而需要手动关联paypal账户了(我注册的是企业账户,个人账户的话界面可能也差不多)。打开 https://developer.paypal.com/dashboard/applications/live 如图:
箭头所指,点开MyApp_Woocommerce (这是之前关联失败,由woocommerce自动生成的一个网页应用)。得到下面这个界面:
注意三个箭头。首先保证是live状态而不是sandebox状态。然后需要复制ClientID 和 Secret,保存在你的剪贴板或者记事本里。
然后点开下面这个链接:
https://www.paypal.com/businessmanage/account/aboutBusiness
如图:
在箭头所指之处找到商家号(Merchant ID),也复制下来保存在记事本。
然后进入你的网站后台,打开woocommerce设置,进入payment菜单,重新点击关联paypal (Configure your PayPal Payments account),这次手动关联,这次不要点那个蓝色的按钮了,而是点开箭头所指的链接Toggle to manual credential input 。如图:
在下面打开的表单里填写如下图所示的几个参数(在前面的过程中已经保存在你的记事本中了)
最后,按下蓝色的按钮 Save changes即可一步关联paypal账户成功!
2. 货币设置,在中国大陆的朋友,如果你设置你的店铺地址在中国大陆区域的话,woocommerce会默认你的收款货币为人民币元(CN¥)。那么在你测试支付的时候,你会发现paypal按钮无法显示在你的页面上,无论是产品单页还是购物车或是结算页面,要么不显示,要么无限转圈圈。经过我检查页面(F12)发现有一个js文件无法加载,而无法加载的js文件在浏览器中恰好显示CN¥加载有错误。这时,到woocommerce设置(setting)——通用(General)——货币选项(Currency options)将默认货币更换为其他币种,比如美元、欧元等。保存设置。再到前台看看,是不是paypal支付按钮立刻显示出来了?当然,支付结算也没有任何问题。
谢谢,困扰了好几天的问题解决了。