微信支付-java

袁建木
2023-12-01

微信⽀付

通过微信平台为商家提供代收款服务

1.微信⽀付业务商户注册微信⽀付业务

https://pay.weixin.qq.com/index.php/core/home/login?return_url=%2F
  • 商户编号:*
  • 商户账号AppID*
  • 商户Key*

2.申请⽀付订单商户向⽀付平台申请⽀付链接

⽀付订单,并不是⽤户提交的商品订单,⽽是商户向微信⽀付平台申请的⽀付链接

2.1 导⼊微信⽀付的依赖

  • wxpaymaven依赖
<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"));

 类似资料: