微信APP支付服务端开发Java版(一)

一、准备工作

去微信开发者中心下载(扫码支付,里面的大部分代码是可以用的)

https://pay.weixin.qq.com/wiki/doc/api/micropay.php?chapter=11_1

选择UTF-8的版本copy到你的项目里面

找到Configure.java的类修改成public static String PAY_API = "https://api.mch.weixin.qq.com/pay/unifiedorder";

下面正式进入代码部分

 1 //初始化配置信息
 2 WXPay.initSDKConfiguration(
 3                 "MsfsfsafsfsfdsafsfC",//商品平台上的密码
 4                 "wxb21618828c323242",//appid
 5                 "1234235",//商户ID
 6                 "",
 7                 "d:/apiclient_cert.p12",//证书,在商户平台上下载
 8                 //"/Users/Desktop/windowsserver/apiclient_cert.p12",
 9                 "3122421501");
10
11
12                             SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
13                             Date date1 = new Date();
14                             long datetime = date1.getTime()+3600*1000;
15                             String generateTime = dateFormat.format(date1);//yyyyMMddHHmmss  订单生成时间
16                             String failureTime = dateFormat.format(new Date(datetime));//yyyyMMddHHmmss  失效时间
17                             ScanPayReqData reqData = new ScanPayReqData(shopOrder.getHdbt(), "旅游商品",
18                                     shopOrder.getOrdercode(), priec,
19                                     "", "192.168.0.1",
20                                     generateTime,
21                                     failureTime,
22                                     "",
23                                     "http://dsds/notify/WxPayNotify.action",//收到通知地址
24                                     "APP");
25                  String resdata= WXPay.requestScanPayService(reqData);
26                             //签名验证
27                             Map<String,Object> map = XMLParser.getMapFromXML(resdata);
28                             if(Signature.checkIsSignValidFromResponseString(resdata)){
29
30                                 if("SUCCESS".equals(map.get("return_code"))&&"SUCCESS".equals(map.get("result_code"))){
31                                     jsonmap.put("appid", Configure.getAppid());
32                                     jsonmap.put("prepayid", map.get("prepay_id").toString());
33                                     jsonmap.put("package", "Sign=WXPay");
34                                     jsonmap.put("partnerid", Configure.getMchid());
35                                     jsonmap.put("noncestr", RandomStringGenerator.getRandomStringByLength(32));
36                                     jsonmap.put("timestamp", new Date().getTime()/1000+"");
37                                     jsonmap.put("sign", Signature.getSign(jsonmap));
38                            //将jsonmap返回给APP他们用这些参数就可以完成调起微信支付进行支付了
39
40                                 }
41
42                             }else{
43                                 System.out.println("签名验证失败");
44                                 jsonmapT.put("result", "-1");
45                                 jsonmapT.put("message", "签名验证失败");
46                             }

如有不明白的地方请留言。一些请求参数和返回的参数,参考官网文档

时间: 2024-08-01 17:42:24

微信APP支付服务端开发Java版(一)的相关文章

关于支付宝app支付服务端的实现-Java版

前言 最近在工作中需要使用支付宝app支付,在初次使用过程中也不可避免的出现了一些问题,那么本次随笔主要是概述支付宝app支付服务端的整个实现过程以及就服务端出现的一些问题做一些总结. 1.准备工作 1.1 入驻蚂蚁金服开放平台 https://open.alipay.com/platform/home.htm 1.2 创建应用 首先需要创建一个应用. 然后需要设置应用公钥. 下载支付宝密钥生成器.生成成功之后将公钥复制到这里. 最后提交审核,等待. 2.Maven依赖 首先需要下载SDK,ht

微信app支付(android端+java后台)

本文讲解使用微信支付接口完成在android开发的原生态app中完成微信支付功能, 文章具体讲解了前端android如何集成微信支付功能以及后台如何组装前端需要支付信息, 话不多话, 具体看文章内容吧00:00 / 07:03正常 本实例项目运行条件: 开发环境: [Android Studio] 到微信开放平台注册帐号并且创建移动应用 https://open.weixin.qq.com/cgi-bin/frame?t=home/app_tmpl&lang=zh_CN Column 1 Col

