Skip to content

资金执行引擎业务模式与策略文档

一、核心定位

资金执行引擎 = 把账务意图变成真实资金动作的核心执行层 核心原则:合规、风控、幂等、可补偿、可审计

上游输入

  • 统一订单:t_unified_order
  • 交易记录/账务流水:t_trade_record / t_txn_journal
  • 路由/模板解析结果

下游输出

  • 钱包余额变更
  • 银行/清算接口调用
  • 对账、结算、异常补偿

二、核心输入维度(决策因子)

维度示例作用说明
交易场景sceneWALLET_TRANSFER, WITHDRAW, PAYMENT, CLEARING决定执行器类型及是否涉及外部资金
交易金额amount小额/大额/超阈值决定执行模式(同步/异步/批量)
风险等级risk_levelLOW/MID/HIGH决定是否人工审核或风控挂起
用户等级user_typeKYC1/KYC2/商户决定限额和通道策略
资金类型fund_type电子货币/银行存管决定执行通道及接口
时间属性time_typeT+0/T+1决定是否实时或批量执行

输出映射 → ExecutionStrategy 包括执行模式、执行器类型、是否风控挂起、超时策略、重试策略等


三、模块拆分与对应表

模块对应表核心职责流转说明
执行策略决策t_execution_strategy_rule + t_execution_strategy_condition根据交易上下文匹配策略,生成 ExecutionStrategy匹配 scene/amount/risk_level/user_type/fund_type 等条件,输出执行模式和执行器类型
执行入口治理t_fund_execute_entry控制幂等,记录执行状态INIT → READY → EXECUTING → SUCCESS/FAIL,防止重复执行
执行分发 / Dispatcher无专表分发到 SYNC/ASYNC/BATCH 执行器根据 ExecutionStrategy 决定分发路径
SYNC执行器t_fund_execute_task(同步也可记录)钱包内部资金变动,事务原子更新锁定账户 → 校验余额 → 生成账务流水 → 更新余额 → 提交事务
ASYNC执行器t_fund_execute_task异步调用银行/三方接口任务生成 → MQ 投递 → 外部系统调用 → 回写结果
BATCH执行器t_fund_execute_task + t_fund_execute_batch批量清算/结算扫描待处理数据 → 批量聚合 → 生成 batch_no → 批次执行 → 批次回执
异常补偿t_fund_execute_compensate异常或人工介入处理包含任务失败、超时、重复执行等补偿记录
监控/对账/审计日志/报表执行成功率、批次差错、对账处理对账失败触发补偿流程,记录审计日志

四、策略规则示例(文档化记录)

1️⃣ 钱包内部小额转账(同步执行)

规则编码RULE_SYNC_WALLET_SMALL
名称钱包小额同步转账
优先级1
执行模式SYNC
执行器类型WALLET
风控挂起
重试策略
超时策略5秒
条件scene=WALLET_TRANSFER AND amount<=100000 AND risk_level=LOW
备注钱包内部小额转账立即执行

2️⃣ 大额提现(异步 + 风控复核)

规则编码RULE_WITHDRAW_BIG
名称大额提现异步执行
优先级5
执行模式ASYNC
执行器类型BANK
风控挂起
重试策略最大重试3次,间隔10秒
超时策略30秒
条件scene=WITHDRAW AND amount>500000 AND risk_level IN (MID,HIGH)
备注提现超过阈值需要异步和风控复核

3️⃣ 清算/结算批量执行(BATCH)

规则编码RULE_CLEARING_BATCH
名称清算结算批量执行
优先级10
执行模式BATCH
执行器类型CLEARING
风控挂起
重试策略
超时策略
条件scene=CLEARING
备注定时批量清算/结算

五、流转状态与执行细节

状态机描述
INIT执行入口创建,未分发
READY策略匹配完成,待执行
EXECUTING执行中,可能是 SYNC、ASYNC、BATCH
SUCCESS执行成功,资金变动完成
FAIL执行失败,需补偿
COMPENSATING异常补偿或人工处理
FINAL执行结束,状态固定

