经过近一周辛苦的编码、调试、实际支付测试, Alipay境外支付插件的Opencart版本发布了!支持Opencart 2.0及以上版本。

市场上虽然之前已经有了类似的支付模块,但发现多少都存在以下问题:

1,没有结算货币设置功能(结算货币是商户和支付宝协商的收款币种),虽然不设置结算货币,大多时候也可以支付,但不符合支付宝接口文档规范。
2,没有人民币"直传"功能,人民币直传指当客户订单货币为RMB(CNY)时,无需汇率转换,直接传递人民币金额到支付宝网关。
3,支付宝消息通知功能缺失,如遇网络故障,或者客户支付后没有跳转回商户网站,可能会导致漏单或者订单状态不同步问题。
4,没有支付日志功能,Log功能是记录支付过程中,支付插件和支付宝服务器通讯过程中的消息数据,当支付出现问题时候,可以查看日志信息,来快速查明原因。

由此,决定开发出一系列完善的Opencart支付宝模块。

Opencart Alipay Cross border Website Payment Extension境外支付插件模块

Opencart支付方式选择界面,采用最新的蓝色支付宝Logo图片

提交订单后,就跳转来到了支付宝收银台,支付宝采用国际即时汇率,自动将订单金额换算成人民币。Alipay Cross-border Payment属于即时到账交易。支付宝最近优化了收银台页面,重点突出手机钱包扫一扫支付,手机扫码后,输入支付宝支付密码,成功后就跳转回商户网站了。也可以点击右侧【登陆账户付款】,然后输入支付宝账户和密码登陆后支付。

我们的Opencart Cross-border Website Payment支付模块实现了支付宝异步通知功能,如果用户支付后,立即关闭了浏览器,或者突然网络中断、抑或是突然断电关机,没有按照正常逻辑跳转回商户网站,这时候,订单也会生成,同时订单状态也会正确更新为已付款!

Opencart网站支付成功页面。

Opencart网站管理员后台,订单列表,可以看到支付成功订单状态为: Proccessing

Opencart网站管理员后台,Order History界面,订单备注中包含有alipay notify字样,表示该订单是收到支付宝消息通知时建立的。正常情况下,在用户支付后跳转回网站前,支付宝消息通知已经领先一步到达商户网站所在服务器了。我们的支付插件,接收到通知消息后,就赶紧保存订单,并更新支付状态。

Opencart Cross-border Website Payment Extension参数设置界面。Settlement Currency是支付宝结算给商户的货币。Order Status是客户支付成功后的订单状态。Log功能是记录支付过程中,支付插件和支付宝服务器通讯过程中的消息数据,当支付出现问题时候,可以查看日志信息,来快速查明原因。