专业移动APP 手机APP后台服务端开发

专业移动APP 手机APP后台服务端开发优势:8年PHP 9年JAVA开发经验采用THINKPHP 和JFINAL ,SBadmin 2框架进行开发完善的开发文档免费一年BUG维护 可签协议,可先预付20%,也可分段付款, 亲 请带好需求文档! QQ 184377367 报价原则1:功能列表2:兼容性3:安全要求等级4:是否需要完善的开发文档5:后台UI是否有要求

.net 微信APP支付接口的开发流程以及坑(转)

流程 申请APP的微信支付 申请成功之后得到APPID 商户号 以及自己设置商户号的支付密码 这时就可以开发接口了 微信APP支付API:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=9_1 微信APP开发SDK:https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=11_1 接口开发 1.就说三个接口吧主要这三个接口是必须用的(如图),使用的方法SDK里面应该

微信支付服务端开发

前言 最近应公司业务需求,把微信支付完成了,当然已经顺利上线.但是开发的过程是也是踩了很多坑,下面我就先说说开发流程,以及在开发中遇到的大大小小的坑. 开发流程 首先,看一下微信开方平台关于支付的一个时序图,如下: 微信支付时序图https://pay.weixin.qq.com/wiki/doc/api/app/app.php 商户系统和微信支付系统主要交互说明: 步骤1:用户在商户APP中选择商品,提交订单,选择微信支付. 步骤2:商户后台收到用户支付单,调用微信支付统一下单接口.参见[统一

微信app支付android客户端以及.net服务端实现

由于公司运营需要,需要在客户端(android/ios)增加微信以及支付宝支付,在调用微信app支付时遇到一些问题,也算是一些踩过的坑,记录下来 ,希望能对.net开发者服务端网站更快的集成微信app支付. 1.开发所需资料:微信开放平台应用的appid以及appsecert,商户平台的商户号以及api安全里面里面设置的key,详见 微信支付账户相关信息; 2.微信开发者平台完善应用平台的相关信息,android应用签名必须用打包签名过的发布版本apk(这一步很重用),包名必须一致,可以用微信提

微信App支付(JAVA端)

low话不多说,直接上代码! 红色框框是核心jar包! 黑色框框是获取客户端的IP地址工具类! 紫色框框是微信支付的流程代码! 蓝色框框是订单实体类! 由于小黑我技术不咋地,所以以下代码仅供参考,copy过去后是跑不起来的,不过可以经过改动代码使其跑起来,反正思路是这样的! (代码处如有发现错误的自行矫正修改,例如没有对事务控制,逻辑有误等!! 还有,大神看也,不喜勿喷) 此处代码就是用来调用微信支付SDK的,然后SDK会返回几个参数,这几个参数就是给APP端(IOS/安卓)调起支付的参数!! 

H5集成支付宝App支付客户端+服务端(java)

由于最近项目需要接入第三方开发,支付宝支付,微信支付,OSS图片上传以及短信服务.为避免第一次开发支付宝再次花时间查看文档,今天总结一下接入支付宝的过程,以及接入过程中遇到的问题. 1.首先在蚂蚁金服开放平台申请应用https://open.alipay.com/platform/home.htm,App支付需要签约后才能生效,签约只需提供完成资料即可通过审核. 2.在已申请应用中查看签约状态,若状态为已生效才可以继续开发,签约状态查看如下所示,注意:未完成签约的应用是无法接入成功的. 3.配置

现代Java服务端开发核心技术之开发工具箱

现代Java服务端开发核心技术之开发工具箱 现代Java服务端开发核心技术 2.1 开发工具概述 俗话说,工欲善其事必先利其器,掌握一些日常开中常用的工具软件能够大大提开发效率,工具本身的目的也是解放生产力.在安装各种软件时注意如果没有特殊需要不必使用最新版本,尤其是操作系统,例如当前(2018/10/12)最新版的macOS是10.14,但是运行在macOS之上的其他应用软件可能还没有及时做兼容新系统的版本,可能在系统升级之后无法正常使用,因此推荐在新系统正式推出半年后再升级最为稳妥. 而且软