微信⽀付
通过微信平台为商家提供代收款服务
1.微信⽀付业务—商户注册微信⽀付业务
https://pay.weixin.qq.com/index.php/core/home/login?return_url=%2F
- 商户编号:*
- 商户账号AppID:*
- 商户Key:*
2.申请⽀付订单—商户向⽀付平台申请⽀付链接
⽀付订单,并不是⽤户提交的商品订单,⽽是商户向微信⽀付平台申请的⽀付链接
2.1 导⼊微信⽀付的依赖
- wxpay的maven依赖
<dependency>
<groupId>com.github.wxpay</groupId>
<artifactId>wxpay-sdk</artifactId>
<version>0.0.3</version>
</dependency>
2.2 创建微信⽀付配置类,配置商户信息
- 创建⼀类,实现WxPayConfig接⼝
- 重写三分⽅法,分别设置商户AppID\商户ID\商户密
-
public class MyPayConfig implements WXPayConfig { @Override public String getAppID() { return "商户账号AppID"; } @Override public String getMchID() { return "商户编号"; } @Override public String getKey() { return "商户key"; } @Override public InputStream getCertStream() { return null; } @Override public int getHttpConnectTimeoutMs() { return 0; } @Override public int getHttpReadTimeoutMs() { return 0; } }
2.3 设置⽀付订单的参数
HashMap<String,String> data = new HashMap<>();
data.put("body","商品名称"); //商品描述
data.put("out_trade_no",orderId); //使⽤当前⽤户订单的编号作为当前⽀付交易的
交易号
data.put("fee_type","CNY"); //⽀付币种
data.put("total_fee","1"); //⽀付⾦额
data.put("trade_type","NATIVE"); //交易类型
data.put("notify_url","/pay/success"); //设置⽀付完成时的回调⽅法
接⼝
2.4 申请⽀付链接
WXPay wxPay = new WXPay(new MyPayConfig());
Map<String, String> resp = wxPay.unifiedOrder(data); //发送请求
orderInfo.put("payUrl",resp.get("code_url"));