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微信支付模块-微信接口账户设置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/437719.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VMware安装出错-无法安装服务“VMware Authorization Service”,请确保您有足够的权限安装系统服务;centos7网络服务不可用,主ip地址:网络信息不可用

今天遇到一个bug,VMware突然网络服务不可用了,虚拟机里右上角有网络但是点开不显示网络的连接信息。也不能上网,不能ping通外网(百度) VMware下显示 主ip地址:网络信息不可用 尝试了重启网络,重…

Python 数据分析三剑客之 Matplotlib(七):饼状图的绘制

CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个…

访问网络共享时出现“拒绝访问”

今天公司副总说要我连接一下前面的打印机,二话不说,屁颠屁颠的就到现场了。虽然是简单的活,但也得去不是。 到老总计算机上 开始--运行 \\192.168.0.45 (装有打印的计算机,OS是XP系统!) 结果出…

zookeeper集群自动启动-关闭-查询的shell脚本

由于zookeeper启动需要在每台虚拟机都进行zkServer.sh start,很不方便,由此写个shell脚本来进行一个命令全部启动。 前提:配置好ssh免密登录,并且每台虚拟机都可以互通,没配置好的可以看下我的hadoop集群搭建里有免密…

Python 数据分析三剑客之 Matplotlib(八):等高线 / 等值线图的绘制

CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个…

【转】Office365完整离线安装包下载及自定义安装教程

Office365部署方法 概要提示: 全文内容归结起来其实也就2条命令 下载:D:\365\setup.exe /download D:\365\Configuration.xml(此命令为1条,不可以拆分为2行输入) 安装:D:\365\setup.exe /configure D:\3…

Python 数据分析三剑客之 Matplotlib(九):极区图 / 极坐标图 / 雷达图的绘制

CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个…

【转】中国式管理最有趣的地方,可能就在这些关键词之中

曾仕强老先生的中国式管理,就像中医中药,你说他对吗?根本不符合现代的科学逻辑,有些甚至荒诞。然而,即便这样,依然能西医所不能,这就是他的魅力。让我们一探究竟,对也好,…

Python 数据分析三剑客之 Matplotlib(十):3D 图的绘制

CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个…

Hbase学习-一步一步慢慢来

HBASE是一个分布式系统 其中有一个管理角色: HMaster(一般2台,一台active,一台backup)(我用的五台) 其他的数据节点角色: HRegionServer(很多台,看数据容量) 1.安装可以参考我的Hbase安装&…

Python 数据分析三剑客之 Matplotlib(十一):最常用最有价值的 50 个图表

CSDN 课程推荐:《Python 数据分析与挖掘》,讲师刘顺祥,浙江工商大学统计学硕士,数据分析师,曾担任唯品会大数据部担任数据分析师一职,负责支付环节的数据分析业务。曾与联想、亨氏、网鱼网咖等企业合作多个…

【转】Windows Server 2012 R2 双网卡绑定

双网卡绑定主要有以下两点好处: 1、实现网络容错:主主模式和主被模式 2、带宽聚合 首先准备工作需要两台虚拟机,Server01是目标服务器,需要有两块网卡,并且清空两块网卡的现有配置,Server02作为测试机。 …

解决Hbase输入list,创建表报错,输入status可以,org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: S

今天恢复了一下快照,然后hbase出现了问题 2019-08-25 00:59:55,810 INFO [RpcServer.default.FPBQ.Fifo.handler28,queue1,port16000] client.RpcRetryingCallerImpl: ,1 is not online on chun4,16020,1566665941494at org.apache.hadoop.hbase.regionserver.HRe…

Python 数据分析三剑客之 Pandas(一):认识 Pandas 及其 Series、DataFrame 对象

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

【转】通过第三方工具体验Microsoft Graph

上一篇文章我介绍了如何利用官方提供的Graph 浏览器快速体验Microsoft Graph强大功能,这是极好的起点。官方的Graph浏览器力图用最简单的方式帮助您使用Microsoft Graph,为此也隐藏了很多细节。为了帮助大家更好地理解Microsoft Graph的工作原理&#xf…

【转】通过Graph 浏览器体验Microsoft Graph

上一篇介绍了Microsoft Graph的基本概念,接下来我们快速体验一下Microsoft Graph到底能做什么? 为了帮助开发人员直观和快速体验Microsoft Graph的魅力,官方提供了一个专门的工具,叫做Graph 浏览器(Graph Explorer&am…

【转】wpf和winform的区别

WinForm是Net开发平台中对Windows Form的一种称谓。 WPF(Windows Presentation Foundation)是微软推出的基于Windows 的用户界面框架,属于.NET Framework 3.0的一部分。它提供了统一的编程模型、语言和框架,真正做到了分离界面设计…

sqoop(数据迁移工具)-安装-学习

sqoop 1)概述 sqoop是apache旗下一款“Hadoop和关系数据库服务器之间传送数据”的工具。 导入数据:MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统; 导出数据:从Hadoop的文件系统中导出数据到关系数…

Python 数据分析三剑客之 Pandas(六):GroupBy 数据分裂、应用与合并

CSDN 课程推荐:《迈向数据科学家:带你玩转Python数据分析》,讲师齐伟,苏州研途教育科技有限公司CTO,苏州大学应用统计专业硕士生指导委员会委员;已出版《跟老齐学Python:轻松入门》《跟老齐学Py…

错误: 找不到或无法加载主类 org.apache.flume.tools.GetJavaProperty

打开bin下的flume-ng 找到下面,添加红色框内容,即可 如果还有有关hbase的同样的错误(因为hadoop与hbase版本不兼容,更换我这里hadoop-2.7.7,hbase-2.0.6(一开始是2.1.5会出现这个错误)&#xff…