Java 微信支付 步骤 以及代码

这篇博客详述了使用Java进行微信扫码支付的完整流程,包括商户生成订单、调用微信下单接口、生成二维码、支付结果通知及支付成功的处理。同时,提到了需要注意的点,如回调数据为XML格式,需要进行转化,并强调了订单状态更新的幂等问题,避免重复发货。
摘要由CSDN通过智能技术生成

用于个人记录,以防后续用到,也希望能帮助到更多的小伙伴

微信支付步骤及代码:

  • 1、商户生成订单

  • 2、商户调用微信下单接口,获取预交易的链接

  • 3、商户将链接生成二维码图片,展示给用户;

  • 4、支付结果通知:

    • 微信异步通知商户支付结果,商户告知微信支付接收情况

    • 商户如果没有收到通知,可以调用接口,查询支付状态

  • 5、如果支付成功,发货,修改订单状态

 

微信支付官方文档:https://pay.weixin.qq.com/index.php/core/home/login?return_url=%2F

用到的是:Native支付, 就是扫码支付

参数以及返回值 具体去官网查看

以下是具体步骤以及代码 还有 需要注意的几个点和坑:

官网下载 : wx-sdk 打成jar包 引入maven

命令:mvn source:jar install -Dmaven.test.skip=true 或者 用maven插件

1.application中加入:

ly:
  pay:
    wx:
      appID: wx*********
      mchID: ********
      key: *******
      payType: NATIVE

2.配置类:

package com.ig.order.config;

import com.github.wxpay.sdk.WXPay;
import com.github.wxpay.sdk.WXPayConfigImpl;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class PayConfiguration {

    @Bean
    @ConfigurationProperties(prefix = "ly.pay.wx")
    public WXPayConfigImpl payConfig(){
        return new WXPayConfigImpl();
    }


    /**
     * 注册WXPay对象
     * @param payConfig 支付相关配置
     * @return WXPay对象
     * @throws Exception 连结WX失败时用到
     */
    @Bean
    public WXPay wxPay(WXPayConfigImpl payConfig) throws Exception {
        return new WXPay(payConfig);
    }
}

================以下开始生成支付二维码并且给前台返回=============================

3.订单生成以后 传入一个 orderId (订单ID)到后台 , 进入支付界面生成二维码

payHelper 工具类:

package com.ig.order.utils;

import com.github.wxpay.sdk.WXPay;
import com.github.wxpay.sdk.WXPayConfigImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.HashM
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值