HSB 忠诚度计划 · 运作机制图解

一页看懂:用户做什么、系统怎么判断、结果是什么。不涉及数据库和技术细节。

面向管理层与跨部门 · 基于 Loyalty 逻辑设计 · 兑换部分已按 Tada 最新确认口径更新

1全景:赚 → 领 → 花

整条链路只有三步,但中间有两道会让积分消失的闸门——这是最容易被忽略、也最容易引发客诉的地方。

① 赚 完成任务 签到 / 交易 / Mission 算出应得积分 先挂在「待领取」 ② 领 用户点「领取」 积分才真正进钱包 进入余额 开始倒计时 ③ 花 在商城兑换礼品 由 Tada 履约发货 闸门一 · 限期领取 超期不领 → 这笔分永远作废 闸门二 · 限期使用 超期不花 → 余额清零
用户完成任务不等于拿到积分。必须主动点一次「领取」,积分才进钱包;进了钱包也还有有效期。两道闸门的天数都由运营按活动设定。

2谁能看到,谁能拿到

这是两个互相独立的开关。同一批用户,可以「都看得到」但「只有一部分拿得到」。一期就是这么设计的。

全部用户 同一批人 展示开关 控制「看不看得到」 全放行 所有人都看得到这个活动 用于造声势、让用户知道有这回事 参与开关 控制「拿不拿得到」 只放行一部分 只有 4 个交易组的 B book 用户能拿到 COIN Direct\Mini400 · Direct\Mini10 · Direct\VIP1 · Direct\MIVIP
「展示」和「参与」分开控制,是一期能小范围试水的关键。提需求时这两个词必须分开说——混着说,开发一定会做成「看得到的人都能拿」。

为什么要这么设计

全量展示能拉动认知和讨论,限定参与能把成本和风险控制在可承受范围。等玩法验证稳定,只需要改一个开关就能逐步放开人群,不用重新开发。

3用户点「签到」的那一刻,系统在判断什么

四道校验,任何一道不过就拿不到分。前端需要针对每种情况给出不同的提示文案,否则用户只会看到一个灰按钮。

用户在 App 里点「签到」 ① 这个活动现在开着吗? 运营可以随时开关 ② 这个用户够资格参与吗? 例如:必须已注册 / 已过 KYC / 已入金 ③ 现在还在可参与的时间内吗? 活动有起止日,或「入金后 30 天内」这类窗口 ④ 今天还没签过吧? 一天只能签一次,按活动所在时区算「今天」 全部通过 记一笔签到,算出今天该得多少分 状态=待领取,同时算好领取截止时间 否 否 否 否 签不了 按钮置灰,并按不同原因给不同提示: 活动未开始 / 你还不符合条件 活动已结束 / 今天已经签过了
四道校验的顺序是固定的,前一道不过就不往下走。右边这个红框是产品要重点打磨的部分——四种「签不了」的原因,用户看到的文案应该完全不同。

4一笔积分的一生

同一笔积分会经历三个状态,中途有三个岔路会让它消失或回来。两个倒计时的起点不一样,这是最容易算错的地方。

待领取 任务完成,分已算好 用户点「领取」 已进钱包 可用余额,可以去兑换 兑换礼品 已使用 换成了券码或实物 倒计时① 到期 作废 从没进过钱包,无成本 倒计时② 到期 过期清零 余额扣掉,负债同步释放 仅「下单失败」→ 积分退回 倒计时① 从完成任务那一刻开始算 · 倒计时② 从点领取那一刻开始算 —— 两个起点不同,天数也分别配置
只有「已进钱包」的积分才算公司的负债。待领取阶段作废的那部分,财务上不产生成本;这也是为什么领取率是个需要盯的指标。
注意:「已使用」是终点,没有回头路——积分退回只发生在 Tada 下单失败这一种情况,兑换一旦成功就不可逆(详见第 7 节)。

5积分怎么算出来、值多少钱

两步换算:先算用户拿到多少分,再算这些分折合多少钱——后者就是财务要计提的成本。

基础分 按「第几轮第几天」查表 × 活动倍率 做活动时可临时加成 = 到手积分 用户看到的数字 × 单位现金价值(如 1 分 = 7,000 IDR) 公司要计提的成本 / COIN 负债 按每笔积分发放时的汇率冻结,后续改汇率不影响历史账
每一笔积分在发放的瞬间就把当时的规则和汇率冻结下来了。运营之后改配置、改汇率,都只影响新产生的积分,不会把历史账算乱——这是财务能对账的前提。

