diff --git a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayUnifiedOrderRequest.java b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayUnifiedOrderRequest.java index e3c418f3..edfe3f52 100644 --- a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayUnifiedOrderRequest.java +++ b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayUnifiedOrderRequest.java @@ -339,8 +339,8 @@ public class WxPayUnifiedOrderRequest extends WxPayBaseRequest { // Arrays.toString(TRADE_TYPES), this.getTradeType())); // } - if ("JSAPI".equals(this.getTradeType()) && this.getOpenid() == null) { - throw new WxPayException("当 trade_type是'JSAPI'时未指定openid"); + if ("JSAPI".equals(this.getTradeType()) && this.getOpenid() == null && this.getSubOpenid() == null) { + throw new WxPayException("当 trade_type是'JSAPI'时未指定openid或sub_openid"); } if ("NATIVE".equals(this.getTradeType()) && this.getProductId() == null) {