I直接答案
支付时提示「所属公众号openlD缺失」的根本原因不在订单本身,也不在支付配置,而在微信身份识别环节。微信给每个用户在每个公众号下分配一个独立的openID,同一个微信号如果关注过多个公众号,就会对应多个openID。订货宝需要拿到当前这个公众号下的那一个openID,才能把订单和付款人对应起来。当微信没有把当前公众号的openID回传给系统时,支付环节就会卡住并弹出这个提示。
结论很直接:让客户打开微信,找到当前下单所用的这个公众号,先取消关注,再重新关注一次,然后重新进入订货宝下单并支付。重新关注会让微信重新下发一次授权,系统就能重新获取到openID,报错随之消失。整个过程不需要改后台配置,也不用重建订单。
II操作问答
系统为什么非要这个openID不可
订货宝的支付流程依赖微信授权:用户从公众号或公众号关联的小程序进入商城,微信会带一个身份标识过来,系统拿这个标识去匹配用户、绑定订单、发起支付。这个标识就是openID,而且它是分公众号的——同一个微信号在A公众号有一个openID,在B公众号又有另一个,互相不通用。
当用户关注了多个公众号,微信在授权环节可能没有把当前这个公众号的openID给到系统,系统拿不到标识,就无法确认这笔订单应该记在谁头上,于是支付被拦下,提示所属公众号openID缺失。它不是账号被封,也不是余额或额度问题,而是身份信息没传过来。
III操作问答
照着做:三步恢复支付
第一步,让客户在微信里进入当前下单所用的那个公众号,点右上角进入公众号资料页,选择不再关注。注意要确认取消的确实是当前这个公众号,别把别的公众号取关了,否则问题依旧。
第二步,重新搜索该公众号并关注,关注后不要急着下单,先退出订货宝的商城页面,再重新从公众号菜单进入。这一步是为了让微信重新走一次授权,把新的openID交给系统。
第三步,重新选商品、填地址、提交订单并支付。如果之前那笔订单还停在待付款状态,可以直接对它发起付款;如果页面状态异常,重新下一单也可以,旧单后续在订单列表里处理即可。
IV操作问答
最容易配错的两种情形
第一种是把问题当成后台配置错误,跑去反复检查支付参数、来回切换支付方式。结果是后台怎么改都无效,客户那边依旧报同样的提示。判断方法很简单:如果别的客户在同一公众号下能正常付款,说明配置没问题,问题出在这一个用户身上,走重新关注即可。
第二种是取关后没有重新登录就继续下单。用户点完重新关注,页面还停留在原来的会话里,微信并没有重新授权,openID仍然是缺的,于是看起来“重新关注了也没用”。正确顺序是先关注、再退出商城重进、最后下单。
还有一种情况容易被忽略:客户同时关注了公众号和小程序两条入口,平时从小程序下单正常,从公众号进去就报错。这时不要怀疑账号,直接按当前入口对应的公众号重新关注一次,问题一般就解决了。
V操作问答
它跟价格、账期、库存、权限、报表的关系
openID缺失只影响支付身份识别,不改变订单里的价格。商品单价、客户等级价、促销价在提交订单时已经算好,重新关注后重新下单,价格规则照常生效,不会因为报错而错乱。
如果客户用的是授信额度或预存款支付,同样要先解决openID问题,因为系统必须先确认付款人身份,才能去扣对应的额度或余额。账期到期提醒、对账报表也是一样,订单没有完成支付就不会进入结算数据。
库存方面,报错期间订单通常停在待付款,库存是否被占用取决于下单时的扣减规则,重新支付后订单状态流转,库存数据才会正常回写。权限上,重新关注不会影响客户的等级和可见商品范围,但如果客户本身没有下单权限,仍会先被权限拦下,这与openID是两回事。
报表层面,这类未完成的支付不会计入成交,所以看到当日成交笔数偏少时,可以先排查是否存在openID缺失的待付款订单,让客户重新关注付掉,数据自然补齐。
VII常见问题
被问得最多的几个问题
先确认客户取消关注和重新关注的是同一个公众号,并且重新关注后彻底退出商城页面再重进。如果仍不行,让客户清理微信缓存或换用另一部手机登录同一微信号试一次。多数情况下是授权没有重新走完,而不是系统故障。若同一公众号下其他客户都正常,基本可以锁定在个别用户的微信授权状态上。
不会。待付款订单本身还在,订单号、商品、金额都不变。客户重新关注并重新进入后,可以直接对原订单发起支付;如果页面加载异常,重新下一单即可,旧单在订单列表里继续处理。价格和优惠在重新下单时按当时的规则重新计算,以页面显示为准。
看范围。同一个公众号下只有个别客户报错,基本就是openID缺失,让该客户重新关注解决;如果所有客户在同一公众号下都付不了款,那才需要检查支付相关的配置。另一种信号是报错文字本身,提示里明确写了所属公众号openID缺失,就可以优先按授权问题处理,不用先动后台设置。
企业微信 · 专属顾问