收藏
回答

在使用native支付时,无法进行支付?

说明:

我在使用微信支付-Native支付时,无法正常使用,提示:”此商家的收款功能已被限制,暂无法支付。商家可登录微信商户平台/微信支付商家助手小程序/经营账户页面查看原因和解决方案。“,经过检查我们有一条功能限制记录:商户资质异常,但是目前此记录已解除限制。请求检查无法使用问题。

服务端SDK使用wechatpay-java

### 控制台输出

我的代码,和https://github.com/wechatpay-apiv3/wechatpay-java 上的示例一致

package com.wechat.pay.java.service;

import com.wechat.pay.java.core.Config;
import com.wechat.pay.java.core.RSAAutoCertificateConfig;
import com.wechat.pay.java.service.payments.nativepay.NativePayService;
import com.wechat.pay.java.service.payments.nativepay.model.Amount;
import com.wechat.pay.java.service.payments.nativepay.model.PrepayRequest;
import com.wechat.pay.java.service.payments.nativepay.model.PrepayResponse;

/** Native 支付下单为例 */
public class QuickStart {

    /** 商户号 */
    public static String merchantId = "";
    /** 商户API私钥路径 */
    public static String privateKeyPath = "";
    /** 商户证书序列号 */
    public static String merchantSerialNumber = "";
    /** 商户APIV3密钥 */
    public static String apiV3Key = "";

    public static void main(String[] args) {
        // 使用自动更新平台证书的RSA配置
        // 一个商户号只能初始化一个配置,否则会因为重复的下载任务报错
        Config config =
                new RSAAutoCertificateConfig.Builder()
                        .merchantId(merchantId)
                        .privateKeyFromPath(privateKeyPath)
                        .merchantSerialNumber(merchantSerialNumber)
                        .apiV3Key(apiV3Key)
                        .build();
        // 构建service
        NativePayService service = new NativePayService.Builder().config(config).build();
        // request.setXxx(val)设置所需参数,具体参数可见Request定义
        PrepayRequest request = new PrepayRequest();
        Amount amount = new Amount();
        amount.setTotal(100);
        request.setAmount(amount);
        request.setAppid("");
        request.setMchid("");
        request.setDescription("测试商品标题");
        request.setNotifyUrl("https://notify_url");
        request.setOutTradeNo("out_trade_no_001");
        // 调用下单方法,得到应答
        PrepayResponse response = service.prepay(request);
        // 使用微信扫描 code_url 对应的二维码,即可体验Native支付
        System.out.println(response.getCodeUrl());
    }
}
回答关注问题邀请回答
收藏

1 个回答

  • Memory
    Memory
    09-17

    商户异常了和代码没关系,如果所有异常都处理完成还不能恢复支付权限,可以拨打95017联系客服协助查询处理

    09-17
    有用 1
    回复 1
    • Spring
      Spring
      09-18
      非常感谢您的回复,我联系了客服,此问题的原因是如果长时间未使用微信支付,将会限制使用,我已和账号超管沟通并进行解冻操作
      09-18
      回复
登录 后发表内容