Magento微信支付接口开发小记

姗姗来迟的Magento微信支付接口插件

半年之前,有朋友网站需要接入微信支付,是Magento站,于是花费了近二周时间,研究微信开发文档、示例代码,并初步制作了个支付模块,不巧的是,朋友的微信支付接口账户没申请成功,这麻烦了,没实际账户测试,于是去微信开发平台准备申请个测试接口账户。遗憾的是这微信搞的东西太复杂,申请个测试账户也没下来,于是就耽搁了。

九月份的时候,上海一客户的网站购买了我们的支付宝模块,感觉很是满意,后来又问是否有微信的支付模块,客户的微信支付接口早已申请下来了,于是把之前开发的微信模块拿出来测试修改。 遇到了很多意想不到的问题,首先是微信支付分为四种:刷卡支付(线下)、扫码支付(PC网站)、公众号支付(微信中打开商户的H5页面)、APP支付(移动端支付),客户需要的微信扫码支付,而之前开发的是公众号支付,于是重新按照新的支付文档开发。

微信支付比支付宝复杂多了,示例代码也比较反人类。本来简单的流程,结果给编写的异常复杂,一些另类开发人员,通常喜欢把简单东西复杂化,炫耀技巧。示例代码中还有几处明显的错误,很快解决掉了,却恰恰有一隐藏的bug,搞的magento系统都崩溃了,百思不得其解,只好在可疑代码中一段一段排查,测试了20多个单,终于抓到了这罪魁祸首!libxml_disable_entity_loader(true); 就是这条代码,使用完要 libxml_disable_entity_loader(false); 关掉该选项才行。否则影响Magento XML解析,导致异常。

另外一个问题是,微信扫码后,不会自动跳转回网站,需要在扫一扫页面,增加个ajax每隔几秒钟循环检查支付是否成功,如果成功后,则跳转回网站来显示支付成功信息给用户,并清空购物车。顺带一提的是,微信扫码页面做的既精简又美观大方,是借用腾讯云的支付页面。最后在Magento中生成合适大小的二维码也花费了不少时间。

Magento支付方式选择界面

Magento微信支付模块-支付方式选择界面

Magento微信扫码支付界面

Magento微信支付模块-微信扫码支付界面

Magento微信支付通知

Magento微信支付模块-支付状态信息

Magento后台,微信接口账户设置界面

Magento微信支付模块-微信接口账户设置

原文:《Magento微信支付接口插件,Magento微信扫码支付(PC网站)精品呈现!》

关于:Alipaymate

转载于:https://my.oschina.net/u/2428823/blog/507557

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值