相同绑卡信息拦截 — 迭代需求
需求名称:相同绑卡信息拦截。目标是在同一业务线下,用户 A 已成功绑定的卡,用户 B 再绑定同一卡时必须失败,并提示“卡已绑定过,请使用其他卡”。同一用户本人重复绑定不做限制。
1. 背景
当前绑卡链路允许客户多次发起绑卡。若同一张银行卡可以被多个客户在同一业务线下重复绑定,可能产生以下问题:
- 多个客户共用同一张还款卡,客户资产边界不清晰。
- 后续主动还款、自动扣款、默认卡选择和客服查询口径容易混乱。
- Provider token、授权状态或卡记录重复沉淀,增加扣款失败和排查成本。
- 疑似共享卡、冒用卡或代绑卡风险无法在绑卡入口被及时拦截。
本需求只定义“相同绑卡信息”的业务拦截规则,不调整绑卡失败原因映射、结果页样式、自动打款或 active 订单处理逻辑。
2. 功能要求
2.1 拦截目标
同一个卡号,在同一 bizCode 维度下,如已被其他唯一客户绑定成功,则本次绑卡失败;如为同一客户本人重复绑定,不做限制。
判断维度如下:
| 维度 | 要求 |
|---|---|
| 业务线 | 使用 bizCode 区分不同业务线 / App / 租户 |
| 唯一客户 | 使用系统内可稳定识别同一客户的唯一标识,例如 custId、identityNumber 或当前业务线确认的客户唯一键;用于判断本次绑卡人与已有成功绑卡人是否为同一客户 |
| 卡号 | 使用完整卡号对应的安全识别值判断是否同卡;前端和普通日志不得展示完整卡号 |
| 成功记录 | 仅已绑定成功且当前仍可用的卡记录参与拦截 |
2.2 拦截规则
| 场景 | 处理规则 |
|---|---|
用户 A 已成功绑定某卡,用户 B 在同一 bizCode 下绑定同一卡 | 本次绑卡失败,提示“卡已绑定过,请使用其他卡” |
同一客户在同一 bizCode 下重复绑定自己已成功绑定的卡 | 不按本需求拦截,允许继续走现有绑卡流程 |
同一客户、不同 bizCode 绑定同一卡 | 不按本需求拦截;不同业务线是否复用由各业务线另行配置 |
| 已解绑、已失效或不可用卡再次绑定 | 如历史成功绑卡客户不是本次客户,仍按“其他客户已绑定过”拦截;如历史客户为本人,不按本需求拦截 |
| 绑卡处理中或失败记录 | 不作为“绑定成功一次”的判断依据;处理中重复发起仍按 active 订单规则处理 |
2.3 拦截时机
系统应在以下时机执行相同绑卡信息判断:
- 发起绑卡前:如当前链路已经能识别完整卡号或安全识别值,应先判断是否已绑定成功,命中后直接拦截。
- 绑卡成功入库前:无论前置是否判断过,成功落卡前必须再次判断,避免并发或回调晚到导致重复成功记录。
- 设置默认卡前:如发现该卡属于其他客户,必须拦截,不能返回其他客户卡信息;如属于本人,不按本需求限制。
3. 客户提示
命中其他客户已绑定同一卡时,客户侧仅提示卡已绑定过,并引导客户更换其他银行卡。
推荐英文文案:
| 场景 | Title | Message | 主按钮 |
|---|---|---|---|
| 该卡已被其他客户绑定 | Card Already Bound | This card has already been bound. Please use another card. | Use Another Card |
页面不得展示完整卡号、CVV、PIN、OTP、provider token 或内部错误码。若需展示卡信息,仅展示脱敏卡号,例如 **** **** **** 1234。
4. 后台与客服口径
- 客服后台可看到客户当前可用绑卡列表、脱敏卡号、业务线、绑定时间、默认卡状态和最近一次授权状态。
- 重复绑卡被拦截时,应保留一条操作记录,便于客服查询客户是否尝试过绑定已被其他客户绑定过的卡。
- 客服话术统一为:卡已绑定过,请客户使用其他卡。
- 不向客服或运营页面暴露完整卡号、CVV、PIN、OTP 或 provider token。
5. 边界说明
- 本需求不限制同一张卡在不同业务线下使用。
- 本需求只限制同一张卡在同一业务线下被不同客户重复绑定;同一客户本人重复绑定不做限制。
- 本需求只做绑卡入口拦截,不直接判定客户欺诈;共享卡、疑似冒用卡、黑名单等后续风险判断仍由风控规则处理。
- 本需求不改变 provider 绑卡流程、OTP / PIN / 3DS 验证方式。
- 本需求不新增绑卡失败原因映射;如需页面枚举,可复用
CARD_ALREADY_ADDED或由后端新增等价标准原因。 - 本需求不处理同支付通道处理中订单去重,处理中订单仍按
17-绑卡失败率优化与异常结果页中 active 订单规则执行。
6. 验收标准
- 同一
bizCode + 同一卡号下,如该卡已被其他客户绑定成功,本次绑卡失败。 - 用户 A 已成功绑定某卡后,用户 B 在同一
bizCode下绑定同一卡会失败,并提示“卡已绑定过,请使用其他卡”。 - 同一客户在同一
bizCode下重复绑定自己已成功绑定的卡,不因本需求被拦截。 - 并发绑卡、回调重复通知或客户短时间重复提交时,也不会让其他客户绑定已被占用的卡。
- 已有成功卡命中其他客户重复绑定时,前端能展示“卡已绑定过,请使用其他卡”的提示,并提供更换银行卡动作。
- 不同
bizCode下同一客户绑定同一卡,不因本需求被拦截。 - 已解绑或失效卡重新绑定时,如历史成功绑卡客户不是本次客户,仍按“卡已绑定过,请使用其他卡”拦截;如为本人,不按本需求限制。
- App / H5、普通日志、短信和客服话术均不展示完整卡号、CVV、PIN、OTP 或 provider token。
- 后台可查询重复绑卡拦截记录,支持客服解释客户为什么不能重复添加同一张卡。