可能有以下3种原因:
1、公众号没有绑定到微信开放平台。
union_id是基于微信开放平台的,用户拥有union_id的前提是商家授权给小鹅通的公众号绑定到了微信开放平台账号下。
2、公众号已经绑定到了微信开放平台,但是用户是在授权公众号给小鹅通之前注册的。
这种属于老用户的情况,用户的union_id是需要通过微信登录才能获取到的。这种情况下只需要用户重新登录一次店铺,进行过一次授权登录流程就会补全union_id。
3、公众号先授权给小鹅通,过了一段时间再绑定到微信开放平台上。用户在这个时间窗口注册的。
受到微信登录规则的约束,以及用户使用体验,这部分用户的union_id不会自动补全。
如果确认符合这种情况,商家可在小鹅通管理台,解绑服务号和小程序。重新授权服务号/小程序后,用户在微信内再次访问H5/小程序即可自动补全union_id。