小程序
小游戏
企业微信
微信支付
扫描小程序码分享
wechatpay-java (版本0.2.9)支持服务商模式下单吗?那个字段填写子商户信息
1 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
服务商模式下的jsapi预下单示例:
import com.alibaba.fastjson.JSON; import com.wechat.pay.java.core.Config; import com.wechat.pay.java.core.RSAAutoCertificateConfig; import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiServiceExtension; import com.wechat.pay.java.service.partnerpayments.jsapi.model.Amount; import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayRequest; import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayWithRequestPaymentResponse; /** * 合作伙伴平台-JSAPI 支付下单 * https://pay.weixin.qq.com/docs/partner/apis/partner-jsapi-payment/partner-jsons/partner-jsapi-prepay.html */ public class PartnerV3PayJsapiTest { /** 商户号 */ public static String spMchid = "xxx"; /** 子商户号*/ public static String subMchid = "xxx"; /** 商户API私钥路径 */ public static String privateKeyPath = "D:\\java\\mi\\witsoft\\jcodes\\jcodes-tools\\jcodes-wx\\jcodes-wx-payment\\src\\main\\resources\\cer\\apiclient_key.pem"; /** 商户证书序列号 */ public static String merchantSerialNumber = "xxxxx"; /** 商户APIV3密钥 */ public static String apiV3Key = "xxxxx"; /** 服务商公众号ID*/ public static String spAppid = "xxxxx"; public static void main(String[] args) { // 使用自动更新平台证书的RSA配置 // 一个商户号只能初始化一个配置,否则会因为重复的下载任务报错 Config config = new RSAAutoCertificateConfig.Builder() .merchantId(spMchid) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3Key) .build(); // 构建service JsapiServiceExtension service = new JsapiServiceExtension.Builder().config(config).build(); // request.setXxx(val)设置所需参数,具体参数可见Request定义 PrepayRequest request = new PrepayRequest(); // 服务商公众号ID request.setSpAppid(spAppid); // 服务商户号 request.setSpMchid(spMchid); // 子商户/二级商户应用ID request.setSubMchid(subMchid); // 金额 Amount amount = new Amount(); amount.setTotal(1); request.setAmount(amount); // 描述 request.setDescription("测试商品标题"); // 回调地址 request.setNotifyUrl("http://t83r2s.natappfree.cc/v3/payNotify"); // 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一 request.setOutTradeNo("out_trade_no_0011"); PrepayWithRequestPaymentResponse response = service.prepayWithRequestPayment(request, spAppid); System.out.println(JSON.toJSONString(response)); } }
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
服务商模式下的jsapi预下单示例:
import com.alibaba.fastjson.JSON; import com.wechat.pay.java.core.Config; import com.wechat.pay.java.core.RSAAutoCertificateConfig; import com.wechat.pay.java.service.partnerpayments.jsapi.JsapiServiceExtension; import com.wechat.pay.java.service.partnerpayments.jsapi.model.Amount; import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayRequest; import com.wechat.pay.java.service.partnerpayments.jsapi.model.PrepayWithRequestPaymentResponse; /** * 合作伙伴平台-JSAPI 支付下单 * https://pay.weixin.qq.com/docs/partner/apis/partner-jsapi-payment/partner-jsons/partner-jsapi-prepay.html */ public class PartnerV3PayJsapiTest { /** 商户号 */ public static String spMchid = "xxx"; /** 子商户号*/ public static String subMchid = "xxx"; /** 商户API私钥路径 */ public static String privateKeyPath = "D:\\java\\mi\\witsoft\\jcodes\\jcodes-tools\\jcodes-wx\\jcodes-wx-payment\\src\\main\\resources\\cer\\apiclient_key.pem"; /** 商户证书序列号 */ public static String merchantSerialNumber = "xxxxx"; /** 商户APIV3密钥 */ public static String apiV3Key = "xxxxx"; /** 服务商公众号ID*/ public static String spAppid = "xxxxx"; public static void main(String[] args) { // 使用自动更新平台证书的RSA配置 // 一个商户号只能初始化一个配置,否则会因为重复的下载任务报错 Config config = new RSAAutoCertificateConfig.Builder() .merchantId(spMchid) .privateKeyFromPath(privateKeyPath) .merchantSerialNumber(merchantSerialNumber) .apiV3Key(apiV3Key) .build(); // 构建service JsapiServiceExtension service = new JsapiServiceExtension.Builder().config(config).build(); // request.setXxx(val)设置所需参数,具体参数可见Request定义 PrepayRequest request = new PrepayRequest(); // 服务商公众号ID request.setSpAppid(spAppid); // 服务商户号 request.setSpMchid(spMchid); // 子商户/二级商户应用ID request.setSubMchid(subMchid); // 金额 Amount amount = new Amount(); amount.setTotal(1); request.setAmount(amount); // 描述 request.setDescription("测试商品标题"); // 回调地址 request.setNotifyUrl("http://t83r2s.natappfree.cc/v3/payNotify"); // 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一 request.setOutTradeNo("out_trade_no_0011"); PrepayWithRequestPaymentResponse response = service.prepayWithRequestPayment(request, spAppid); System.out.println(JSON.toJSONString(response)); } }