正确的传法是这样的:cloud.cloudPay({ appid: 'xxxxx' }).unifiedOrder({其他参数...}),请注意appid是传在-----------------------cloudPay-------------字段里的,官方尽快更新下文档吧,太TM坑了
CloudPay.unifiedOrder()报错sub_mch_id与sub_appid不匹配接口:https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/open/pay/CloudPay.unifiedOrder.html 问题: 1.批量代云开发环境的云函数中调用CloudPay.unifiedOrder()一直报错:"sub_mch_id与sub_appid不匹配" 2.经检查APPID和商户号已成功绑定且已经授权给小程序云开发,如下: [图片][图片] 3.批量代云开发的环境和小程序之间是一种跨账号环境共享的关系,APPID在cloud.getWXContext()中需要拿FROM_APPID字段传值,CloudPay.unifiedOrder()开发文档的请求参数里并没有要求传APPID的相关字段,subOpenid字段的描述里虽然写了“openid和sub_openid可以选传其中之一,如果选择传sub_openid,则必须传sub_appid”,但是请求参数里并没有体现这里的sub_appid该怎么传值,如图: [图片] 4.如果把云开发支付理解为一个微信支付服务商,逻辑上sub_mchid传了的话,sub_appid和sub_openid是必传的啊,如果CloudPay.unifiedOrder()在这里做了相关处理,是不是没有考虑跨环境共享的情况,导致上述1的报错? 5.强烈建议官方把这个接口的文档完善一下,描述字段和请求参数不匹配,看的人很困惑;openid字段描述里的商户和subOpenid字段描述里的子商户有什么区别,该怎么理解?
2021-09-07