六、执行流程示例(小额转账 SYNC)

步骤模块/表操作说明
1t_unified_order创建订单
2t_trade_record / t_txn_journal生成交易记录 / 账务意图
3t_fund_execute_entry创建执行入口,生成幂等Key,状态 INIT → READY
4执行策略决策模块匹配 RULE_SYNC_WALLET_SMALL,生成 ExecutionStrategy
5Dispatcher分发到 SYNC执行器
6SYNC执行器锁定账户 → 校验余额 → 生成账务流水 → 更新余额 → 提交事务
7t_fund_execute_entry状态更新 SUCCESS
8监控/对账/审计对账成功,记录日志

七、执行流程示例(大额提现 ASYNC)

步骤模块/表操作说明
1t_unified_order创建提现订单
2t_trade_record / t_txn_journal生成交易记录 / 账务意图
3t_fund_execute_entry创建执行入口,幂等Key生成,状态 INIT → READY
4执行策略决策模块匹配 RULE_WITHDRAW_BIG,生成 ExecutionStrategy(ASYNC + 风控挂起)
5Dispatcher分发到 ASYNC执行器
6t_fund_execute_task创建异步执行任务,状态 PENDING
7ASYNC执行器MQ 投递 → 外部银行接口调用 → 回写任务结果
8t_fund_execute_entry状态更新 SUCCESS/FAIL
9t_fund_execute_compensate如果失败或异常,生成补偿记录,人工介入
10监控/对账/审计检查任务成功率、对账差错、批次状态

八、批量执行示例(BATCH)

步骤模块/表操作说明
1t_unified_order / t_trade_record批量订单生成
2t_fund_execute_entry执行入口创建,状态 READY
3执行策略决策模块匹配 RULE_CLEARING_BATCH,生成 BATCH ExecutionStrategy
4Dispatcher分发到 BATCH执行器
5t_fund_execute_batch生成批次记录 batch_no,总笔数和总金额
6BATCH执行器扫描待处理任务,批量执行、回写结果
7t_fund_execute_task每笔任务记录状态和执行结果
8t_fund_execute_batch批次状态 RUNNING → DONE
9t_fund_execute_compensate对异常批次生成补偿记录
10监控/对账/审计批次对账,异常冻结资金,日志审计

九、说明与设计亮点

  1. 策略驱动:规则表 + 条件表实现灵活可配置策略,无需改代码即可调整业务逻辑。
  2. 幂等控制:入口表 + task_no 唯一索引,防止重复执行。
  3. 模块化执行:SYNC/ASYNC/BATCH分离,支持不同场景,事务/异步/批量独立处理。
  4. 状态追踪:全链路落库,支持异常补偿和审计。
  5. 可扩展:新增执行器或批次类型,只需配置策略和新增任务即可。
  6. 风险控制:大额/高风险交易可风控挂起,人工复核,保证资金安全。

整合策略、任务、批次、补偿和状态流的完整可视化流程表格/ASCII图


资金执行引擎整合流程图(ASCII + 表格说明)

┌───────────────────────┐
│ 统一订单 t_unified_order │
│ 订单创建               │
└─────────┬─────────────┘


┌─────────────────────────────┐
│ 交易记录/账务流水 t_trade_record │
│ 生成交易意图/流水             │
└─────────┬─────────────────┘


┌─────────────────────────────┐
│ 执行入口 t_fund_execute_entry │
│ 幂等Key+状态INIT→READY       │
└─────────┬─────────────────┘


