交易事件中心
订单、钱包、渠道和链上状态发生变化后,系统按规则自动生成资产变动、收益与成本记录,并创建需要对账的数据。
业务状态 → 收益与成本记录 → 对账
event pipeline v4订单成交、银行回单、链上确认、PSP 状态、退款等。
ORDER_FILLED
校验幂等键、币种、资金实体、时间、关联对象。
event_id saved
确定资产动作、收益状态、是否需等待结算及对账策略。
fee-v1.8
更新钱包资产变动和收益与成本记录;是否可以确认收益由当前业务节点决定。
LEDGER_POSTED
按 reference / tx hash / 地址等寻找外部事实。
MATCH_PENDING
最近事件
查看收益台账 →OTC-260906-4491 · USD 645,330.60 · 触发应计收益转已实现
WD-260906-0182 · ETH · 12/12 confirmations · 触发实际 Gas 成本
BNK-7JQ91 · USD 18,000 · 未识别付款人别名
OTC-260906-4528 · USDT/USD · 价差、手续费先生成应计
| 事件时间 | 事件类型 | 业务对象 | 金额 / 币种 | 触发动作 | 收益状态 | 对账状态 |
|---|---|---|---|---|---|---|
| 16:30:18 | PSP_SETTLED | OTC-260906-4491 | 645,330.60 USD | 待确认价差/手续费 → 已确认收益记录 | REALIZED | 已匹配 |
| 16:28:51 | CHAIN_CONFIRMED | WD-260906-0182 | 12.5000 ETH | 冻结转已扣;实际 Gas 成本入账 | REALIZED | 已匹配 |
| 16:22:09 | BANK_CREDITED | BNK-7JQ91 | 18,000.00 USD | 创建外部流水;生成候选匹配 | N/A | 待人工 |
| 16:19:33 | ORDER_FILLED | OTC-260906-4528 | 100,000 USDT | 生成应计价差、应计手续费 | ACCRUED | 等待结算 |
资金账户与客户资产
一侧查看平台资金实际存放在哪里、还能使用多少;另一侧查看客户资产总额及平台备付是否足额。客户逐笔钱包流水继续在现有客户钱包系统查询。
| 平台账户 | 币种 / 网络 | 账户总余额 | 可用余额 | 冻结 / 待结算 | 余额来源 / 更新时间 | 余额情况 | 操作 |
|---|---|---|---|---|---|---|---|
Bank A · USD 收款户USD-COLLECTION-01 · ****9081 |
USD | 8,520,100.00 | 7,940,100.00最低 2,000,000.00 | 580,000.00 | 银行余额接口今天 16:25:04 | 余额充足 | |
PSP X · 全球商户账户MERCHANT-GLOBAL-001 |
USD | 2,410,880.35 | 2,120,880.35最低 2,000,000.00 | 290,000.00 | 渠道余额接口今天 16:27:42 | 余额充足 | |
PSP X · 欧洲商户账户MERCHANT-EU-002 |
EUR | 80,500.00 | 35,500.00最低 100,000.00 | 45,000.00 | 渠道余额接口今天 16:27:42 | 余额不足缺口 64,500.00 EUR | |
Custody A · 热钱包 02HOT-WALLET-02 |
USDTTRON | 4,100,000.0000 | 3,820,000.0000最低 2,500,000.0000 | 280,000.0000 | 托管方余额接口今天 16:28:51 | 余额充足 | |
Custody A · 热钱包 02HOT-WALLET-02 |
ETHEthereum | 685.4200 | 612.4000最低 500.0000 | 73.0200 | 托管方余额接口今天 16:28:51 | 余额充足 | |
BTC 归集地址 01bc1q...7m2k |
BTCBitcoin | 118.24000000 | 102.18000000最低 80.00000000 | 16.06000000 | Bitcoin 链上地址今天 15:58:22 | 更新延迟余额为最近一次结果 |
这些账户是什么
- 银行账户是平台公司主体在银行开立的真实账户;支付渠道账户是平台在 PSP 开立的商户余额账户。
- 托管钱包是托管机构为平台管理的钱包或子账户;链上自管地址是平台自行管理私钥的真实链上地址。
- 系统中的账户编号只用于把真实外部账户映射到对应资金主体、币种、网络和用途,本身不是另一个存钱账户。
页面余额展示口径
- 账户总余额直接取银行、支付渠道、托管方返回的余额,或指定区块高度的链上地址余额。
- 可用余额是当前可以继续付款、划转或提币的金额;冻结/待结算是渠道限制、在途付款或待执行指令占用的金额。
- 最低运营余额在“规则中心”按账户和币种设置。可用余额低于该值时显示“余额不足”,并开放“补充资金”入口。
- “更新延迟”只说明余额数据未按时刷新;本页不展示对账差额,对账结果统一在“余额轧差”模块查看。
| 资产 / 网络 | 客户总资产 | 可用资产 | 冻结资产 | 待确认入金 | 平台备付资产 | 覆盖差额 | 状态 |
|---|---|---|---|---|---|---|---|
| USD | 6,820,000.00 | 6,180,000.00 | 640,000.00 | 180,000.00 | 7,080,100.00 | +260,100.00 | 备付足额 |
| EUR | 1,285,400.00 | 1,160,400.00 | 125,000.00 | 42,000.00 | 1,430,200.00 | +144,800.00 | 备付足额 |
| USDT TRON | 3,480,000.0000 | 3,200,000.0000 | 280,000.0000 | 86,000.0000 | 4,100,000.0000 | +620,000.0000 | 备付足额 |
| ETH Ethereum | 540.1000 | 467.0800 | 73.0200 | 14.2000 | 685.4200 | +145.3200 | 备付足额 |
| BTC Bitcoin | 100.50000000 | 84.44000000 | 16.06000000 | 1.25000000 | — | — | 等待外部余额 |
客户资产汇总口径
- 客户总资产来自现有客户钱包账本,按币种汇总“可用资产 + 冻结资产”;同一客户的不同钱包不会重复计算。
- 待确认入金尚未达到银行到账或链上确认条件,单独展示,不计入客户总资产和备付覆盖计算。
- 退款、退汇或链上重组形成的冻结金额仍属于客户资产,处理完成后再转回可用或扣减。
平台备付覆盖口径
- 平台备付资产只汇总账户配置中标记为“客户资金备付”的银行、支付渠道和数币钱包账户总余额,不包含平台运营资金。
- 覆盖差额 = 平台备付资产 − 客户总资产,必须按同一币种和网络分别计算,不允许先折算后跨币种抵销。
- 覆盖不足或外部余额未同步时,系统提示运营并阻塞该币种的日结;逐笔客户流水仍在现有钱包系统中查询。
收益总览
汇总实时已实现的收益和成本;应计、预估与等待结算的金额单独展示,不能混入已实现净收益。
7 日已实现净收益
+12.8%等待确认的收益
查看队列 →OTC-260906-4528 · $600.00 · 等待 USD 出金结算
WD-260906-0191 · $83.20 · 等待链上 7 个确认
WD-260906-0447 · $1,200.00 · 等待 PSP 回单
PSP-SEP-06 · -$280.00 · 等待账单确认
已实现收入构成
USD已实现成本构成
USD收益健康度
需关注平台收益台账
主台账一行代表一笔业务交易或结算单元的完整收益结果。它汇总各业务节点产生的收益与成本、客户与平台的实际结算、人工凭证或链上事实、明细对账及余额轧差。
| 收益单元 / 关联业务 | 业务与结算币种 | 客户侧结算 | 平台侧结算 / 外部事实 | 收入合计 | 成本合计 | 实际净收益 | 明细对账 | 余额轧差 | 最终收益状态 |
|---|---|---|---|---|---|---|---|---|---|
|
REV-UNIT-260906-081
OTC 卖出 USDT / 支付 USD OTC-260906-4491 · C-009218 |
客户:USDT 平台:USD |
100,000 USDT 已确认
链上 12/12 confirmations |
100,500 USD 已支付
人工工单 FIAT-DEP-071 · 回单已复核 |
$600.00 价差 500 + 费 100 |
−$8.00 银行费用 |
$592.00 | 内部/外部已对平 | USD 已轧平 | 已实现 |
|
REV-UNIT-260906-094
OTC 卖出 USDT / 支付 USD OTC-260906-4528 · C-007751 |
客户:USDT 平台:USD |
100,000 USDT 已确认 |
100,500 USD 待支付
等待法币工单执行 |
$600.00 应计 |
待确认 | — | 内部已对平 | 待日终 | 应计 |
|
REV-UNIT-260906-102
数币提币 WD-260906-0182 · C-009218 |
客户:ETH 平台:ETH |
12.5 ETH 已扣 |
链上最终确认
tx 0xaf39...a920 · Gas 已读取 |
$20.12 客户网络费 |
−$14.08 实际 Gas |
$6.04 | 链上已对平 | ETH 已轧平 | 已实现 |
|
REV-UNIT-260906-118
法币出金 WD-260906-0447 · C-007751 |
客户:USD 平台:USD |
1,200,000 USD 已扣 |
人工付款凭证已复核
FIAT-WD-042 · ref MAN-443209 |
$1,200.00 出金手续费 |
−$250.00 银行费用 |
$950.00 | 人工已复核 | USD 未轧平 +250 | 待关账 |
收益确认流程:先结算,再明细对账,再关账
严格确认口径平台收益台账会在订单成交时创建“收益追踪单元”,以便全流程跟踪;但它不会在成交时确认平台最终收益。实际收入和成本在结算事实出现后生成,对账决定能否确认,余额轧差和日结决定能否关账。
订单成交:系统记录待确认的理论价差、手续费和对应收益记录。
不计已实现
客户侧、平台侧已结算;收入成本已生成,但仍等待明细对账验证。
待明细对账
订单、钱包、工单/链上事实已对平;自动纳入实时已实现净收益。
可看收益,不可关账
关联账户/币种余额轧差通过,日结审批完成,固化快照。
正式日结结果
凭证缺失/金额不符为 BLOCKED;退款、退汇、链重组为 REVERSED。
系统反向或阻塞
完整案例:REV-UNIT-260906-081(OTC 卖出 USDT / 平台人工支付 USD)
最终已关账订单成交,生成应计收入 600 USD。
ACCRUED
工单双人复核,生成实际银行成本 8 USD。
PENDING_RECONCILIATION
单笔事实已对平,实时净收益为 592 USD。
REALIZED_PENDING_CLOSE
Bank A USD 余额轧平,日结审批通过。
CLOSED
若发生退汇,系统新增一条反向冲回记录,状态改为“已冲回”。
REVERSAL
| 收益单元 / 业务单 | 预计收入 | 预计成本 | 当前确认阶段 | 阻塞原因 | 系统下一动作 | 责任人 / SLA |
|---|---|---|---|---|---|---|
|
REV-UNIT-260906-094
OTC-260906-4528 卖出 100,000 USDT / 支付 USD |
$600.00 | 待确认 |
ACCRUED
客户 USDT 已确认 |
USD 100,500 尚未支付 | 创建 / 执行法币付款工单 | 法币运营 · Mia SLA 01:12:08 |
|
REV-UNIT-260906-119
WD-260906-0191 提币 50 ETH |
$83.20 | 预估 −$44.11 | PENDING_RECONCILIATION | 链上确认 5 / 12 | 系统监听区块确认并读取实际 Gas | 系统 预计 18 min |
|
REV-UNIT-260906-121
OTC-260906-4487 买入 BTC |
$810.00 | 待确认 | BLOCKED | 对冲成本回单缺失 | 补充成本工单或提交差异处理 | 交易运营 · Alex 已超时 00:42:16 |
待确认案例:OTC-260906-4528 为什么还不是已实现?
ACCRUED系统生成预计价差 500 USD、预计手续费 100 USD。
收入应计
100,000 USDT 达到链上确认阈值。
客户侧已结算
法币付款工单尚未执行,缺少平台侧结算事实。
阻塞
系统才会生成实际成本,并验证订单、钱包、凭证。
待执行
明细已对平后自动转入下一页签。
自动推进
| 收益单元 | 实际净收益 | 明细对账 | 关联账户/币种 | 余额轧差 | 不能关账的原因 | 系统下一动作 |
|---|---|---|---|---|---|---|
|
REV-UNIT-260906-118
法币出金 WD-260906-0447 |
$950.00 | RECONCILED | Bank A / USD-COLLECTION-01 | 差额 +250 USD | 账户余额未轧平 | 等待余额差异工单关闭后重跑日结 |
|
REV-UNIT-260906-102
数币提币 WD-260906-0182 |
$6.04 | RECONCILED | ETH 热钱包 | 等待日终 | 尚未到 ETH 余额快照截止时点 | 日结时自动执行余额轧差 |
| 收益单元 | 实际净收益 | 明细对账 | 余额轧差 | 日结批次 | 关账时间 | 状态 |
|---|---|---|---|---|---|---|
|
REV-UNIT-260906-081
OTC-260906-4491 |
$592.00 | 已对平 | Bank A USD 已轧平 | CLOSE-20260906-01 | 2026-09-06 23:59:59 | CLOSED |
|
REV-UNIT-260906-067
数币充值手续费 |
$42.16 | 链上已对平 | USDT 已轧平 | CLOSE-20260906-01 | 2026-09-06 23:59:59 | CLOSED |
| 调整单 | 原收益单元 | 类型 | 调整金额 | 原因 | 审批状态 | 收益影响 |
|---|---|---|---|---|---|---|
| ADJ-260906-011 | REV-UNIT-260906-118 | 银行成本补提 | −$250.00 | 日终余额差定位为未入账银行费用 | 待复核 | 待批准后降低净收益 |
| REV-260906-004 | REV-UNIT-260906-039 | 退汇冲正 | −$125.00 | 银行退汇,原出金手续费需退回 | 已完成 | 原收益单元转 REVERSED |
收益与成本明细
这是平台收益台账的明细流水:一行代表一个交易节点产生的一条收入、成本、调整或冲正记录,用来解释主台账中的收入、成本和实际净收益构成。
| 记录编号 / 时间 | 所属收益单元 | 业务节点 | 收入 / 成本项目 | 原币金额 | USD 折算金额 | 确认状态 | 结算/凭证依据 | 操作 |
|---|---|---|---|---|---|---|---|---|
| REC-260906-10381 16:30:18 |
REV-UNIT-260906-081 |
FIAT_WORKORDER_APPROVED
人工法币工单复核 |
收入 / OTC 价差已实现 | +500.00 USDT | +500.00 | 已实现 | FIAT-DEP-260906-071 | |
| REC-260906-10382 16:30:18 |
REV-UNIT-260906-081 |
FIAT_WORKORDER_APPROVED
人工法币工单复核 |
收入 / 交易手续费已实现 | +100.00 USDT | +100.00 | 已实现 | FIAT-DEP-260906-071 | |
| REC-260906-10383 16:30:18 |
REV-UNIT-260906-081 | FIAT_WORKORDER_APPROVED | 成本 / 银行费用 | −8.00 USD | −8.00 | 已实现 | FIAT-FEE-260906-019 | |
| REC-260906-10379 16:19:33 |
REV-UNIT-260906-094 |
ORDER_FILLED
OTC 订单成交 |
收入 / OTC 价差应计 | +500.00 USDT | +500.00 | 应计 | OTC-260906-4528 | |
| REC-260906-10380 16:19:33 |
REV-UNIT-260906-094 | ORDER_FILLED | 收入 / 交易手续费应计 | +100.00 USDT | +100.00 | 应计 | OTC-260906-4528 | |
| REC-260906-10264 15:20:09 |
REV-UNIT-260906-072 | MANUAL_FEE_WORKORDER | 成本 / 银行费用调整 | −250.00 USD | −250.00 | 待复核 | FIAT-FEE-260906-019 |
明细生成规则:什么情况下会出现一条记录?
系统事件驱动OTC 成交生成应计价差/手续费;法币工单或链上确认满足条件后,系统生成对应的已实现收入明细。
人工银行费用工单审批、渠道账单确认、链上 receipt 读取实际 Gas 时,系统生成实际成本明细。
退款、退汇、链重组、实际费用与预估偏差,均生成新记录;不会修改或覆盖已存在明细。
状态与权限规则
禁止直接编辑案例:为什么主台账显示净收益 592 USD?
REV-UNIT-260906-081| 节点 | 收益与成本明细 | USD 影响 | 说明 |
|---|---|---|---|
| OTC 订单成交 | 应计价差 | +500.00 | 理论价差;当时还不计入已实现 |
| OTC 订单成交 | 应计手续费 | +100.00 | 理论手续费;等待实际结算 |
| 人工法币工单复核 | 已实现价差 + 已实现手续费 | +600.00 | 客户 USDT 已确认、平台 USD 已支付且凭证已双人复核 |
| 银行费用工单复核 | 实际银行成本 | −8.00 | 以实际付款费用为准 |
| 平台收益台账汇总 | 实际净收益 | +592.00 | 600 − 8;明细对账和余额轧差完成后可关账 |
收益确认队列
管理已经记录预计收益或预计成本、但尚不能计入“已确认净收益”的交易。后续结算或确认条件满足后,系统自动确认。
| 关联交易 | 当前节点 | 收益 / 成本项 | 当前金额(USD) | 状态 | 确认条件 | 阻塞原因 | 系统下一动作 |
|---|---|---|---|---|---|---|---|
|
OTC-260906-4528
卖出 100,000 USDT |
订单已成交
ORDER_FILLED |
价差 $500 + 手续费 $100 | +600.00 | 应计 | 客户 USDT 确认 + USD 出金结算 | 等待 PSP_SETTLED | 监听法币通道回单 |
|
WD-260906-0191
提币 50 ETH |
已广播
TX_BROADCAST |
客户网络费收入 / Gas 成本 | +83.20 / −$44.11 | 预估 | 达到 12 个链上确认 | 5 / 12 confirmations | 监听 CHAIN_CONFIRMED |
|
WD-260906-0447
法币出金 $1.2M |
通道已受理
PSP_ACCEPTED |
客户出金手续费收入 | +1,200.00 | 待结算 | 收到实际成功回单 | 等待 PSP_SETTLED | 查询通道状态 |
|
OTC-260906-4487
买入 BTC |
客户侧已结算
CLIENT_SETTLED |
价差收益 | +810.00 | 异常阻塞 | 平台对冲单成本锁定 | 对冲回单缺失 | 创建差异工单 |
确认规则:OTC 价差与手续费
订单成交时先按锁定的成交价、成本来源和费率规则记录待确认收益。
- 必须满足客户资产侧已确认/到账。
- 法币或数币结算侧完成,且成本来源已锁定。
- 满足后系统冲回“待确认收益”并新增“已确认收益”,不会修改原始记录。
确认规则:数币提币网络费
客户申请提币时只冻结本金与预估网络费;广播不代表实际成本。
- 链上达到确认阈值后,客户网络费转为已实现收入。
- 同节点读取实际 Gas,生成已实现链上成本。
- 预估与实际的差额通过调整记录补齐;替换交易必须沿用同一提现单号。
调整与冲正
仅用于修正已记录的结果。系统不允许编辑历史记录:退款、退汇、链重组、实际费用差异等必须关联原记录,并新增冲回或补充记录。
最近调整申请
双人复核| 申请单 | 调整类型 | 原记录 / 业务单 | 调整金额 | 原因 | 状态 |
|---|---|---|---|---|---|
| ADJ-260906-011 | 渠道成本转正 | LE-...98210 / PSP-SEP-06 | −$280.00 | 实际账单高于费率预估 | 待复核 |
| ADJ-260906-010 | 链上费用冲正 | LE-...97884 / WD-...0182 | +$2.13 | 实际 Gas 低于预估 | 已完成 |
| REV-260906-004 | 法币出金退汇冲正 | LE-...96612 / WD-...0391 | −$125.00 | 银行退汇,出金手续费需退回 | 已完成 |
| 申请单 | 调整类型 | 原记录 / 业务单 | 调整金额 | 申请人 | 当前复核节点 | 复核时限 |
|---|---|---|---|---|---|---|
| ADJ-260906-011 | 渠道成本转正 | LE-20260906-98210 / PSP-SEP-06 | −$280.00 | 财务运营 · Ken | 等待资金负责人复核 | 00:38:12 |
| ADJ-260906-013 | 手续费退回补充 | LE-20260906-98621 / WD-260906-0447 | −$125.00 | 资金运营 · Mia | 等待财务复核 | 01:24:08 |
复核规则
双人复核申请必须关联原始收益或成本记录、业务单,并附回单、账单或链上证据。
申请人与资金负责人、财务复核人不得为同一人。
全部复核通过后,系统自动新增记录,不修改原始记录。
| 调整单 | 完成时间 | 类型 | 原记录 | 新生成记录 | 调整金额 | 结果 |
|---|---|---|---|---|---|---|
| ADJ-260906-010 | 2026-09-06 15:41:22 | 链上费用冲正 | LE-20260906-97884 | LE-20260906-98416 | +$2.13 | 补充记录已生效 |
| REV-260906-004 | 2026-09-06 14:08:51 | 法币出金退汇冲正 | LE-20260906-96612 | LE-20260906-98302 | −$125.00 | 原收益单元已冲正 |
原业务已确认并生成收益或成本记录。
LE-20260906-96612
收到银行退汇回单、退款事件或链重组通知。
REVERSAL_REQUESTED
核验原记录、外部证据、金额与影响期间。
REVIEWED
新增金额相反的记录,并关联原记录编号。
reversal_of_ledger_entry_id
更新关联收益单元,重跑余额轧差和日结判断。
RECALCULATED
| 冲正单 | 原始记录 | 冲回记录 | 触发事实 | 金额影响 | 收益单元状态 |
|---|---|---|---|---|---|
| REV-260906-004 | LE-20260906-96612 | LE-20260906-98302 | 银行退汇回单 BNK-REV-44912 | −$125.00 | REVERSED |
| REV-260906-006 | LE-20260906-97103 | LE-20260906-98510 | ETH 链重组 0xaf39...a920 | −$20.12 | 待重新确认 |
对账总览
这里展示每天生成的具体对账任务。内部数据和外部账单收齐后系统自动匹配,运营只处理自动匹配后剩余的异常记录。
| 对账任务 | 公司主体 / 交易日 | 核对双方 | 账户 / 币种 | 数据状态 | 对账结果 | 当前状态 / 下一步 | 操作 |
|---|---|---|---|---|---|---|---|
|
订单与钱包内部核对
RC-20260906-INTERNAL · 系统默认检查 |
Global OTC Ltd. 2026-09-06 |
业务订单 ↔ 钱包流水 系统内部一致性检查 |
全部业务账户 全币种 |
数据已齐 订单 8,294 · 钱包 8,294 |
8,294 笔一致 异常 0 笔 |
对账完成 无需处理 |
|
|
PSP X 法币明细 · USD
RC-20260906-PSP-X-USD · 来源 AR-PSP-001 |
Global OTC Ltd. 2026-09-06 |
法币订单/内部流水 ↔ PSP X 账单 交易明细、退款和渠道费用 |
MERCHANT-GLOBAL-001 USD |
内外部数据已齐 内部 4,120 · 外部 4,120 |
4,108 笔自动一致 12 笔待复核 |
待人工复核 确认候选匹配 |
|
|
数币充值 / 提币 / 归集 · ETH
RC-20260906-CUSTODY-ETH · 来源 AR-CUS-001 |
Global OTC Ltd. 2026-09-06 |
内部钱包流水 ↔ 托管/链上流水 充值、提币、归集和网络费 |
HOT-WALLET-02 ETH · Ethereum |
内外部数据已齐 内部 3,115 · 外部 3,115 |
3,110 笔自动一致 5 笔待复核 |
待人工复核 确认替换交易和 Gas |
|
|
PSP X 法币明细 · EUR
RC-20260906-PSP-X-EUR · 来源 AR-PSP-001 |
Global OTC Ltd. 2026-09-06 |
法币订单/内部流水 ↔ PSP X 账单 交易明细、退款和渠道费用 |
MERCHANT-GLOBAL-001 EUR |
内外部数据已齐 内部 984 · 外部 984 |
813 笔已完成 171 笔系统处理中 |
自动对账中 等待系统完成 |
|
|
数币充值 / 提币 / 归集 · USDT
RC-20260906-CUSTODY-USDT-TRON · 来源 AR-CUS-001 |
Global OTC Ltd. 2026-09-06 |
内部钱包流水 ↔ 托管/TRON 流水 充值、提币、归集和网络费 |
HOT-WALLET-02 USDT · TRON |
外部流水未到 内部 2,406 · 外部 — |
尚未开始 不计为对账差异 |
等待账单 预计 17:00 自动重试 |
|
|
Bank A USD 账单
RC-20260906-BANK-A-USD · 来源 AR-BANK-001 |
Global OTC Ltd. 2026-09-06 |
法币订单/内部流水 ↔ Bank A 账单 入金、出金、退款和银行费用 |
USD-COLLECTION-01 USD |
内外部数据已齐 内部 2,642 · 外部 2,641 |
2,641 笔已归类 余额差 +250.00 USD |
存在差异 处理工单后自动重算 |
法币人工工单
当前法币资金没有银行或 PSP 渠道直连。所有法币入金、出金、退款和费用确认均先生成资金工单,由运营录入凭证并复核,再更新钱包流水及收益与成本记录;日终对银行账户余额和已完成工单做余额核对。
| 工单号 | 类型 | 客户 / 业务关联 | 原币金额 | 收付款账户 | 凭证 | 当前状态 | 下一动作 | 责任人 |
|---|---|---|---|---|---|---|---|---|
| FIAT-DEP-260906-071 | 法币入金确认 | C-009218 OTC-260906-4528 |
+18,000.00 USD | Bank A / USD-COLLECTION-01 |
回单 1
ref: BNK-7JQ91 |
待复核 | 复核回单、确认入账 | Mia → Ken |
| FIAT-WD-260906-042 | 法币出金执行 | C-007751 WD-260906-0447 |
−1,200,000.00 USD | Bank A / beneficiary verified |
付款凭证 1
ref: MAN-443209 |
已执行 | 等待日终余额轧差 | Alex |
| FIAT-REF-260906-006 | 退汇 / 退款 | C-008890 WD-260906-0391 |
+125.00 USD | Bank A / USD-COLLECTION-01 |
待补充
退汇通知缺失 |
已阻塞 | 上传退汇回单 | Mia |
| FIAT-FEE-260906-019 | 银行费用确认 | 渠道账户成本 | −250.00 USD | Bank A / USD-COLLECTION-01 | 账单截图 | 待入账 | 财务确认成本 | Ken |
法币入金确认工单
待复核法币日终人工轧差
没有渠道直连时,总额对账的外部依据来自人工上传的日终余额证明、银行账单/网银截图和已审批工单。系统先比较“工单发生额”,再比较“人工录入的外部期末余额”与内部渠道资金账户余额。
工单发生额轧差
按原币种| 币种 | 已执行入金工单 | 已执行出金工单 | 费用/调整工单 | 外部清单汇总 | 发生额差 |
|---|---|---|---|---|---|
| USD | +52,000.00 | −41,000.00 | −250.00 | +10,750.00 | 0.00 |
| EUR | 0.00 | −1,250.50 | −3.20 | −1,253.70 | 0.00 |
余额轧差
USD 未平人工法币模式的关账控制
替代渠道直连控制每个已执行工单必须有银行回单/付款凭证、参考号、原币金额、账户和录入人。
录入人与复核人不能为同一人;大额工单可增加资金负责人审批。
每个银行账户、每个原币种的期末余额差必须为 0,或有经批准的豁免。
法币工单 → 明细对账:自动流转案例
人工复核后自动入账创建法币入/出金工单,录入订单、金额、账户;尚未上传完整凭证。
MANUAL_PENDING
操作员上传回单、参考号、实际费用;第二人核验金额、账户、附件。
MANUAL_REVIEW
复核通过后系统保存外部付款事实,并自动更新钱包及收入与成本记录。
MANUAL_VERIFIED
系统校验订单、钱包流水、工单金额、凭证账户和参考号后自动更新。
RECONCILED
工单金额自动纳入该银行账户、该原币种的发生额及余额轧差。
WAITING_BALANCE
外部多币种账单导入
运营上传银行、支付渠道或托管方账单后,系统自动识别账户、币种和交易日,并把账单记录分配到已经生成的具体对账任务。
导入外部账单
手工上传入口支持 CSV / XLSX / MT940 / CAMT.053 / 托管方 CSV;单文件最大 50MB
导入通道说明
同一标准批次模型,支持不同接入方式适用补账、低频渠道、上线初期。必须经过预校验、映射预览、确认导入。
按文件名、账期、PGP 签名/Hash 获取日终文件,生成同样的导入批次。
按 cursor 拉交易与余额快照,保存原始 payload,并生成逻辑导入批次。
字段映射、拆分与标准化预览
本次文件 PSPX_SETTLEMENT_20260906.csv 共 1,286 行。文件中的一行可能是单笔交易,也可能是批量结算、费用汇总或余额快照;系统按模板解析为最小可对账单元。
源文件字段 → 标准外部流水
PSP X v3.4| 文件字段 | 标准字段 | 示例值 | 处理规则 |
|---|---|---|---|
| settled_at | settled_at | 2026-09-06 16:30:18 | 转换 UTC,保留原时区 |
| merchant_txn_id | external_transaction_id | PSPX-993821 | 渠道去重键 |
| currency | currency | EUR | 保留原币,不换最小法币单位 |
| gross_amount + type | amount + direction | 1,250.50 / PAYOUT | 统一为 OUT / 1,250.50 |
| fee_amount | fee_amount | 3.20 | 拆为独立费用单元 |
| batch_reference | parent_reference | BATCH-20260906-08 | 用于 N:1 汇总匹配 |
| opening/closing_balance | balance_snapshot | EUR 50,000 / 48,746.30 | 进入余额轧差,不进明细匹配池 |
拆分规则:一行如何成为最小对账单元
不可跳过标准化后的最小单元预览
1,286 源行 → 1,541 个对账单元| 源行 | 标准单元 ID | 单元类型 | 渠道账户 | 原币种 | 方向 / 金额 | 外部引用 | 父批次 | 进入哪里 |
|---|---|---|---|---|---|---|---|---|
| 42 | EXT-TXN-20260906-0042-01 | 交易主金额 | MERCHANT-GLOBAL-001 | EUR | OUT 1,250.50 | PSPX-993821 | BATCH-08 | 法币出金明细对账池 |
| 42 | EXT-FEE-20260906-0042-02 | 渠道手续费 | MERCHANT-GLOBAL-001 | EUR | OUT 3.20 | PSPX-993821 | BATCH-08 | 通道成本对账池 |
| 117 | EXT-TXN-20260906-0117-01 | 交易主金额 | MERCHANT-GLOBAL-001 | USD | IN 18,000.00 | BNK-7JQ91 | — | 法币入金明细对账池 |
| 880 | EXT-BAL-20260906-0880 | 余额快照 | MERCHANT-GLOBAL-001 | EUR | 48,746.30 | statement-close | — | EUR 余额轧差池 |
账单导入完成
渠道 PSP X · 账户 MERCHANT-GLOBAL-001 · 账期 2026-09-06 · 文件 PSPX_SETTLEMENT_20260906.csv
本次导入结果
IMP-20260906-00018| 账单账户 | 账期 | 识别币种 | 成功导入 | 关联结果 | 处理位置 |
|---|---|---|---|---|---|
| PSP X MERCHANT-GLOBAL-001 | 2026-09-06 | USD、EUR、USDT、BTC | 1,284 条 | 已关联 4 个任务 | 前往“对账总览”查看自动对账和人工待办 |
第一关:明细逐笔对账
先明细,后轧差每个标准化单元进入对应对账池:交易主金额对钱包流水/出金指令,费用单元对渠道成本预估,余额快照不参与逐笔匹配。
第二关:余额与总额轧差
必须执行即使逐笔都匹配,也必须做渠道账户级的余额轧差,防止渠道文件漏行、期初期末截断、重复导入或内部漏记。
多币种余额轧差结果
balance_run: bal_20260906_0018| 资金实体 | 渠道 / 账户 | 原币种 | 外部期初余额 | 外部本期净变动 | 外部期末余额 | 内部期末余额 | 原币差额 | 结果 |
|---|---|---|---|---|---|---|---|---|
| Global OTC Ltd. | PSP X / MERCHANT-001 | USD | 250,000.00 | +18,000.00 | 268,000.00 | 268,000.00 | 0.00 | 轧平 |
| Global OTC Ltd. | PSP X / MERCHANT-001 | EUR | 50,000.00 | −1,253.70 | 48,746.30 | 48,746.30 | 0.00 | 轧平 |
| Global OTC Ltd. | PSP X / MERCHANT-001 | USDT | 100,000.000000 | −12.500000 | 99,987.500000 | 99,987.500000 | 0.000000 | 未轧平 |
| Global OTC Ltd. | PSP X / MERCHANT-001 | BTC | 5.00000000 | +0.25000000 | 5.25000000 | 5.25000000 | 0.00000000 | 轧平 |
导入批次审计信息
可重跑 / 可回溯账单导入状态与对账任务的关系
导入页只负责把外部明细送入已有任务对账总览中已有当日任务,此时任务仍为“等待账单”。
等待账单检查文件归属、账户、重复行、币种和交易日。
账单校验中多币种或多网络明细被拆分,逐条归入对应任务。
账单分配中返回关联任务数和失败记录数;数据齐全的任务自动开始逐笔对账。
分配完成余额轧差
明细对账完成后,系统按公司、账户、币种和账期汇总内部与外部金额,检查本期资金变动和期末余额是否一致。
| 渠道 / 账户 | 原币种 | 外部期初 | 外部入账 | 外部出账 | 外部费用/调整 | 外部期末 | 内部期末 | 余额差 | 明细匹配 | 轧差结果 | 差异工单 |
|---|---|---|---|---|---|---|---|---|---|---|---|
|
PSP X
MERCHANT-GLOBAL-001 |
USD | 250,000.00 | +18,000.00 | 0.00 | 0.00 | 268,000.00 | 268,000.00 | 0.00 | 100.0% | 发生额+余额均平 | — |
|
PSP X
MERCHANT-GLOBAL-001 |
EUR | 50,000.00 | 0.00 | −1,250.50 | −3.20 | 48,746.30 | 48,746.30 | 0.00 | 100.0% | 发生额+余额均平 | — |
|
PSP X
MERCHANT-GLOBAL-001 |
USDT | 100,000.000000 | 0.000000 | −12.500000 | 0.000000 | 99,987.500000 | 99,987.499200 | −0.000800 | 100.0% | 发生额+余额均平 | — |
|
Custody A
HOT-WALLET-02 |
BTC | 5.00000000 | +0.25000000 | 0.00000000 | 0.00000000 | 5.25000000 | 5.25000000 | 0.00000000 | 100.0% | 发生额+余额均平 | — |
|
Bank A
USD-COLLECTION-01 |
USD | 96,100.00 | +52,000.00 | −41,000.00 | 0.00 | 107,100.00 | 107,350.00 | +250.00 | 99.4% | 发生额+余额未平 |
余额轧差计算口径
系统自动计算第一步:核对本期资金变动
按同一币种计算第二步:核对期末余额
账户余额是否一致EUR 示例:从文件、明细到余额轧平
完整闭环EUR 期初 50,000;出金 1,250.50;费用 3.20;期末 48,746.30。
PSP statement
主交易 1 条 + 渠道费用 1 条 + 余额快照 2 条。
EXT-TXN / FEE / BAL
出金指令 EUR 1,250.50;内部通道成本 EUR 3.20。
DETAIL_MATCHED
内部本期出账 1,250.50;费用 3.20,与外部一致。
FLOW_MATCHED
50,000 − 1,250.50 − 3.20 = 48,746.30,与内部期末一致。
BALANCED
余额轧差状态如何流转
接收对账总览中“明细已归类”的任务相关对账任务仍在自动对账或人工复核。
汇总本期入账、出账、费用、调整和期末余额。
本期资金变动和期末余额都在允许范围内。
系统自动创建或关联差异工单,不在本页处理。
系统重新计算;通过后更新为“余额已轧平”。
差异下钻:USDT 余额未平
−0.000800 USDT系统排查顺序
差异下钻:Bank A USD 发生额未平
+250.00 USD定位结果
USD +250.00
事件:MANUAL_CREDIT
时间:2026-09-06 14:15:02
渠道 reference:—
操作人:ops@platform
总额差异的处理状态机
不直接改余额发生额或余额差超过原币种容差。
差异创建
按文件、导入、明细、精度、余额快照顺序下钻。
证据收集
补导文件、完成匹配、新增调整记录或完成差异豁免。
处理结论
资金/财务复核处理证据及对账影响。
双人复核
重新轧差通过,或带批准豁免进入日结。
允许关账
对账配置中心
先完成首个公司主体的账户和账单接入。规则启用后,系统按设定时间自动生成对账任务,账单到达后自动匹配,只将异常交给运营处理。
Global OTC Ltd. 对账运行流程
1 个任务等待账单Bank A、PSP X 和 Custody A 已关联用于核对的外部账单。
按账户、单一币种/网络和交易日生成 6 个任务。
5 个任务已收齐数据;USDT-TRON 任务等待托管流水。
成功匹配自动完成,只将无法确认的记录交给人工复核。
明细全部有去向后自动进入余额核对,未解决问题统一进入差异工单。
已接入账户与账单来源
3 个账户已接入| 所属公司 | 需要对账的账户 | 账户类型 | 币种 / 网络 | 账单获取方式 | 预计到达 / 更新频率 | 状态 |
|---|---|---|---|---|---|---|
| Global OTC Ltd. |
PSP X
MERCHANT-GLOBAL-001 |
支付渠道商户账户 | USD / EUR / USDT | 文件导入 + SFTP | 每日 16:00 前到账单 | 已启用 |
| Global OTC Ltd. |
Bank A
USD-COLLECTION-01 |
银行收款账户 | USD | MT940 / CSV 导入 | 日终余额快照必需 | 等待文件 |
| Global OTC Ltd. |
Custody A
HOT-WALLET-02 |
托管 / 热钱包 | ETH / USDT | API + 链上扫描 | 每 5 分钟增量同步 | 已启用 |
已开通的自动对账
3 条设置正在生成每日对账任务| 设置编号 / 名称 | 需要对账的账户 | 平台内部数据 | 外部账单 | 怎样拆成任务 | 生成时间 | 状态 | 操作 |
|---|---|---|---|---|---|---|---|
|
Bank A USD 收款对账 AR-BANK-001 |
Bank A USD-COLLECTION-01 / USD |
法币入金订单、退款记录、内部 Bank A 账户流水 | Bank A 交易明细和日终余额账单 | 公司 + 账户 + USD + 交易日 | 每日 00:05 自动生成 | 已启用 | |
|
PSP X 法币交易对账 AR-PSP-001 |
PSP X MERCHANT-GLOBAL-001 / USD、EUR |
法币入金、提现、退款订单,渠道费用和内部账户流水 | PSP X 结算交易与费用账单 | 公司 + 商户号 + 币种 + 交易日 | 每日 00:05 自动生成 | 已启用 | |
|
Custody A 数币钱包对账 AR-CUS-001 |
Custody A HOT-WALLET-02 / USDT、ETH |
数币充值、提币、归集记录,客户钱包和内部热钱包流水 | Custody A 钱包流水 + TRON / Ethereum 链上交易 | 公司 + 网络 + 钱包 + 币种 + 交易日 | 每 5 分钟自动生成 | 已启用 |
确定账户、内外部数据和生成时间。
任务带上来源设置编号和交易日。
内部数据自动提取,外部账单按接入方式到达。
按账户标识、币种、网络和交易日分配。
运营在对账总览查看任务状态和差异。
为账户开通自动对账
自动对账如何运行
首期自动运行已开通自动对账的账户会在每日 00:05 按所属公司、账户、币种和交易日自动生成任务。即使外部账单还未到达,任务也会保持“等待账单”,让运营及时发现缺失数据。
银行、支付渠道或托管方数据到达后,系统先转成统一格式,再按账户、币种和交易日分配到已生成的对账任务。一份多币种账单会被自动拆到多个任务,无需运营手工分文件。
系统优先使用银行参考号、支付渠道交易号或链上交易哈希匹配;编号不完整时,再比对币种、金额、方向和时间。匹配成功的记录自动完成,无需运营逐笔确认。
未收到账单、找不到对应记录或账户余额不一致时,系统自动生成差异工单,运营前往“差异工单”处理。首期保存后直接启用,不走审批;系统仍保留修改人、修改时间和变更内容。
开通自动对账时,三项信息的关系
决定账务归属和关账范围。例如 Global OTC Ltd. 名下的账户,会进入该公司的日结和关账结果。
可以是银行账户、支付渠道商户账户或数币钱包。例如 Bank A / USD-COLLECTION-01 / USD。
指银行账单、渠道结算明细、托管方钱包流水或链上交易。系统用它与平台订单和资金流水进行比对。
内外部数据从哪里来,怎样进入同一任务
| 处理步骤 | 数据来源 | 系统怎样关联 | 无法关联时 |
|---|---|---|---|
| 1. 提取平台内部数据 | 入金、提现、退款、充值、提币和归集订单;客户钱包及内部资金账户流水 | 任务生成后,按所属公司、账户、币种和交易时间自动提取 | 缺失的内部记录标记为“待系统数据” |
| 2. 接收外部账单 | 银行文件、PSP 结算账单、托管方 API 和链上交易 | 用银行账号、渠道商户号、钱包编号或链上地址,对应到“已接入账户” | 无法识别账户的记录进入导入异常,不自动分配 |
| 3. 标准化并拆分 | 已校验的内部记录和外部账单记录 | 统一金额、方向和时间格式,再按公司、账户、币种/网络、交易日拆分 | 币种、网络或交易日无法确定时,留在导入异常中待处理 |
| 4. 归入当日任务 | 拆分完成的内外部记录 | 每条记录保存来源设置编号、数据批次号和当日任务编号,然后开始匹配 | 重复记录自动拦截;找不到当日任务时标记为“待分配” |
对账规则与逻辑
当前业务将 OTC 兑换与提现串成同一条链路:客户提交数币后,可锁定兑换价格并由平台下发法币;也支持直接提取数币到链上地址。对账依次核对内部提现申请与钱包流水、法币付款或链上事实,最后执行余额轧差。
正常的自动对账流程
需求流程说明按公司、账户、单一币种/网络和交易日生成,无需等账单到达。
等待账单可由运营上传,也可通过 SFTP、API 或链上同步自动获取。
账单校验中按账户、币种、网络、交易日拆分明细,并归入已有任务。
账单分配中内部订单/资金流水与外部账单逐笔比对,成功项自动完成。
自动对账中运营只确认候选关系和补充证据,不修改原始流水。
待人工复核已匹配的明细关闭;确认无法对平的明细关联差异工单。
明细已归类明细归类完成后,系统核对本期资金变动和期末余额。
余额核对中全部一致则该任务对账完成;无法解决的异常进入差异工单并阻塞关账。
对账完成 存在差异同一资金主体、交易日的必做任务全部完成且无阻塞差异后,进入关账检查;检查通过后完成关账并锁定当日结果。
待关账 已关账第一层:业务闭环
内部对内部核对 OTC 订单 / 出入金申请与内部钱包流水,确认平台是否按订单状态正确冻结、入账、扣减和收取费用。
第二层:法币外部
内部对银行/PSP核对内部法币钱包流水与银行流水、虚拟户回单、支付渠道回调/账单及 FX 供应商结算文件。
第三层:数币外部
内部对链上/托管核对内部数币钱包流水与区块链交易、链上转账日志、托管方账单和地址/钱包余额快照。
业务链路:数币兑换法币提现
示例:客户提交 USDT,平台下发 USD客户提交 100,000 USDT 提现;系统冻结数币并锁定应付 100,500 USD。
已锁定提现报价
钱包账本核验 USDT 冻结、提现申请及锁价金额一致。
提现申请与钱包流水已关联
银行或 PSP 实际支付 USD;回单、付款参考号和实际费用进入外部事实。
法币已实际支付
核对客户、账户、金额、币种、付款参考号及实际费用。
明细已对平
Bank / USD 与内部账户余额轧平后,允许该链路进入日结。
可进入关账
内部对账:提现申请 / OTC 结果 ↔ 钱包流水
每 5 分钟 + 日结强制运行客户提交数币金额、锁定汇率、应付法币金额、提现方式、状态与冻结要求。
可用、冻结、待确认、已扣、已入账等资产变动。
匹配规则优先级
状态映射:以数币提币为例
状态机规则内部对账结果示例
run_internal_20260906_16:30| 业务单号 | 订单事实 | 钱包事实 | 匹配结果 | 异常处理 |
|---|---|---|---|---|
| OTC-260906-4528 | 成交 100,000 USDT;应计价差 $500,手续费 $100 | USDT 可用→待结算;USD 待结算负债已创建 | 已匹配 | 等待外部结算层 |
| WD-260906-0182 | 提币 12.5 ETH;已确认 | 冻结→已扣;网络费收入和实际 Gas 已入账 | 已匹配 | 等待链上余额层汇总核验 |
| WD-260906-0211 | 风控拒绝 | 冻结余额仍为 5,000 USDT | 不匹配 | 创建“冻结未释放”工单 |
兑换法币提现对账:钱包流水 ↔ 银行 / PSP
回调实时 + 账单日终客户提交数币金额、锁定汇率、应付法币、收款账户、通道费用预估。
payment reference、实际支付时间、收款账户、币种、实际费用。
入金匹配规则(从强到弱)
法币场景的匹配键与容差
按场景配置法币对账示例:未知来款如何处理
候选匹配 98%内部入金意图 / 钱包流水
USD +18,000.00
虚拟户:9081-77
客户:C-009218
KYC:M Trading Limited
时间:10:12:04
外部银行回单
USD +18,000.00
到账户:9081-77
付款人:M. Trading
时间:10:11:56
文件:MT940-20260906-03
链上数币提币对账:钱包流水 ↔ 区块链 / 托管方
持续监听 + 区块高度核验提现方式=链上、收款地址、待确认、冻结、已扣、预估网络费、实际成本。
network、tx hash、log index、地址、金额、nonce、gas、区块高度。
链上唯一键
数币场景:确认数与匹配逻辑
链上规则数币对账示例:提币替换交易
P0 风险WD-260906-0182:提币 12.5 ETH,冻结本金与预估费。
提现单号已生成
nonce=841,记录 tx hash: 0x12ab...9c01。
链上交易已广播
原 hash 未出块,不能确认费用或扣减。
原交易已失效
相同 nonce:0x8e71...b4d9;核验地址、金额。
已发现替换交易
新 hash 确认后,按实际 gas 记成本并关闭工单。
明细已对平
余额轧差:内部余额 ↔ 外部余额快照
关账前强制执行期初余额、本期入账、出账、费用、调整和内部期末余额。
外部期初、交易明细、期末余额及快照时间/区块高度。
计算与结果规则
按原币种独立余额轧差示例:Bank A / USD
余额差 +250.00 USD取得 Bank A USD 交易明细、期初和期末余额快照。
外部账单已到
逐笔匹配入账、出账和费用;未匹配记录进入差异单。
明细已对平
外部期末 107,100.00 − 内部期末 107,350.00 = +250.00 USD。
余额存在差异
排查手工流水、文件漏行、重复导入或补充凭证。
差异处理中
余额在容差内才允许 Bank A / USD 进入日结。
余额已轧平
匹配引擎的统一执行顺序
- 精确匹配:唯一 reference、payment_ref、tx hash + log index。
- 规则匹配:币种、方向、金额、时间窗、虚拟户/地址、付款人或收款人。
- 聚合匹配:支持一笔批量银行付款对应多笔出金,以及归集的多对一关系。
- 人工复核:系统展示候选、评分和命中/差异字段;人工只能确认或拒绝。
异常处理与对账状态机
- 待处理 系统发现未匹配或不一致 → 处理中 分派、补充凭证或复核。
- 已解决 已匹配、已冲正或已调整 → 已关闭 复核通过后关闭。
- 每次重跑创建新的 match_run_id;不可覆盖历史匹配、原始回单或链上事件。
匹配复核
这里只处理自动匹配后仍无法确认的记录。确认后记录返回原对账任务;确认不匹配时,系统自动创建或关联差异工单。
内部钱包流水 / 1 条
方向:入金 币种:USD
金额:+18,000.00
虚拟户:9081-77
时间:2026-09-06 10:12:04
KYC 名称:M Trading Limited
钱包状态:已入账
关联订单:—
资金实体:Global OTC Ltd.
银行回单 / 1 条
方向:入账 币种:USD
金额:+18,000.00
附言:RZ-9941
时间:2026-09-06 10:11:56
到账户:9081-77
渠道:Bank A
账单文件:MT940-20260906-03
行号:482
命中:币种、金额、虚拟户一致,时间差 8 秒;差异:付款人名称与 KYC 主体不完全相同,但已命中备案别名库。确认后建立不可变匹配关系,并写入处理人和运行版本。
页面逻辑与复核规则说明
操作指引这里只展示自动对账后无法完全确认的候选关系。处理人员对比内部流水与外部记录,决定它们是否属于同一笔资金事实;已自动精确匹配的记录不进入这里。
缺少唯一编号、付款人名称不完全一致、同金额候选过多、批量付款或归集关系、金额超容差、链上交易替换等情况,系统不能自行确认时会进入此队列。
确认匹配会固化内部与外部记录的对应关系;拆分/聚合用于一笔对多笔或多笔对一笔的结算;标记不匹配表示当前证据不足或确实不对应,后续转入差异处理。
不能直接修改银行账单、链上记录、钱包流水的原始金额或时间,也不能通过强行匹配绕过金额、币种或账户等关键差异。所有操作会保留处理人、时间、匹配依据和运行版本。
差异工单
统一处理自动匹配失败、人工确认不匹配、余额未轧平和链上异常。运营在这里调查、补充证据或发起调整,不再进入其他差异处理页面。
差异工单列表
今日 9 张未关闭工单| 工单 / 生成时间 | 差异场景 | 来源任务 / 业务对象 | 账户 / 币种 | 差异事实 | 影响范围 | 当前状态 | 处理方式 / 下一步 | 操作 |
|---|---|---|---|---|---|---|---|---|
| DIFF-20260906-031 16:19:33 |
链上最终性异常 交易替换 |
RC-20260906-CUSTODY-ETH WD-260906-0182 |
HOT-WALLET-02 12.5000 ETH · Ethereum |
原 hash 已失效,同 nonce 发现新 hash | 高风险 阻塞 ETH 钱包关账 |
处理中 | 核验 nonce、地址、金额和最终 hash 完成:最终链上交易确认,系统更新 hash 并重算 Gas |
|
| DIFF-20260906-032 15:42:08 |
候选匹配被拒绝 付款人名称不一致 |
RC-20260906-BANK-A-USD DEP-260906-0852 |
USD-COLLECTION-01 +18,000.00 USD |
银行付款人 M Trading,客户 KYC 为 M Trading Limited | 一般 该笔入金暂挂 |
待补证据 | 补充付款人证明或已备案别名 完成:付款人关系通过复核,系统重新匹配并解除暂挂 |
|
| DIFF-20260906-033 15:31:20 |
余额差异 内部期末高于银行 |
RC-20260906-BANK-A-USD Bank A 余额核对 |
USD-COLLECTION-01 +250.00 USD |
内部期末 107,350.00,银行期末 107,100.00 | 高风险 阻塞 Bank A / USD 关账 |
处理中 | 定位 250 USD 内部手工入账,补凭证或冲正 完成:重算后余额差为 0,解除 Bank A / USD 关账阻塞 |
|
| DIFF-20260906-034 14:55:42 |
外部记录缺失 内部出金无渠道记录 |
RC-20260906-PSP-X-EUR WD-260906-0447 |
MERCHANT-GLOBAL-001 -1,250.50 EUR |
平台显示已出金,PSP X 交易账单未找到付款记录 | 一般 暂停确认出金成本 |
待补证据 | 重新拉取账单,核对付款回单和文件时间范围 完成:找到外部付款事实并匹配,或确认未付并恢复内部状态 |
|
| DIFF-20260906-035 13:18:06 |
内部记录缺失 未知外部入账 |
RC-20260906-BANK-A-USD 银行参考号 BNK-81M3Q |
USD-COLLECTION-01 +6,200.00 USD |
Bank A 已入账,平台无对应订单、客户或钱包流水 | 高风险 资金暂挂,阻塞 Bank A / USD |
待处理 | 查询付款人和虚拟户,完成客户认领或未知来款处置 完成:生成内部入账关联,或退回原付款人,账户余额重算 |
|
| DIFF-20260906-036 12:46:51 |
金额不符 退款金额与银行扣款不同 |
RC-20260906-BANK-A-USD REF-260906-0098 |
USD-COLLECTION-01 10.00 USD 差额 |
内部退款 800.00,银行实际扣款 790.00 | 一般 影响退款金额和费用归类 |
处理中 | 确认 10 USD 是银行费用还是少退,分拆费用或补退 完成:退款本金和费用分类正确,内外部金额重新匹配 |
|
| DIFF-20260906-037 11:22:15 |
重复记录 外部交易号重复 |
RC-20260906-PSP-X-USD PSP-TXN-774921 |
MERCHANT-GLOBAL-001 -320.00 USD |
两个账单批次包含相同外部交易号和金额 | 一般 重复行已拦截,未进入余额 |
待复核 | 核对原文件行号和批次;重复文件排除,真实两笔保留 完成:复核确认唯一有效记录,重跑后不再重复计入 |
|
| DIFF-20260906-038 10:05:29 |
外部账单不完整 费用附表缺失 |
RC-20260906-PSP-X-USD PSP X 日终账单 |
MERCHANT-GLOBAL-001 USD |
交易明细已到,渠道费用附表未到,暂无法确认当日成本 | 一般 阻塞 PSP X / USD 关账 |
待补账单 | 重试 SFTP 并向渠道索取费用附表 完成:必需账单全部到齐,系统重跑费用对账和余额核对 |
|
| DIFF-20260906-039 09:37:44 |
退汇/外部状态撤销 已成功付款后退回 |
RC-20260906-PSP-X-EUR WD-260905-0412 |
MERCHANT-GLOBAL-001 +2,500.00 EUR |
PSP X 将昨日已成功出金更新为退回,资金已回到渠道账户 | 一般 影响客户余额、费用和昨日结果 |
待复核 | 确认退回原因和到账,恢复客户余额并生成跨日调整 完成:退回资金、客户余额、费用和前日调整全部关联 |
差异单场景与处理方式
按来源自动分派| 差异场景 | 什么时候生成工单 | 运营处理动作 | 什么时候算处理完成 | 系统自动后续 |
|---|---|---|---|---|
| 外部记录缺失 内部有,外部无 | 必需账单已收齐,仍找不到内部订单/流水对应的银行、PSP 或链上记录 | 补拉账单;核对时间范围、付款回单和渠道参考号;确认是否实际未执行 | 找到外部事实并完成匹配,或复核确认未执行并恢复/冲正内部状态 | 重跑该笔明细对账;更新订单和资产状态;重算余额 |
| 内部记录缺失 外部有,内部无 | 外部账单存在入账/出账,平台找不到订单、客户、钱包流水或费用记录 | 查询付款人、虚拟户、渠道参考号和人工操作记录;资金保持暂挂 | 已关联到正确业务对象,或已按未知来款/误付流程完成退回 | 生成可追溯的关联或退回记录;重跑明细和余额核对 |
| 金额/币种/账户/方向不符 | 内外部有候选关系,但关键字段不同或金额超过该场景容差 | 对照回单、费用、汇率和退款本金;判断分拆费用、补退、调整或冲正 | 关键字段一致,或经复核后的调整使内外部差额归零 | 重新匹配本金与费用;更新收益/成本和账户余额 |
| 候选匹配被拒绝 | 人工复核确认系统推荐的付款人、参考号或同金额记录不是同一笔 | 保留拒绝原因;查找其他候选;补充 KYC 别名、付款人或账户证据 | 新候选通过复核,或已确认无可匹配记录并转为明确的缺失场景 | 回写最终匹配关系;或合并到已有缺失工单,不重复新建 |
| 重复记录 | 同一外部交易号、hash 或内部流水号重复进入,且来源批次/行号不同 | 核对原文件、批次和原始行;判断是重复导入还是真实两笔交易 | 复核确认唯一有效记录,或两笔交易均有独立外部事实 | 排除重复行或保留真实明细;重算笔数和余额 |
| 外部账单缺失/不完整 | 超过设置的到达时间且自动重试失败,必需的交易、费用或余额数据仍未到齐 | 查看 SFTP/API 获取记录;联系渠道补文件;校验账期和文件完整性 | 全部必需数据到齐并通过校验,或完成有效的缺失数据例外处理 | 明细进入已有任务;自动启动逐笔对账;更新关账检查 |
| 余额差异 | 明细归类完成后,内外部本期发生额或期末余额差超过币种容差 | 查找漏行、重复、费用、精度、跨日数据和内部手工流水 | 受影响记录修复后重算,本期发生额和期末余额均在容差内 | 状态更新为“余额已轧平”;解除该账户/币种关账阻塞 |
| 链上最终性异常 | 链上交易替换、确认回退、区块重组,或最终 hash/回执与原记录不一致 | 核验 nonce、地址、金额、确认数和最终回执;必要时解冻或冲正预估 | 最终链上事实已确定,本金不重复扣减,实际网络费有完整依据 | 更新最终 hash 和链上状态;重算网络费收入、Gas 成本和钱包余额 |
| 退汇/外部状态撤销 | 外部将原已成功的入金、出金或退款更新为退回、撤销或拒绝 | 核对退回原因、资金是否到账和客户资产影响;确定恢复余额、重新付款或冲正 | 退回资金、客户余额、费用及原交易已完整关联,必要的跨日调整已复核 | 更新原订单状态;生成恢复/冲正记录;重跑当日及受影响历史范围 |
首期差异工单的技术落地规则
暂不做配置化管理| 内容 | 首期落地方式 | 技术实现要求 | 示例 |
|---|---|---|---|
| 差异场景 | 按本页场景清单固定开发 | 使用稳定的场景编码和字典;新增或修改场景走正常需求发布 | 外部记录缺失、余额差异、链上最终性异常 |
| 生成条件 | 按场景固定实现判断逻辑 | 读取已有对账设置中的到达时间、匹配规则和容差,不新建差异规则配置页 | 账单超过 17:00 未到且 3 次重试失败 |
| 差异事实 | 字段结构预先定义,字段值不配置 | 技术按场景定义必需字段;每张工单的金额、内外部值和来源记录由系统计算 | 内部期末 107,350.00,银行期末 107,100.00,差额 250.00 USD |
| 风险和影响范围 | 按场景固定风险和阻塞口径 | 系统根据工单的账户、币种和业务对象自动计算实际影响 | 未知来款阻塞资金入账;余额差异阻塞该账户/币种关账 |
| 处理方式 | 每个场景固定处理选项 | 技术按需求实现可选结果、必需证据和是否复核,弹窗只显示本场景可用操作 | 重复记录可选“排除重复导入”或“确认两笔均有效” |
| 关闭条件 | 按场景固定校验条件 | 不允许运营直接关闭;处理结果通过必要复核且重跑对账通过后才关闭 | 余额差回到容差内;链上最终交易已确认 |
| 系统后续动作 | 按场景固定执行顺序 | 在代码中保护重跑明细对账、重算余额、解除阻塞和新增调整记录,不提供任意改账能力 | 冲正复核通过 → 写入新记录 → 重跑对账 → 更新关账检查 |
交付技术的差异事实字段与文案模板
字段值由系统运行时生成| 场景编码 | 必填事实字段 | 差异事实文案模板 | 页面展示示例 |
|---|---|---|---|
| EXT_RECORD_MISSING | business_type, business_id, internal_status, external_source, statement_period, amount, currency | 内部{business_type} {business_id}显示{internal_status},但在{external_source} {statement_period}账单中未找到{amount} {currency}的对应记录。 | 平台出金 WD-260906-0447 显示已付款,但 PSP X 2026-09-06 账单中未找到 1,250.50 EUR 的付款记录。 |
| INTERNAL_RECORD_MISSING | external_source, external_ref, direction, amount, currency, account_id, occurred_at | {external_source}记录 {external_ref} 已{direction} {amount} {currency},平台未找到对应订单、客户或资金流水。 | Bank A 记录 BNK-81M3Q 已入账 6,200.00 USD,平台未找到对应订单、客户或资金流水。 |
| KEY_FIELD_MISMATCH | business_id, field_name, internal_value, external_value, difference_value, tolerance, currency | {business_id}的内部{field_name}为{internal_value},外部为{external_value},差额{difference_value} {currency},超过容差{tolerance}。 | REF-260906-0098 的内部退款金额为 800.00,银行实际扣款为 790.00,差额 10.00 USD,超过容差 0。 |
| MATCH_CANDIDATE_REJECTED | internal_record_id, candidate_ref, rejection_reason, reviewed_at | 内部记录 {internal_record_id} 的候选记录 {candidate_ref} 被拒绝:{rejection_reason};当前仍无有效匹配。 | DEP-260906-0852 的候选记录 BNK-7JQ91 被拒绝:付款人名称未证明为 KYC 别名;当前仍无有效匹配。 |
| DUPLICATE_RECORD | record_key, source_batch_a, source_row_a, source_batch_b, source_row_b, amount, currency | 记录键 {record_key} 同时出现在批次{source_batch_a}第{source_row_a}行和批次{source_batch_b}第{source_row_b}行,金额均为{amount} {currency}。 | PSP-TXN-774921 同时出现在批次 IMP-00017 第 118 行和 IMP-00018 第 204 行,金额均为 320.00 USD。 |
| STATEMENT_INCOMPLETE | external_source, statement_period, missing_dataset, expected_at, retry_count | {external_source} {statement_period}账单缺少{missing_dataset},已超过到达时间{expected_at}并自动重试{retry_count}次。 | PSP X 2026-09-06 账单缺少渠道费用附表,已超过到达时间 10:00 并自动重试 3 次。 |
| BALANCE_DIFFERENCE | account_id, currency, period, internal_closing, external_closing, difference, tolerance | {account_id} {currency} {period}内部期末余额为{internal_closing},外部期末余额为{external_closing},差额{difference},超过容差{tolerance}。 | USD-COLLECTION-01 USD 2026-09-06 内部期末余额为 107,350.00,银行期末余额为 107,100.00,差额 250.00,超过容差 0。 |
| CHAIN_FINALITY_EXCEPTION | network, original_hash, event_type, replacement_hash, nonce, amount, asset | {network}交易 {original_hash} 发生{event_type},同 nonce {nonce} 检测到{replacement_hash},涉及{amount} {asset}。 | Ethereum 交易 0x12ab...9c01 已失效,同 nonce 1842 检测到 0x8e71...b4d9,涉及 12.5000 ETH。 |
| EXTERNAL_STATUS_REVERSED | business_id, external_ref, previous_status, current_status, amount, currency, changed_at | {business_id}关联外部记录 {external_ref} 由{previous_status}更新为{current_status},资金{amount} {currency}需重新确认归属。 | WD-260905-0412 关联的 PSP X 记录由付款成功更新为退回,资金 2,500.00 EUR 需重新确认归属。 |
差异处理后的流转
系统自动推进记录差异事实、来源任务、影响范围和适用处理方式。
弹窗只显示当前场景允许的动作,并要求补齐对应证据。
需复核的场景校验处理依据、关联对象和账务影响。
系统仅重跑受影响的账户、币种和账期,不覆盖历史运行记录。
重跑通过后系统关闭工单并解除阻塞;仍有差异则退回继续处理。
日结与关账
按交易日汇总当日收益和成本,确认账务无异常后提交审批,并锁定当日结果。
自动检查结果
不可关账已统计截止时间前的订单、钱包流水、银行/支付渠道回单和链上交易。
3,846 条账务明细已按资金实体、币种、产品和渠道汇总。
本次共核对 3,898 笔订单与资金流水,自动对上 98.7%。
还有 1 笔链上交易异常工单未处理。
1 笔渠道成本调整待复核;当日必需外部账单已全部导入。
自动关账条件
| 本次检查内容 | 金额 / 数量 | 来源 | 用途 | 状态 |
|---|---|---|---|---|
| 已确认净收益 | $24,864.42 | 已确认收益 − 实际成本 | 经营总览 / 财务接口 | 待关账锁定 |
| 待确认及预估收益 | $3,918.66 | 待确认收益记录 | 经营预警,暂不计入当日净收益 | 跨日跟踪 |
| 对账差异 | 17 条 | 订单、资金流水与外部账单核对 | 差异工单 / 风险管理 | 待处理 |
| 当日关账记录 | 关账单 1 笔 | 当日订单、资金流水、收益成本明细和适用规则 | 历史查询 / 财务入账 / 审计留档 | 未生成 |
检查通过后如何完成关账
系统自动处理统计截止时间前的订单、钱包流水、工单、账户余额和链上交易。
只计入已确认金额;待确认和预估金额继续跟进,不计入当日净收益。
确认每笔交易的收益和成本都有对应资金流水,账面余额与实际账户余额一致。
系统将检查通过的账户、币种、收益和成本纳入本次关账范围。
财务复核通过后,当日账务不再直接修改;后续修正通过关账后调整记入新的交易日。
| 关账单号 | 交易日 | 资金实体 | 已确认净收益 | 未处理问题 | 申请人 | 财务复核人 | 状态 | 操作 |
|---|---|---|---|---|---|---|---|---|
| CLS-20260905-001 | 2026-09-05 | Global OTC Ltd. | $25,732.18 | 0 | 林晓 | 陈灵 | 待财务复核 |
待审批关账单
CLS-20260905-001- 交易日
- 2026-09-05(UTC+8)
- 关账范围
- Global OTC Ltd. 下 6 个资金账户
- 币种
- USD、EUR、USDT、BTC
- 账务明细数
- 3,672
- 收入 / 成本
- $31,480.66 / $5,748.48
- 已确认净收益
- $25,732.18
- 对账结果
- 6/6 账户余额一致,高风险和一般差异均为 0
- 调整复核
- 2/2 已完成
锁定范围
6 个账户| 关账单号 | 交易日 | 资金实体 | 账户 / 币种 | 账务明细数 | 净收益 | 关账后调整 | 关账时间 | 审批人 | 归档状态 | 操作 |
|---|---|---|---|---|---|---|---|---|---|---|
| CLS-20260904-001 | 2026-09-04 | Global OTC Ltd. | 6 / 4 | 3,791 | $26,108.74 | −$120.00 | 09-05 01:18:42 | 陈灵 | 已归档 | 查看 |
| CLS-20260903-001 | 2026-09-03 | Global OTC Ltd. | 6 / 4 | 3,644 | $23,996.31 | $0.00 | 09-04 01:09:17 | 周慧 | 已归档 | 查看 |
| CLS-20260902-001 | 2026-09-02 | Global OTC SG Pte. | 4 / 3 | 2,988 | $20,417.86 | +$84.20 | 09-03 01:13:05 | 陈灵 | 已归档 | 查看 |
| CLS-20260901-001 | 2026-09-01 | Global OTC Ltd. | 6 / 4 | 3,526 | $24,682.09 | $0.00 | 09-02 01:11:38 | 周慧 | 已归档 | 查看 |
| 调整单号 | 原关账单号 | 原交易日 | 业务单号 | 收益科目 | 调整金额 | 计入交易日 | 调整原因 | 申请 / 复核 | 状态 | 操作 |
|---|---|---|---|---|---|---|---|---|---|---|
| ADJ-20260906-019 | CLS-20260904-001 | 2026-09-04 | WD-F-849201 | 法币出金通道成本 | −$120.00 | 2026-09-06 | Bank A 补传实际手续费 | 林晓 / 陈灵 | 待复核 | |
| ADJ-20260906-014 | CLS-20260902-001 | 2026-09-02 | OTC-683019 | OTC 交易汇兑收益 | +$84.20 | 2026-09-06 | 结算行更正成交汇率 | 王洁 / 周慧 | 待日结 | 查看 |
| ADJ-20260905-008 | CLS-20260901-001 | 2026-09-01 | DEP-F-509281 | 法币入金手续费 | −$36.00 | 2026-09-05 | 客户退款,退回原收取手续费 | 王洁 / 陈灵 | 已计入 | 查看 |
关账前自动检查规则
适用版本 1.4 · 2026-08-15 生效| 检查项 | 数据来源 | 通过标准 | 未通过时怎么处理 | 处理角色 |
|---|---|---|---|---|
| 当日数据是否收齐 | 订单、钱包流水、银行/支付渠道回单、链上交易 | 必需数据都已更新到当日统计截止时间 | 重试同步任务;缺失外部文件时补充导入 | 资金运营 |
| 收益和成本是否完整 | 平台收益台账、收益与成本明细 | 已完成交易都有对应收益和成本明细;失败、取消和退款金额已正确退回 | 进入收益待确认或调整处理,修正后自动重新检查 | 账务运营 |
| 订单和资金是否对上 | 对账总览、匹配复核、差异工单 | 高风险问题为 0;一般未处理差异总额小于 $10,000 | 查看未匹配流水,完成匹配复核或处理差异工单 | 资金运营 / 风控 |
| 人工调整是否复核 | 调整与冲正、关账后调整 | 当日所有人工调整均已由另一人复核,待复核数量为 0 | 原申请人补充凭证,指定财务人员完成复核 | 账务运营 / 财务 |
| 必需外部账单是否齐全 | 外部文件导入 | 所有必需银行、支付渠道和托管方账单已导入,或已完成例外审批 | 补传账单;确认当日无法获取时发起例外审批 | 资金运营 / 财务 |
关账审批记录如何生成
检查通过后由资金运营提交确定当日账户、币种、账务明细和净收益范围。
系统生成关账单号,记录提交人、提交时间和当前检查结果。
复核金额、账户范围和未处理差异,记录审批人、结果、意见和时间。
审批通过后锁定当日结果,关账单进入“已关账记录”。
| 审批记录字段 | 数据来源 | 生成时机 |
|---|---|---|
| 关账单号 | 系统按资金实体和交易日自动生成 | 运营点击“提交关账”时 |
| 交易日、账户、币种、账务明细数、净收益 | 提交时最新且仍有效的自动检查结果 | 创建关账单时保存,审批期间不重新计算 |
| 提交人、提交时间 | 当前登录账号和提交操作日志 | 提交关账时 |
| 审批人、审批结果、意见、审批时间 | 财务复核操作日志 | 审批或驳回时 |
| 关账状态、关账时间 | 关账审批流程 | 财务审批通过并完成数据锁定时 |
提交关账申请
系统将按本次检查结果生成关账单并提交财务复核
关账范围
检查未通过- 交易日
- 2026-09-06(UTC+8)
- 资金实体
- Global OTC Ltd.
- 账户 / 币种
- 6 个账户 / USD、EUR、USDT、BTC
- 账务明细数
- 3,846
- 已确认收入
- $30,412.90
- 实际成本
- $5,548.48
- 已确认净收益
- $24,864.42
- 数据统计至
- 2026-09-06 23:59:59 UTC+8
业务节点与收益记录
收益/成本随业务节点实时产生;每类交易的“何时生成应计、何时转已实现、何时冲正”由规则明确控制。
固化成交价、费率、成本来源、汇率快照和有效期。
报价已锁定
形成客户与平台的结算义务。
订单已成交
达到网络确认阈值后,客户资产进入可结算状态。
客户资产已结算
价差 = 客户成交价−成本价;手续费 = 成交额×费率。
已生成应计价差和手续费
记录客户出售资产到账和 OTC 待结算资产状态。
客户资产已入账
平台履行支付义务,结算两侧均满足条件。
支付渠道已结算
应计价差/手续费→已实现;同时确认实际通道成本。
收益已确认
完成后进入当日已实现净收益;差异进入工单。
已完成对账
返回 payment_ref、到账状态和实际渠道费用。
银行已结算
OTC 收益记录示意
- 订单成交:借 清算应收 600;贷 应计价差 500;贷 应计手续费 100。
- 结算完成:借 应计价差 500;贷 已实现价差 500;借 应计手续费 100;贷 已实现手续费 100。
- 实际通道费到账:借 通道成本;贷 银行 / 渠道应付。
不能提前确认的原因
- 成交后可能客户资产未到账、平台法币支付失败、对冲成本未锁定,或发生退款。
- 因此成交节点记录应计;“双方资产结算 + 成本锁定”才是已实现确认点。
选择网络、地址、数量和网络费档位。
提币申请已提交
余额、地址风险、限额、Travel Rule、人工审批。
审核通过 / 暂停处理
展示最终 tx hash、确认数和实际网络费。
已通知客户
客户本金和网络费进入冻结;不产生已实现收入/成本。
资金已冻结
固定 nonce;同一 withdrawal_id 防止重复广播。
交易已签名
预估网络费收入/成本进入确认队列。
费用已预估
达到确认阈值后确定提币成功。
链上已确认
客户网络费→已实现收入;实际 Gas→已实现成本;预估转正。
收入与成本已确认
替换交易维护 hash 链;差异建立高优先级或普通差异工单。
已完成对账
可能处于待确认、失效、被替换或重组状态。
链上交易已广播
由网络/资产确认规则决定。
已达到链上确认标准
数币提币费用口径
- 客户网络费是平台收入(或抵减成本);实际 Gas 是平台链上服务成本。
- 广播成功不代表成本已实现;以链上确认后的实际 Gas 为准。
异常处理
- 广播失败:解冻 + 冲销预估;替换交易:沿用 withdrawal_id,更新 hash 链;重组:反向流水、冻结并人工复核。
确认收款信息、费用、到账时间。
出金申请已提交
余额、限额、收款人、风控、人工复核。
审核通过 / 审核拒绝
处理中 / 成功 / 失败或退汇。
已通知客户
核验原因、恢复余额、通知客户。
退汇处理中
申请节点不确认收益,只保护余额。
资金已冻结
通过才允许创建付款指令。
风控审核已完成
保存 payment_ref、幂等键和渠道规则。
付款指令已发送
通道受理≠结算成功,成功回单才进入下一步。
支付渠道已结算
客户出金费→收入;实际通道费→成本。
收入与成本已确认
退汇时恢复可用余额,冲回收入和成本。
已完成对账
返回 payment_ref / batch_ref。
付款指令已受理
返回成功、失败、退汇及实际费用。
银行清算结果已返回
确认点
- 客户提交和通道受理均只产生冻结或预估,不是已实现。
- 实际清算成功后,才能将客户出金手续费与实际通道成本确认为已实现。
退汇
- 退汇不是“改状态”:须分别记录客户余额恢复、手续费冲回和通道成本冲回或调整。
获取虚拟户/附言或链上地址、网络和确认规则。
入金意向已创建
可能存在别名、少付、多付、错误网络、memo 缺失。
客户已发起外部转账
法币匹配或数币达到确认阈值后可用。
已通知客户
银行 reference 或 network+tx_hash+log_index。
外部到账记录已获取
低置信度、未知来款、风险地址进入工单。
已匹配 / 暂挂
内部钱包与外部账单、地址余额、托管报表比对。
已完成对账
绑定客户、实体、币种、网络、费率规则。
入金信息已保存
external_ref 或链上唯一键去重。
外部记录已标准化
法币匹配前暂挂;数币达到确认标准前处于待确认状态。
待确认入账
若收取入金费,费用部分确认收入;本金不属于收益。
已计入可用余额
渠道账单或归集 Gas 到达后确认成本/调整预估。
实际成本已确认
入金收益逻辑
- 客户入金本金永远不是平台收益。
- 仅在平台收取入金服务费时,费用部分在确认入账节点产生收入;渠道/归集费用在实际发生时产生成本。
法币与数币差异
- 法币依赖虚拟户 / reference / 回单;数币依赖网络、hash、log index 和确认数。
- 未知来款或高风险地址只能暂挂/冻结,不得直接提升为客户可用余额。
端到端案例:OTC 卖出 USDT,平台人工支付 USD
法币人工工单模式系统记录待确认价差 +500、待确认手续费 +100;当前为“待客户资产确认”。
订单已成交
客户 100,000 USDT 达到 12/12 确认;客户侧结算完成。
链上已确认
运营上传 USD 100,500 付款回单;第二人核验账户、金额、参考号。
人工付款已复核
系统确认收入 600、银行成本 8;当前为“收益已确认,等待关账”。
收益与成本已确认
Bank A USD 余额差为 0;日结完成后,收益记录转为“已关账”。
当日已关账
端到端案例:数币提币,网络费收入与实际 Gas 成本
链上自动事实系统冻结 12.5000 ETH 本金和 0.0060 ETH 客户网络费;仅记录预估。
资金已冻结
签名并记录 nonce、tx hash;预估收入/成本进入确认队列。
链上交易已广播
达到 12/12 确认,读取 receipt 的实际 Gas 0.0042 ETH。
链上已确认
客户网络费 0.0060 ETH 转已实现收入;实际 Gas 转已实现成本;预估转正。
收入与成本已确认
链上/托管余额与内部热钱包余额一致,收益单元可进入日结。
余额已轧平
规则中心
统一维护资金归属主体和业务处理规则。资金实体下登记平台真实账户;业务规则决定收益确认、费用计算、对账和关账条件。
资金实体配置
| 平台账户 | 类型 / 资金用途 | 币种 / 网络 | 余额获取方式 | 余额看板 | 自动对账 |
|---|---|---|---|---|---|
| Bank A · USD 收款户 USD-COLLECTION-01 · ****9081 | 银行账户客户资金备付 | USD | 银行余额接口 | 已展示接口实时更新 | 已开通每日自动生成任务 |
| Bank B · EUR 结算户 EUR-SETTLEMENT-01 · ****4432 | 银行账户结算与调拨 | EUR | 银行账单导入 | 已展示按日更新 | 已开通每日自动生成任务 |
| PSP X · 全球商户账户 MERCHANT-GLOBAL-001 | 支付渠道账户客户资金备付 | USD | 渠道余额接口 | 已展示接口实时更新 | 已开通每日自动生成任务 |
| PSP X · 欧洲商户账户 MERCHANT-EU-002 | 支付渠道账户客户资金备付 | EUR | 渠道余额接口 | 已展示接口实时更新 | 已开通每日自动生成任务 |
| Custody A · 热钱包 02 HOT-WALLET-02 | 托管钱包客户资金备付 | USDT / TRON ETH / Ethereum | 托管方余额接口 | 已展示接口实时更新 | 已开通按币种和网络生成任务 |
| BTC 归集地址 01 bc1q...7m2k | 链上自管地址客户资金备付 | BTC / Bitcoin | 链上余额同步 | 同步延迟最后更新 15:58:22 | 未开通暂不生成对账任务 |
| 平台账户 | 账户类型 | 币种 / 网络 | 余额来源 | 资金用途 | 状态 |
|---|---|---|---|---|---|
| DBS · SGD 收款户 SGD-COLLECTION-01 · ****6621 | 银行账户 | SGD | 银行余额接口 | 客户资金备付 | 已启用 |
| DBS · USD 结算户 USD-SETTLEMENT-02 · ****1087 | 银行账户 | USD | 银行余额接口 | 结算与调拨 | 已启用 |
| Checkout.com · SG 商户账户 CKO-SG-MERCHANT-01 | 支付渠道账户 | SGD、USD | 渠道余额接口 | 客户资金备付 | 已启用 |
| Fireblocks · SG 热钱包 FB-HOT-SG-01 | 托管钱包 | USDT / Ethereum | 托管方余额接口 | 客户资金备付 | 已启用 |
| 平台账户 | 账户类型 | 币种 / 网络 | 余额来源 | 资金用途 | 状态 |
|---|---|---|---|---|---|
| Bank E · EUR 收款户 EUR-COLLECTION-01 · ****3094 | 银行账户 | EUR | 银行账单导入 | 客户资金备付 | 已启用 |
| Bank E · GBP 结算户 GBP-SETTLEMENT-01 · ****7712 | 银行账户 | GBP | 银行账单导入 | 结算与调拨 | 已启用 |
| Checkout.com · EU 商户账户 CKO-EU-MERCHANT-01 | 支付渠道账户 | EUR | 渠道余额接口 | 客户资金备付 | 已启用 |
| Fireblocks · EU 热钱包 FB-HOT-EU-01 | 托管钱包 | USDT / Ethereum | 托管方余额接口 | 客户资金备付 | 已启用 |
| Fireblocks · EU 冷钱包 FB-COLD-EU-01 | 托管钱包 | BTC / Bitcoin | 托管方余额接口 | 长期储备 | 已启用 |
业务规则
成交后先记录待确认收益;客户资产确认、平台结算完成且成本确定后再确认收益;退款或退汇发生时自动新增冲回记录。
申请冻结并记录预估;链上确认后按实际 Gas 确认成本,并将客户网络费收入转已实现。
USDT-TRON:19;USDT-ERC20:12;BTC:3;ETH:12。确认回退触发反向流水和 P0 工单。
优先 external_ref / 虚拟户;候选匹配使用币种、金额、30 分钟时间窗和付款人别名库。
高风险问题必须全部处理;一般未处理差异总额小于 $10,000;所有人工调整完成双人复核;缺失外部账单时必须完成例外审批。
编辑自动关账条件
当前版本 1.4配置条件、动作、适用实体/币种及生效时间。
用历史事件预演,比较匹配率、收益变化及异常数量。
资金、财务审批;高风险链上规则还需要风控会签。
发布新版本;记录发布人、审批人、影响范围与回滚方案。