日期:2026-08-06
我们接手的是一家区域咖啡茶饮连锁,高峰时门店接近四百家的规模。最初他们的会员资产散落在三个地方:微信生态里的公众号粉丝、自家小程序里下单的注册用户、以及门店前台用储值卡沉淀的线下客。三套身份互不相通,同一个顾客在系统里往往是三个人。会员营销基本靠门店店长拉群群发,节假日统一推一张满减券,转化越来越差,群里退群的人比下单的人多。管理层想要的是把会员真正沉淀到私域、用数据驱动复购,而不是继续做"广撒网式"的促销。我们当时判断,这件事的难点不在营销创意,而在底层身份归一和履约链路打通——先把人认清楚,再把单接顺,运营才有抓手。
这个项目里,我们采用 XpShop 新普MALL 作为会员与交易的技术底座,把三套身份做了主数据归一:以手机号作为唯一主键,公众号 openid、小程序 unionid、储值卡号全部挂到同一个会员主档下。顾客在小程序点单可以选择"门店自提"或"第三方即时配送",订单直接进入门店履约队列,店员在 POS 上看到实时待制单列表,做一杯核销一杯。储值、券、积分三件事做成一体:储值送赠金,券按会员等级差异化发放,积分在自提或外送完成后自动入账,且积分通兑不区分线上线下。后台给区域督导和店长各配了一块运营看板,能看到本店近三十天复购率、客单价、券核销率和私域会员占比,方便日常盯盘。
第一个挑战是身份归一的准确性。历史数据里手机号重复、空号、错填很多,直接按手机号合并会误并。我们的做法是先做"弱身份匹配 + 人工确认":先用手机号归一,再用消费行为相似度(常去门店、偏好品类、下单时段)做二次校验,相似度低于阈值的保留为独立会员,避免把两个真实顾客并成一个。第二个挑战是点单与履约的实时性。高峰期一家门店同时涌入几十单,制单顺序错乱会拖长等待。我们用订单的"预计完成时间"做动态排序,自提单按到店时间预估,外送单按配送员取货节奏错峰,POS 端只暴露当前可制作的单子。第三个挑战是券与积分的防刷。我们给每张券加了领取设备指纹与会员等级门槛,同一设备短时间批量领券直接拦截,积分发放走异步对账,发现异常回流自动回滚。
案例片段(已脱敏): 身份归一的一次真实处理——某会员主档下挂了 3 个 openid、2 张储值卡,行为相似度计算得分 0.93,自动合并;另一条记录两个手机号仅末位差一位、但消费门店分布在不同城市,相似度 0.21,系统保留为两个独立会员并打了"疑似重复"待人工复核标签。合并后该顾客历史储值余额、积分、券包被求和到主档,避免了重复营销触达。 券防刷规则上线后一周的日志:
device_fp=d4f2*** 在 08:12-08:14 内领取满减券 11 张,触发批量领取拦截,仅放行首张;积分异步对账回滚 3 笔异常发货导致的多计积分,涉及 1420 分。
上线约两个半月后做了一次复盘。私域会员占比从原来的约 34% 提升到约 61%,说明更多散客被沉淀到可触达的私域里。复购率(三十天内有二次及以上消费)从约 28% 提升到约 39%,客单价在小程序点单场景下提升了约 12%,主要得益于加购推荐和券的精准发放。门店自提的平均等待时间从约 7 分钟降到约 3.5 分钟,外送履约时长稳定在约 28 分钟。券核销率从群发时代的约 9% 提升到约 23%,营销投入的产出明显改善了。值得提一句,这些数字都是脱敏示意值,我们用的是相对提升口径,不同区域门店基数不同,绝对值会有波动。
第一,会员运营的前提是身份归一,先认人再谈运营,否则所有营销动作都会打偏。第二,门店履约要把"点单"和"制作"当成一条实时链路来设计,排序规则比界面好看更重要。第三,券和积分是强利益点,防刷必须前置到领取环节,事后对账只能兜底层。第四,看板要分角色,店长看本店、督导看区域,指标要少而准,太多反而没人看。这套思路在我们后续做美业、便利店等项目时都被复用,底层都是"身份归一 + 履约打通 + 运营看板"三件套。
在接入层我们给会员主数据建了一张"合并日志"表,每次归一操作都留痕:谁、何时、合并了哪几个身份、依据的行为相似度分是多少,既方便审计,也能在误并发生时一键拆回。储值发放和积分入账走异步消息队列,避免大促时同步写把下单链路拖慢。POS 端我们做了离线兜底:门店网络闪断时制单数据先落本地 SQLite,恢复后增量同步,绝不丢单。运营看板的数据源做了读写分离,门店查询全部打只读副本,不让看板把主库压垮。券的核销和领取用了同一套风控规则,领取端拦掉的异常比核销端多一个数量级。
别一上来就追求千人千面的复杂推荐,先把身份归一和履约打通这两件地基做扎实,运营才有数据可看。券和积分的防刷一定要前置到领取环节,我们早期只在核销时校验,结果被批量薅券后才补到领取端,教训不便宜。另外门店系统的可用性永远优先于点缀功能,阿姨们愿不愿意用,往往决定了一套系统生死,复杂界面再好看没人点也是零。