6一期的三种赚分方式

三种任务共用同一套「赚 → 领 → 花」的底座,区别只在于什么动作会触发发分。

每日签到

触发:用户每天手动点一次签到

按「连续第几天」发分,天数越多给得越多。可以配置漏签是否清零重来。
目的:培养打开 App 的习惯

交易任务

触发:达到设定的交易量

按累计交易量阶梯发分。
目的:直接拉动核心业务指标

Mission 任务

触发:完成某个一次性动作

注册、完成 KYC、首次入金等,做完即得。
目的:推动新用户走完开户漏斗

一期的限制

签到目前只支持用户手动点,系统自动签到的能力还没开发。这意味着前端的提醒和引导会直接决定领取率。

7兑换:我们和 Tada 怎么分工

Tada 负责商城和履约,积分余额始终由 HSB 保管,扣不扣分也由 HSB 裁决。下面这条链路已按 Tada 最新确认的接口口径整理。

用户 HSB Tada ① 点「兑换」 进入商城入口 ② 调 Tada 商城接口 带上用户 ID + 积分余额 ③ 返回商城网页 页面上直接显示余额 ④ 挑商品、下单 在 Tada 商城页面内 ⑤ HSB 扣分 余额够就扣,不够就拒绝 必须 ⑥ Tada 生成订单 扣分成功后才创建 订单创建成功了吗? 失败 成功 Tada 调 HSB 的「作废」接口,积分退回 退回原因写进兑换历史;作废失败会自动重试 重试仍失败 → Tada 发邮件通知 HSB 人工处理 按商品类型发放,兑换完成 电子券 · 实物 · PLN 电费 · 电子钱包 · 话费流量 此后不可取消、不可退回
只有「订单创建失败」这一条岔路会把积分退回用户。订单一旦创建成功、奖励已经生成,这笔兑换就是终态——Tada 明确表示不能取消、不能退货。所以真正的风控点在第 ⑤ 步:扣分由 HSB 判断,Tada 拿到的只是一个只读余额。

这条要划重点:兑换成功后不可逆

Tada 的原话是——客户成功兑换、奖励已生成给 HSB 之后,该笔兑换不能再取消,也不能退回。这意味着:前端必须在用户点「确认兑换」之前做足二次确认;客服口径也要统一成「兑换后无法撤销」,不能给用户留任何余地。

接口谁提供必须 / 可选用途与说明
商城登录
Catalog Webview Login
Tada 必须 HSB 带着用户 ID 和当前积分余额调用,换回一个商城网页地址,在 App 内嵌打开。余额在这一步就传过去了,所以商城页面能直接显示。
身份校验 / 取令牌
Authentication / Get Token
HSB 可选 Tada 在调用 HSB 接口前先取一个令牌。做不做由我们的安全要求决定。
查询积分余额
Get Member Points
HSB 可选 Tada 明确说这个接口在他们那边是可选的——他们只需要余额能被传过去并显示在商城页上,而余额在「商城登录」时已经给了。一期可以不做。
扣减积分
Redemption / Deduct Point
HSB 必须 用户下单时由 Tada 回调,HSB 校验余额后扣分。没有这个接口就无法上线兑换——这是整个商城功能的前置条件。
作废 / 退回积分
Add Void & Retry Void
HSB 必须 仅在 Tada 订单创建失败时调用,把已扣的积分退回给用户。Tada 会自动重试一次;两次都失败则发邮件给 HSB 人工处理。

兑换历史由 HSB 自己维护

哪个用户、什么时候、换了什么、当前什么状态——这套「会员 ↔ 兑换记录」的对应关系由 HSB 侧保存和展示,Tada 不负责这层映射。Tada 的历史详情里可以查到物流 / 发放的追踪信息,客服需要时从那里取。

8运营要上线一个活动,需要配三层

从上到下依次配置。上线一个新玩法,通常不需要开发介入——除非是全新的任务类型。

第 1 层 · 活动 定这一期叫什么、用什么币种、积分怎么折算成钱、整体倍率 第 2 层 · 任务包 把若干个任务打成一组,一起上下架,方便按人群或时间段投放 第 3 层 · 单个任务 定谁能看、谁能参与、怎么算分、多久内要领、领了多久过期
换奖励力度、改参与人群、延长活动时间,都在第 3 层改配置就行。只有新增一种「赚分的方式」(比如做一个邀请好友任务)才需要开发排期。