PAYATHON 2026

alipay.trade.app.pay 如何指定企业外部支付人?

支付阿杰

明确结论

在 alipay.trade.app.pay 的 ext_user_info 参数中,企业营业执照对应的 cert_type 是:

BUSINESS_LICENSE

cert_no 填写企业的营业执照注册号或统一社会信用代码,name 填写营业执照上的企业名称。

参数填写示例

ext_user_info 是业务请求参数中的 JSON 对象,例如:

{
  "name": "某某科技有限公司",
  "cert_type": "BUSINESS_LICENSE",
  "cert_no": "91310000XXXXXXXXXX",
  "fix_buyer": "T",
  "need_check_info": "T"
}

使用 Java SDK 时,可以根据实际 SDK 版本构造参数:

AlipayTradeAppPayModel model = new AlipayTradeAppPayModel();

ExtUserInfo extUserInfo = new ExtUserInfo();
extUserInfo.setName("某某科技有限公司");
extUserInfo.setCertType("BUSINESS_LICENSE");
extUserInfo.setCertNo("91310000XXXXXXXXXX");
extUserInfo.setFixBuyer("T");
extUserInfo.setNeedCheckInfo("T");

model.setExtUserInfo(extUserInfo);

如果所用 SDK 没有对应的强类型对象,也可以按接口要求传入 JSON 字符串,具体应以当前 SDK 的字段定义为准。

为什么这样填写

cert_type 表示 cert_no 所对应的证件类型。企业身份通常通过营业执照或统一社会信用代码识别,因此应填写企业营业执照对应的枚举值 BUSINESS_LICENSE,不能使用自然人身份证对应的 IDENTITY_CARD。

各项企业信息应保持一致:

  • name:营业执照上的企业全称
  • cert_type:BUSINESS_LICENSE
  • cert_no:营业执照注册号或统一社会信用代码
  • need_check_info:需要支付宝校验上述信息时填写 T
  • fix_buyer:需要限制只能由指定主体付款时填写 T

注意事项

ext_user_info 用于传递和校验外部用户信息。不过,填写企业证件信息不一定代表 App 支付支持强制指定某个企业支付宝账户付款。能否限制企业付款主体,还要看当前接口的产品能力、商户签约权限和支付宝账户类型。

不同开放平台产品或接口版本支持的证件枚举也可能不同。正式接入前,应查看当前 alipay.trade.app.pay 接口文档或所用 SDK 中的 ExtUserInfo.cert_type 定义,确认是否已开放 BUSINESS_LICENSE。如果网关返回”枚举值无效”或”参数非法”,需要联系支付宝技术支持,确认该 App 支付产品是否支持企业证件校验。

备注:内容仅供参考。