┌─────────────────────────────┐
│ 执行策略匹配模块              │
│ t_execution_strategy_rule + t_execution_strategy_condition │
│ 生成 ExecutionStrategy       │
└─────────┬─────────────┬──────────┐
          │             │          │
          ▼             ▼          ▼
    ┌───────────┐  ┌───────────┐  ┌─────────────┐
    │ SYNC Exec │  │ ASYNC Exec│  │ BATCH Exec  │
    │ 钱包内部  │  │ 银行/三方 │  │ 清算/结算   │
    └─────┬─────┘  └─────┬─────┘  └─────┬──────┘
          │             │             │
          ▼             ▼             ▼
┌─────────────────────────┐ ┌─────────────────────────┐
│ t_fund_execute_task      │ │ t_fund_execute_task      │
│ 任务记录(异步/批量)      │ │ 任务记录(异步/批量)      │
└───────┬─────────────────┘ └───────────────┬─────────┘
        │                                 │
        ▼                                 ▼
┌─────────────────────────────┐
│ t_fund_execute_batch         │
│ 批次信息 batch_no / 总笔数  │
│ 状态 RUNNING → DONE          │
└─────────┬───────────────────┘


┌─────────────────────────────┐
│ t_fund_execute_compensate    │
│ 异常补偿 / 人工介入记录      │
└─────────┬───────────────────┘


┌─────────────────────────────┐
│ 监控/对账/审计              │
│ - 成功率/超时/批次差错       │
│ - 差错冻结资金               │
└─────────────────────────────┘

表格化流程说明

步骤模块 / 表核心操作输出 / 状态
1t_unified_order创建订单order_no, INIT
2t_trade_record / t_txn_journal生成交易意图/账务流水txn_id, amount, scene
3t_fund_execute_entry创建执行入口,生成幂等Key状态 INIT → READY
4执行策略匹配模块根据策略规则匹配 ExecutionStrategyexecution_mode, executor_type, need_hold
5Dispatcher分发到对应执行器SYNC/ASYNC/BATCH 路径
6SYNC执行器锁定账户 → 校验余额 → 更新余额 → 提交事务状态 EXECUTING → SUCCESS/FAIL
7ASYNC执行器生成 t_fund_execute_task → MQ投递 → 调用外部系统 → 回写结果状态 PENDING → SUCCESS/FAIL
8BATCH执行器扫描待处理数据 → 聚合批次 → 执行 → 回写任务t_fund_execute_batch 状态 RUNNING → DONE
9异常补偿模块t_fund_execute_compensate,处理失败/超时/重复任务人工介入或自动补偿
10监控/对账/审计对账、异常冻结资金、日志审计可追溯记录,执行成功率统计

执行策略规则示例(文档化)

规则编码名称执行模式执行器风控挂起条件备注
RULE_SYNC_WALLET_SMALL钱包小额同步转账SYNCWALLETscene=WALLET_TRANSFER AND amount<=100000 AND risk_level=LOW小额内部钱包交易立即执行
RULE_WITHDRAW_BIG大额提现异步执行ASYNCBANKscene=WITHDRAW AND amount>500000 AND risk_level IN (MID,HIGH)大额提现异步+风控复核
RULE_CLEARING_BATCH清算结算批量执行BATCHCLEARINGscene=CLEARING定时批量清算/结算

状态机与执行追踪

状态描述
INIT执行入口创建,未分发
READY策略匹配完成,待执行
EXECUTING执行中,可能是 SYNC/ASYNC/BATCH
SUCCESS执行成功,资金变动完成
FAIL执行失败,需补偿
COMPENSATING异常补偿或人工处理
FINAL执行结束,状态固定

模块设计亮点

  1. 策略驱动:规则可配置,支持在线调整,无需改代码。
  2. 幂等控制:入口表 + task_no 唯一索引,防止重复执行。
  3. 模块化执行:SYNC/ASYNC/BATCH 独立,支持事务/异步/批量处理。
  4. 状态追踪:全链路落库,支持异常补偿和审计。
  5. 风险控制:大额/高风险交易挂起,人工复核,保障资金安全。
  6. 监控对账:执行成功率、批次差错、异常冻结资金,实现可审计闭环。