贝壳
版本记录
2021/05/27 | 新增文档 | 杨文涛 | V1.0 |
2021/06/02 | 更新文档:要更抽象,满足接入任何外部项目的需要,对外接口要更精确 | 杨文涛 | V2.0 |
2021/06/08 | 更新文档:根据产品文档进行接口调整 | 杨文涛 | V3.0 |
1、引言
1.1 背景
为满足履约C2C-D0支付业务需要,对接银联云直通通道。
1.2 目标
借助银联‘云直通’平台能力扩展理房通支付产品范围,进一步提升用户体验。
1.3 范围
本文档适用于本项目涉及的产品、研发、测试以及该功能的使用人员。
1.4 名词解释
术语 | 解释 |
---|---|
银联云直通平台 | 向互联网平台提供的支付分账解决方案; |
云直通二级商户 | 进行云直通交易的商户,即商户-B;一期暂且不包括 |
云直通个人用户 | 进行云直通交易的个人用户,即个人-C;云直通以身份证号为个人用户唯一判定条件 |
互联网平台 | 接入银联云直通平台的机构; |
平台ID | 【一个平台】指在进件银行下创建的平台,例如,理房通如在中关村创建了一个平台ID,那身份证号A仅能在该平台ID下创建一个用户; |
平台订单号 | 平台自定义的唯一编号;每个平台订单号对应一个系统订单号,每个系统订单号进件通过后会生成一个 个人用户 ID ;若申请单审核“失败”,可填写相同的“平台订单号”再次请求,覆盖原申请单信息; |
系统订单号 | 申请单的主键,唯一定义此资源的标识; |
绑定银行卡 | 个人用户/二级商户对电子账簿余额提现的收款账户,即云直通绑定账户; |
电子账薄ID | 个人用户/二级商户在银联“云直通”平台创建的用于登记交易信息的记账簿ID; |
电子账簿账簿号 | 电子账簿账簿 号用于电子账簿接收外部转账时作为收款信息; |
理房通会员 | 本项目中通过理房通平台进行云直通交易的个人用户,必须首先在理房通平台注册会员,然后可以申请云直通业务,成为云直通个人用户,理房通平台维护其映射关系(N:1) |
1.5 参考文档
2、总体设计
2.1 整体业务架构说明
(绑卡模块:钱包是否需要根据流水号查询绑定银行卡状态?待钱包确定技术方案)
2.2 整体用户用例
2.3 领域模型说明
(1)整体领域模型
(2)资管账号内部属性关系
2.4 非功能性设计说明
大额,低频,无特殊要求
3、功能设计说明
3.1 用户电子账簿功能模块
3.1.1 用户创建电子账簿功能
3.1.1.1 功能说明
钱包侧调用会员中心,指定开通外部渠道下某个银行的电子账簿。如果会员未进件,则主动用户进件。如果已进件,则直接生成电子账簿。
3.1.1.2 流程时序图:
说明:
(1)前置条件:理房通会员完成实名&上传证件等操作,进入到业务模块
(2)钱包调用判断:中间态数据,当补偿任务获得终态时,主动通知到钱包;钱包会根据会员的异步通知更新自身状态。
3.1.1.3 接口定义
见接口文档,下同。
3.1.2 创建电子账簿结果查询功能
3.1.2.1 功能说明:
如果存在用户进件,那么创建电子账簿过程很可能存在中间态。在得到中间态结果时,钱包将通过创建请求流水号,再次复查结果,直到获得最终态结果。
钱包主动控制查询频次
3.1.2.2 流程时序图:
说明:
(1)前置条件:钱包已经发送创建电子账簿请求
(2)本接口只查询 请求流水号当前状态,然后返回钱包
(3)请求流水未终态数据由补偿任务处理,并通过异步通知钱包
3.1.2.3 接口定义
3.1.3 用户电子账簿列表查询功能
3.1.2.1 功能说明:
通过理房通会员Id查询已创建的电子账簿列表,账户余额确认查询本地。
3.1.2.2 流程时序图:
3.1.2.3 接口定义
3.2 用户绑卡功能模块
3.2.1 用户绑卡功能
3.2.1.1 功能说明
将理房通会员指定的银行卡绑定到外部用户Id名下,作为外部用户的提现银行卡
3.2.1.2 流程时序图
说明:
(1)前置条件:用户首先在理房通绑卡,然后选择银行卡绑定到云直通;云直通绑定过的卡则不用重复绑定。
(2)云直通开户银行编码,联行号字段,还需要用户在页面自行匹配输入/上游通过cardBin获得
(3)用户绑卡同样受到数量的约束上限10个,且需要绑定在云直通用户id上;
3.1.1.3 接口定义
3.2.2 用户银行卡绑卡结果查询
3.2.2.1 功能说明
通过绑卡请求流水号查询之前绑卡的结果
3.2.3.2 流程时序图
说明:银行卡绑卡数据,未终态数据等待补偿任务处理
3.2.2.3 接口定义
3.2.3 用户银行卡查询功能
3.2.3.1 功能说明
通过会员查询(云直通)用户已经绑定的银行卡
3.2.3.2 流程时序图
3.2.3.3 接口定义
3.2.3 会员解绑卡-(云直通)用户绑卡删除功能(待定功能)
问题点: 云直通要求已到达最小绑定账户数量,无法注销:同一个用户至少需绑定一个可用的账户,那么理房通会员解绑卡可能受阻
3.3 会员注销-(云直通)用户电子账簿注销(待定)
功能说明:理房通会员注销时,关联账号账户都注销,会员入口关闭。此时,会员关联的(云直通)用户Id也无入口,但在云直通-银联端无注销接口,只能注销电子账簿。
为缩短接口时间,在注销会员前,让上游系统检查是否存在理房通会员-云直通电子账簿,如有,则上游引导用户先注销云直通电子账簿,然后再走理房通注销流程。
流程时序图:
无新接口
3.4 未终态请求补偿任务
3.4.1 功能说明
采用 xxljob
3.4.2 流程时序图
4、数据库设计说明
4.1 数据总体设计图
4.2 详细表字段说明
4.2.1 (云直通)用户信息表
表名:t_cloud_user_info
名称 | 类型 | 是否主键 | 是否必填 | 是否加密 | 默认值 | 是否索引 | 含义 | 备注 |
---|---|---|---|---|---|---|---|---|
pkid | | Y | Y | N | Y | 主键id | 自增主键 | |
user_id | | N | N | N | Y | 理房通会员Id | 兼容商户号 | |
channel_code | varchar(20) | N | Y | N | Y | 渠道编码 | ||
channel_bank_code | varchar(20) | N | Y | N | Y | 渠道所需银行编码 | user_id+channel_code+channel_bank_code组合索引 | |
inner_user_id | | N | N | N | N | 支付介质号(内部映射Id) | 用于映射资管用户在理房通的支付介质号,进入会员数据模型 | |
account_code | | N | N | N | N | 理房通账号 | 会员默认生成,支付介质号开户时主动传递过去 | |
cloud_user_id | varchar(50) | N | N | N | Y | 资管(云直通)Id | 云直通是19位 | |
cloud_account_id | varchar(50) | N | Y | Y | N | 电子账簿ID | 云直通是19位 | |
cloud_account_no | varchar(50) | N | Y | Y | N | 电子账簿账号 | 云直通是24位;可能无,需要通过查询来补全 | |
status | int | N | Y | N | 1 | N | 数据状态 | 1有效2无效 |
create_time | datetime | N | Y | N | current_timestamp | N | 创建时间 | |
update_time | datetime | N | Y | N | current_timestamp | N | 修改时间 | |
remark | varchar(64) | N | N | N | '' | N | 备注 |
支付介质号(内部映射Id)生产方案探讨:
(1)利用t_user_info产生一个单独属于partnter_key='CLOUD'的的会员数据,共用会员自增机制,修改最小
(2)单独产生一个序列号,需要修改t_card的字段类型user_id 从bigint变成varchar;表数据260万;银行卡模块整体UserId代码字段从Long修改为String
4.2.2 (云直通)用户请求渠道流水表
表名:t_cloud_channel_request_log
名称 | 类型 | 是否主键 | 是否必填 | 是否加密 | 默认值 | 是否索引 | 含义 | 备注 |
---|---|---|---|---|---|---|---|---|
pkid | | Y | Y | N | Y | 主键id | 自增主键 | |
out_request_no | varchar(64) | N | Y | N | Y | 上游业务流水号 | 上游一个请求可能会员要拆出多个请求到渠道去 | |
request_no | varchar(64) | N | Y | N | Y | 内部业务流水号 | 全局唯一(unique) | |
status | int | N | Y | N | 0 | N | 状态 | 0处理中1成功2成功但数据缺失3失败 |
request_param | text | N | Y | N | N | 请求参数 | JSON格式存储,不查询 | |
request_result | text | N | N | N | N | 返回结果 | JSON格式存储,未终态时持续请求后更新 | |
user_id | | N | N | N | Y | 理房通会员Id | 兼容商户号 | |
channel_code | varchar(20) | N | Y | N | Y | 渠道编码 | ||
channel_bank_code | varchar(20) | N | Y | N | Y | 渠道所需银行编码 | channel_code+channel_bank_code确定外部平台 | |
cloud_user_id | varchar(50) | N | N | N | Y | 资管(云直通)Id | 创建电子账簿用 | |
cert_num | varchar(255) | N | N | Y | Y | 身份证号/企业营业执照号 | 用户进件用 | |
card_no | varchar(255) | N | N | Y | Y | 银行卡号 | 云直通绑卡用 | |
req_count | int | N | N | N | 0 | N | 请求次数 | 重试任务次数,控制调用频次 |
req_type | int | N | N | N | 0 | 0 | 请求类型 | 1进件/2绑卡/3创建电子账簿/4修改用户信息 |
create_time | datetime | N | Y | N | current_timestamp | N | 创建时间 | |
update_time | datetime | N | Y | N | current_timestamp | N | 修改时间 | |
remark | varchar(64) | N | N | N | '' | N | 备注 |
接口(是否必传 可以用y和n):
滴滴
一、业务需求
- 产品prd:爱奇艺惊奇夜活动介绍
-
通过活动带来的C拉C、实物助力、天天领现金效果二、项目设计
通过增加子任务关系、投票机会奖品类型,即支爱奇艺惊奇夜活动,也扩展任务功能,新建投票系统
二、系统架构
2.1 总体架构
ER关系图
2.2 业务流程
2.2.1任务系统
2.2.1.1创建任务
2.2.1.2完成任务
......
三、接口文档
prism:prism接口
四、数据更改
4.1 任务系统数据库:
4.2 投票系统数据库:
4.2.1 投票活动表
4.2.2 投票活动详细表(投票项)
4.2.3 投票活动城市表
4.2.4 投票投放渠道表
4.2.5 用户投票信息表
4.2.6 用户投票流水表
五、外部支持
任务 mq 字段:任务类型、子任务序号、用户id
序号 | 支持业务 | 负责人 | 期望完成时间 | 上线时间 |
---|---|---|---|---|
1 | 1、商详页任务完成发送mq 2、商详页url链接 | 陈名扬 | 1月2号 | 1月4号 |
2 | 1、推荐有奖 邀请好友、推荐有奖 进入页面、天天领现金完成拼团、天天领现金 进入页面 任务完成发送mq 2、相关活动的url链接 3、推荐有奖、天天领现金 活动进行中的城市 集合 | 杜立东 | 1月2号 | 1月4号 |
3 | 1、橙心果园 任务完成发送mq消息 2、活动url链接 3、推荐有奖、天天领现金 活动进行中的城市 集合 | 陈名扬 | 1月2号 | 1月4号 |
4 | 1、支持测试 | 姜兆阳 |
六、任务拆分
序号 | 支持业务 | 负责人 | 排期 |
---|---|---|---|
序号 | 支持业务 | 负责人 | 排期 |
1 | 1.发放投票 2. 查询投票活动信息 3. 定时任务同步票数至三方(爱奇艺) 4. 投票任务(增加/上线/下线) 5. 查询个人投票流水 | 孙明杰 | |
2 | 1.查询个人票数 2. 投票 3. 渠道管理(增加) | 高立强 | |
3 | 1、创建(查询)任务 2、子任务 增删改 | 张金明 | |
4 | 1、完成任务 2、对接任务完成mq 3、对接活动 城市集合查询 4、首页返回用户id、城市是否开启了惊奇夜活动 | 李艳强 |
七、项目排期
会议纪要格:
会议名称: | 钱包收银台0618周会 | ||||
会议时间: | 2021-06-18 14:00-15:40 | ||||
会议地点: | 阿斯加德 | ||||
会议目的: | 钱包周会组内沟通 | ||||
参会人员: | 孔凤玉、王奇良、韩文龙、张清森、王金鹏、李艳强、孙景通 | ||||
会议纪要: |
一、任务梳理
二、分享
1.奇良分享:
缓存 的使用
出入境二要素
user_auth_flow_unifiedauth新增国籍
02 非中国 配一个鉴权码
02 中国 配一个鉴权码
枚举转换统一转换 待办 逻辑判断使用自己的code码
上线bug分析
2.
艳强分享
钱包手动提现和自动提现,钱包不是调用统一收单
后续规划:
自动提现
不调用echshier-admin,提现卡应该在会员侧保存
3.文龙分享
上报清结算 表结构介绍
调研接入boss
调研
优化方案排期计划
总体协调人:李艳强
钱包:奇良
pos收银台,家家支付:金鹏
鉴权:文龙
收银台:清森
|
邮箱结尾:
王龙珍
单位:北京理房通支付科技有限公司/产品技术中心/项目管理部
工位:北京市海淀区东北旺西路8号院中关村软件园4号楼D座