开发文档
| 版本号 | 修改 | 修改时间 | 备注 |
|---|---|---|---|
| v1.0.0 | 王小琱 | 2024.12.20 | 初次修订 |
1. 项目简介
- 服务名称:
exchange-notabene-bridge-backend - 服务描述:本项目用于对接 Notabene 平台,实现虚拟资产服务商(VASP)间的合规信息交换,支持 gRPC 服务,提供 DID 查询、交易创建、Webhook 注册等功能。
- 所属模块:合规与风控基础服务。
- 负责人:王小琱(wang746277441@gmail.com)
2. 功能描述
- 查询 VASP(虚拟资产服务商)信息(DID、注册国家、网站等)。
- 创建合规交易(Travel Rule 相关数据上链 Notabene)。
- 注册 Webhook,接收 Notabene 平台事件推送。
- 交易数据本地持久化,便于合规追溯。
3. 系统架构
3.1 主要技术栈
- 编程语言:[Go / Protocol Buffers v3]
- 服务框架:[Go Micro / GORM]
- 数据库:[MySQL]
- API接口:[gRPC]
- 监控:[Prometheus]
- 容器编排:[Docker]
备注:具体依赖版本详见go.mod文件。
3.2 架构图
3.3 架构概括
业务层(Business Layer)
包含 Risk Service,负责业务风控逻辑,向内部服务提供风控能力。
基础服务层(Infrastructure Layer)
包含 Notabene Service,专注于提供合规交易服务,供业务层调用。
3.4 业务流程
3.4.1 创建合规交易流程
目前仅在体现场景中,体现到三方合规交易所的流程。
4. 依赖组件
| 组件 | 版本 | 说明 |
|---|---|---|
| MySQL | 8.x | 关系型数据库 |
| Notabene | - | 合规交易服务 |
5. 接口设计
见接口文档
使用
make doc可以重新生成接口文档。
6. 数据库设计
7. 项目部署
见部署文档
8. 错误码定义
| 错误码 | 错误信息 | 说明 |
|---|---|---|
| ErrCallNotabene | 请求失败 | 调用Notabene失败 |
| ErrSystem | 内部错误 | 内部服务调用失败 |
| ErrNotFound | 未找到 | 未找到数据 |
9. FAQ
1. 如何添加Webhook?
- 使用账号登录Notabene平台,在设置中添加Webhook。
2. Notabene账号和License如何获取?
- 需前往 Notabene官网 注册并获取。
3. 查询返回空数据?
- 检查请求参数(IP地址)是否正确;
- 检查Notabene服务配置和网络连通性。
10. 参考资料
11. 致谢
感谢 Notabene 提供的合规交易服务。
