人生倒计时
- 今日已经过去小时
- 这周已经过去天
- 本月已经过去天
- 今年已经过去个月
微信支付接口代码是什么(微信支付接口代码是什么)
微信接口是指的是什么,微信支付接口又指的是什么
1。微信接口:应用程序编程接口,简称API(Application
(使用浏览器扫码进入在线客服窗口)
复制联系方式
Programming
Interface),微信接口开发及公众平台消息接口为开发者提供了一种新的消息处理方式。
2.微信支付接口是微信接口的一种,用于满足支付功能!

怎么用java调用微信支付接口
java调用微信支付接口方法:
RequestHandler requestHandler = new RequestHandler(super.getRequest(),super.getResponse());
//获取token //两小时内有效,两小时后重新获取
Token = requestHandler.GetToken();
//更新token 到应用中
requestHandler.getTokenReal();
System.out.println("微信支付获取token=======================:" +Token);
//requestHandler 初始化
requestHandler.init();
requestHandler.init(appid,appsecret, appkey,partnerkey, key);
// --------------------------------本地系统生成订单-------------------------------------
// 设置package订单参数
SortedMapString, String packageParams = new TreeMapString, String();
packageParams.put("bank_type", "WX"); // 支付类型
packageParams.put("body", "xxxx"); // 商品描述
packageParams.put("fee_type", "1"); // 银行币种
packageParams.put("input_charset", "UTF-8"); // 字符集
packageParams.put("notify_url", ""); // 通知地址 这里的通知地址使用外网地址测试,注意80端口是否打开。
packageParams.put("out_trade_no", no); // 商户订单号
packageParams.put("partner", partenerid); // 设置商户号
packageParams.put("spbill_create_ip", super.getRequest().getRemoteHost()); // 订单生成的机器IP,指用户浏览器端IP
packageParams.put("total_fee", String.valueOf(rstotal)); // 商品总金额,以分为单位
// 设置支付参数
SortedMapString, String signParams = new TreeMapString, String();
signParams.put("appid", appid);
signParams.put("noncestr", noncestr);
signParams.put("traceid", PropertiesUtils.getOrderNO());
signParams.put("timestamp", timestamp);
signParams.put("package", packageValue);
signParams.put("appkey", this.appkey);
// 生成支付签名,要采用URLENCODER的原始值进行SHA1算法!
String sign ="";
try {
sign = Sha1Util.createSHA1Sign(signParams);
} catch (Exception e) {
e.printStackTrace();
}
// 增加非参与签名的额外参数
signParams.put("sign_method", "sha1");
signParams.put("app_signature", sign);
// api支付拼包结束------------------------------------
//获取prepayid
String prepayid = requestHandler.sendPrepay(signParams);
System.out.println("prepayid :" + prepayid);
// --------------------------------生成完成---------------------------------------------
//生成预付快订单完成,返回给android,ios 掉起微信所需要的参数。
SortedMapString, String payParams = new TreeMapString, String();
payParams.put("appid", appid);
payParams.put("noncestr", noncestr);
payParams.put("package", "Sign=WXPay");
payParams.put("partnerid", partenerid);
payParams.put("prepayid", prepayid);
payParams.put("appkey", this.appkey);
//这里除1000 是因为参数长度限制。
int time = (int) (System.currentTimeMillis() / 1000);
payParams.put("timestamp",String.valueOf(time));
System.out.println("timestamp:" + time);
//签名
String paysign ="";
try {
paysign = Sha1Util.createSHA1Sign(payParams);
} catch (Exception e) {
e.printStackTrace();
}
payParams.put("sign", paysign);
//拼json 数据返回给客户端
BasicDBObject backObject = new BasicDBObject();
backObject.put("appid", appid);
backObject.put("noncestr", payParams.get("noncestr"));
backObject.put("package", "Sign=WXPay");
backObject.put("partnerid", payParams.get("partnerid"));
backObject.put("prepayid", payParams.get("prepayid"));
backObject.put("appkey", this.appkey);
backObject.put("timestamp",payParams.get("timestamp"));
backObject.put("sign",payParams.get("sign"));
String backstr = dataObject.toString();
System.out.println("backstr:" + backstr);
return backstr;
====================到此为止,预付款订单已生成,并且已返回客户端====================
//坐等微信服务器通知,通知的地址就是生成预付款订单的notify_url
ResponseHandler resHandler = new ResponseHandler(request, response);
resHandler.setKey(partnerkey);
//创建请求对象
//RequestHandler queryReq = new RequestHandler(request, response);
//queryReq.init();
if (resHandler.isTenpaySign() == true) {
//商户订单号
String out_trade_no = resHandler.getParameter("out_trade_no");
System.out.println("out_trade_no:" + out_trade_no);
//财付通订单号
String transaction_id = resHandler.getParameter("transaction_id");
System.out.println("transaction_id:" + transaction_id);
//金额,以分为单位
String total_fee = resHandler.getParameter("total_fee");
//如果有使用折扣券,discount有值,total_fee+discount=原请求的total_fee
String discount = resHandler.getParameter("discount");
//支付结果
String trade_state = resHandler.getParameter("trade_state");
//判断签名及结果
if ("0".equals(trade_state)) {
//------------------------------
//即时到账处理业务开始
//------------------------------
System.out.println("----------------业务逻辑执行-----------------");
//——请根据您的业务逻辑来编写程序(以上代码仅作参考)——
System.out.println("----------------业务逻辑执行完毕-----------------");
System.out.println("success"); // 请不要修改或删除
System.out.println("即时到账支付成功");
//给财付通系统发送成功信息,财付通系统收到此结果后不再进行后续通知
resHandler.sendToCFT("success");
//给微信服务器返回success 否则30分钟通知8次
return "success";
}else{
System.out.println("通知签名验证失败");
resHandler.sendToCFT("fail");
response.setCharacterEncoding("utf-8");
}
}else {
System.out.println("fail -Md5 failed");
android 微信支付回调接口怎么写
之前搞微信支付一直不能够回调支付结果的回调页面,现在来说一下怎么成功回调页面
参照文档:调起支付的代码:
[java] view plain copy
private void sendPayReq(String appid, String partnerid, String prepayid, String packageValue, String noncestr, int timestamp, String sign) {
//微信注册APPID
IWXAPI api = WXAPIFactory.createWXAPI(this,null);
api.registerApp(appid);
PayReq request = new PayReq();
request.appId = appid;
request.partnerId = partnerid;
request.prepayId = prep
通过手机点链接后可以跳转到微信支付的源码怎么写?
微信公司平台帐号注册后官方首页很简单,没有导航栏目页面新建等功能。需要通过三方软件与微信接口做二次开发。首先要在现在微信开个接口,这是要工商局认证的。
最近一个项目用手机上的浏览器(不是微信浏览器)浏览html5网页时,看到有的网站点击“微信支付”时,直接打开了微信进行支付(也就是在浏览器直接调用微信),这个是怎么做到的?
比如页面上有个文字链接:微信支付,点击之后就自动调取微信APP了,而且我不是用微信浏览器打开的网页。最新实用的微信H5手机网站支付源码实例。
效果图片如下:
完整代码如下:即使在Safari中,也是可以点击一个链接到达微信支付界面,只是用户支付完了以后,目前还没有方法再返回到Safari。 如果是自己开发的app,当然更没有任何问题了,可以实现和native app一样的效果。
源码如下:
html
head
meta http-equiv="content-type" content="text/html;charset=utf8"/
meta id="viewport" name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1; user-scalable=no;" /
body,p,ul,li,h1,h2,form,input{margin:0;padding:0;}
h1,h2{font-size:100%;}
ul{list-style:none;}
body{-webkit-user-select:none;-webkit-text-size-adjust:none;font-family:Helvetica;background:#ECECEC;}
html,body{height:100%;}
a,button,input,img{-webkit-touch-callout:none;outline:none;}
a{text-decoration:none;}
.hide{display:none!important;}
.cf:after{content:".";display:block;height:0;clear:both;visibility:hidden;}
a[class*="btn"]{display:block;height:42px;line-height:42px;color:#FFFFFF;text-align:center;border-radius:5px;}
.btn-blue{background:#3D87C3;border:1px solid #1C5E93;}
.btn-green{background-image:-webkit-gradient(linear, left top, left bottom, color-stop(0, #43C750), color-stop(1, #31AB40));border:1px solid #2E993C;box-shadow:0 1px 0 0 #69D273 inset;}
.charge{font-family:Helvetica;padding-bottom:10px;-webkit-user-select:none;}
.charge h1{height:44px;line-height:44px;color:#FFFFFF;background:#3D87C3;text-align:center;font-size:20px;-webkit-box-sizing:border-box;box-sizing:border-box;}
.charge h2{font-size:14px;color:#777777;margin:5px 0;text-align:center;}
.charge .content{padding:10px 12px;}
.charge .select li{position:relative;display:block;float:left;width:100%;margin-right:2%;height:150px;line-height:150px;text-align:center;border:1px solid #BBBBBB;color:#666666;font-size:16px;margin-bottom:5px;border-radius:3px;background-color:#FFFFFF;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;}
.charge .price{border-bottom:1px dashed #C9C9C9;padding:10px 10px 15px;margin-bottom:20px;color:#666666;font-size:12px;}
.charge .price strong{font-weight:normal;color:#EE6209;font-size:26px;font-family:Helvetica;}
.charge .showaddr{border:1px dashed #C9C9C9;padding:10px 10px 15px;margin-bottom:20px;color:#666666;font-size:12px;text-align:center;}
.charge .showaddr strong{font-weight:normal;color:#9900FF;font-size:26px;font-family:Helvetica;}
微信小程序支付API
2019年12月26日
文档:
一.一般要开发的两个接口
1.统一下单
2.申请退款
3.签名规则
二.小程序支付时序图
关键就是wx.requestPayment(object)
2.ps商户系统和微信支付系统主要交互:
1、小程序内调用登录接口,获取到用户的openid,api参见公共api【 小程序登录API 】
2、商户server调用支付统一下单,api参见公共api【 统一下单API 】
3、商户server调用再次签名,api参见公共api【 再次签名 】
4、商户server接收支付通知,api参见公共api【 支付结果通知API 】
5、商户server查询支付结果,api参见公共api【 查询订单API 】
三.微信小程序支付实现步骤
1.获取登录凭证code 并传给后端服务器
2.后端服务器请求微信服务器获取openid和session_key,并将openid返回给小程序
3.小程序客服端发起支付请求给后端服务器 (带上openid参数)
4.后端服务器接收到openId后,调用微信支付统一下单接口(后端调用的,用来给小程序获取支付参数)
5.拿到后端服务器返回的5个参数后,调用最终支付接口wx.requestPayment
6.微信服务器进行支付成功后,通知后端服务器。

