minibear2021 / wechatpayv3

微信支付 API v3 Python SDK
MIT License
813 stars 130 forks source link

求教一个服务商模式的使用 #38

Closed zwb0619 closed 10 months ago

zwb0619 commented 10 months ago

我建立了一个公众号,作为一个平台,里面有多个商户,这些商户在服务商添加子商户的情况下,绑定的是平台的公众号app_id,也即这些商户没有自己的app_id。

看微信的接口文档是需要传1个sub_mchid。请问下示例里面是没有sub_mchid的。请教下,这种情况下, wxpay = WeChatPay( wechatpay_type=WeChatPayType.NATIVE, mchid=MCHID, private_key=PRIVATE_KEY, cert_serial_no=CERT_SERIAL_NO, apiv3_key=APIV3_KEY, appid=APPID, notify_url=NOTIFY_URL, cert_dir=CERT_DIR,

logger=LOGGER,

    partner_mode=PARTNER_MODE,
    proxy=PROXY
)

是不是初始化的时候加一个参数SUB_MCHID='xxxxx',并且在这个wxpay里面加上sub_mchid=SUB_MCHID

另外: payer = {'openid': 'xxxx'}是否改为:payer = {'sub_openid': 'xxxxx'}

minibear2021 commented 10 months ago

服务商模式看服务商对应的接口,sub_mchid在接口调用的时候传入,具体什么时候需要看对应的接口文档。

zwb0619 commented 10 months ago

搞定 payer = {'sub_openid': 'xxxx'} # 这里把openid改为sub_openid

code, message = wxpay.pay(
    description=description,
    out_trade_no=out_trade_no,
    amount={'total': amount},
    pay_type=WeChatPayType.JSAPI,
    sub_mchid=SUB_MCHID,  # 这个地方增加sub_mchid
    payer=payer
)

就改2个地方,接口已经调通了