博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
magento2 在香港用paypal
阅读量:7126 次
发布时间:2019-06-28

本文共 1800 字,大约阅读时间需要 6 分钟。

使用Website Payments Pro Hosted Solution

现在paypal变复杂了,支付解决方案相当多,而且一些国家只能用特定的解决方案。以香港为例,不能使用payflow pro了,只能使用Website Payments Pro Hosted Solution,这在magento 1.x上使用还需要安装组件才能支持,现在2.x与paypal高度集成,已经存在Website Payments Pro Hosted Solution这个payment。但在新安装的magento2后台上很难发现这个payment,最初以为不存在,查过源代码才知道需要先选择Merchant Country为HK之后才会显示这个payment,这是挺人性化的设计,并不会搞错国家使用了不能使用的payment。

图片描述

Payment Action需要设置为Sale,这样可以自动收款。

TLSv1.2

由于paypal已经使用了TLSv1.2了,如果环境中不支持这个协议,过程就无法顺利。访问以下链接得到解决方案:

paypal sandbox

paypal提供了很完善的测试方案,只要有正式paypal帐号,都可以建立多个paypal sandbox帐号。

在以上地址创建sandbox商家帐号,如果是香港的务必在Country一栏选择Hong Kong,这一点很重要,使用什么支付解决方案完全取决于帐号所属地,需要跟magento2后台的Merchant Country一致。创建帐号后需要手动把帐号升级为pro

图片描述

把Classic TEST API Credentials里面的Username, Password, Signature都贴到magento2后台去,Website Payments Pro Hosted Solution就能使用。

payment review

Website Payments Pro Hosted Solution支付完成之后,后台的订单状态应该是processing,这说明订单已经确认收款了,但却出现payment review,这时需要到登录paypal商家帐号,在收到的订单中点确认收款,然后magento2的订单才会转为processing。

在我的案例中有两个原因:

  1. 在sandbox帐号里有Payment Review选择,这个需要设为No
    图片描述
  2. 由于在我的项目中使用的支付货币是英磅,而商家帐号默认是港币,所以不能自动收款,需要添加英磅这个货币才可以,可以通过以下链接添加:

cancel button

Website Payments Pro Hosted Solution默认没有cancel按钮,而商家帐号里可以设置cancel按钮,但设置后也不会出现。这是因为magento2使用的是iframe模式,在这个模式下cancel是不会出来的。要解决这个问题,恐怕需要修改程序了,我估计难度也不少。

IPN异常

如果paypal支付成功后order status仍然是pending payment,即有可能 Paypal IPN受阻,可以用以下方式排查:

  • 在paypal登录后到Edit Instant Payment Notification (IPN) settings页面,Notification URL:https://domain.com/paypal/ipn/index/ 并设置Receive IPN messages
  • 打开paypal debug选项,查 var/log/exception.log是否出现相关异常
  • 检查paypal IPN是否设置了disabled状态
  • 查paypal的交易历史记录以分析原因

测试卡号

技术支持

使用Website Payments Pro Hosted Solution的通过中出现很多问题,很多都是我无法解决的,但paypal support可以让我咨询技术上的问题,我是通过paypal support沟通多次后才能解决问题。一般一个工作天就会得到答复,有时候快的半天就有答复了。

不用担心英文不好难以沟通,我是用中文的。

声明

以上的内容是我在实际项目中得到的经验之谈,不一定都适合于所有情况,如果无法解决问题,最好直接咨询paypal support。如果内容有错,请留言提醒。

转载地址:http://yaeel.baihongyu.com/

你可能感兴趣的文章
1326: The contest(并查集+分组背包)
查看>>
编码规范(重要)
查看>>
drop有default constraint的column
查看>>
C# 异常类型
查看>>
C语言realloc,malloc,calloc的区别【转载】
查看>>
SQL中采用Newtonsoft.Json处理json字符串
查看>>
jspace2d——A free 2d multiplayer space shooter
查看>>
Form 重置记录编号(app_record.for_all_record)
查看>>
VC之美化界面(内容覆盖十分全面,经典)
查看>>
国外经典设计:12个漂亮的移动APP网站案例
查看>>
pl/sql programming 15 数据提取
查看>>
DBCP(一)数据源配置文件
查看>>
C++ map 映照容器
查看>>
重新想象 Windows 8 Store Apps (40) - 剪切板: 复制/粘贴文本, html, 图片, 文件
查看>>
[WinAPI] API 13 [遍历指定目录 打印文件和其他属性]
查看>>
字对齐、半字对齐、字节对齐的理解
查看>>
杀毒软件导致YourSQLDba备份失败
查看>>
struts2漏洞原理及解决办法
查看>>
利用cca进行fmri分析
查看>>
Oracle Dataguard之switchover
查看>>