对于小网站而言,网站如果收款是个学问,通常是不愿意通过用正规企业收款来实现,比如微信支付需要300一年的认证费用。那很多小网站一年都没几笔收入,所以一些旁门左道就来了。
这里我举个例子,网站也可以通过个人收款码收款。实现原理,在微信上生成一个固定额度的收款码,放在网页上让人扫码,别人付款后通过监听微信消息做回调处理
1、本机或服务器安装rabbit-wx-frame: 兔TO微信框架,完全免费、稳定
安装好后,你就能监听到微信消息了
核心处理代码如下:
Node appmsgNode = doc.getElementsByTagName("msg").item(0);
if (appmsgNode!=null&&appmsgNode.getNodeType() == Node.ELEMENT_NODE) {
Element appmsgElement = (Element) appmsgNode;
Element wcpayinfoElement = (Element) appmsgElement.getElementsByTagName("wcpayinfo").item(0);
if(wcpayinfoElement!=null) {
String transferId = wcpayinfoElement.getElementsByTagName("transferid").item(0).getTextContent();
//System.out.println("Transfer ID: " + transferId);
// 提取receiver_username
String receiverUsername = wcpayinfoElement.getElementsByTagName("receiver_username").item(0).getTextContent();
OpenAiUtils.getMoney(msgType, receiverUsername, transferId);
//System.out.println("Receiver Username: " + receiverUsername);
String feedesc = getElementValue(wcpayinfoElement, "feedesc").replace("¥", "");
//System.out.println("Feed Description: " + feedesc);
WechatUser wu = WechatUserDao.findBywxId(sender);
wu.setMoney( wu.getMoney().add(new BigDecimal(feedesc)));
boolean flag = WechatUserDao.update(wu);
if(flag) {
OpenAiUtils.sendTxt(7, wxId, "充值成功,余额为:"+wu.getMoney()+"元");
}
//查看是否订单
Order order = OrderDao.findByPay(StringUtils.changeF2Y(Long.valueOf(feedesc)));
if(order!=null) {
order.setStatus(1);
order.setPayStatus(1);
OrderDao.update(order);
}
}else {
NodeList desNodes = doc.getElementsByTagName("des");
if (desNodes.getLength() > 0) {
Element desElement = (Element) desNodes.item(0);
String textContent = desElement.getTextContent();
// 查找收款金额
int startIndex = textContent.indexOf("收款金额¥");
if (startIndex != -1) {
String amountStr = textContent.substring(startIndex + 5, startIndex + 9); // "¥"后面跟4个字符
Order order = OrderDao.findByPay(amountStr);
if(order!=null) {
//order.setStatus(1);
order.setPayStatus(1);
OrderDao.update(order);
}
}
}
}
}
然后在网站放上微信收款二维码,示例连接如下:蓝色风格保险服务公司HTML5网站模板免费下载 - 模板之家蓝色风格保险服务公司HTML5网站模板是一款提供人寿保险、健康保险、汽车保险和家庭保险等服务公司宣传网站模板下载。提示:本模板调用到谷歌字体库,可能会出现页面打开比较缓慢。https://www.mbzj.net/article/view/639点击 进去可以看到,右上角一有个在线购买
点击后,展示付款二维码
支付完成调用前面的微信代码回调显示下载地址