主题
结算系统
涉及子系统:云端 API(核心)、管理后台(配置与对账)、Centre 中心服务 FCC(飞创分成比例来源,规划中)
核心业务:订单支付后的分账计算、跨渠道结算入账、退款冲销、门店/总部/飞创三方账户流水管理
目标与边界
结算系统用于处理订单在支付成功后的资金归属与应收应付关系,不替代银行账务系统。系统内账户以业务账方式维护,需可追溯每一笔订单、退款和结算调整的来源。
结算系统负责:
- 按门店配置计算门店账户、总部账户、飞创账户的分账金额
- 对微信支付(连连支付通道)进行实收结算入账
- 对抖音核销、美团核销进行虚拟欠款登记
- 对用户退款进行三方账户冲销和应退回门店账务处理
结算系统不负责:
- 外部支付平台实际打款动作(由连连支付/抖音/美团执行)
- 财务总账、税务申报与会计凭证生成
支付渠道与结算来源
| 渠道 | 订单支付方式 | 收单平台 | 结算进入方式 |
|---|---|---|---|
| 微信支付 | 小程序支付 | 连连支付(微信支付通道) | 实收资金记入连连体系账户 |
| 抖音核销 | 外部券码核销 | 抖音平台 | 不走连连实收,记虚拟欠款 |
| 美团核销 | 外部券码核销 | 美团平台 | 不走连连实收,记虚拟欠款 |
约束:
- 每笔订单只允许绑定一个支付平台(微信/抖音/美团三选一),不允许跨平台拆单结算。
账户体系
| 账户 | 账户类型 | 创建位置 | 用途 |
|---|---|---|---|
| 门店账户 | 业务账账户 | 系统内(按门店) | 门店应收、退款回流、结算结果展示 |
| 总部账户 | 连连支付账户 | 连连支付 | 总部品牌授权费入账与退款冲销 |
| 飞创账户 | 连连支付账户 | 连连支付 | 技术服务费入账与退款冲销 |
| 虚拟欠款账户 | 连连虚拟账户 | 连连支付 | 登记非连连渠道产生的应收应付关系 |
说明:
- 总部账户与飞创账户仅在连连支付创建。
- 虚拟欠款账户不代表真实资金余额,仅用于登记应收应付与后续清分依据。
分成配置与收费规则
门店级配置(在门店详情中维护)
每个门店需配置与总部的分成关系,并同时定义技术服务费计费口径:
| 配置项 | 说明 |
|---|---|
| 门店分成比例 | 门店可得比例 |
| 总部分成比例 | 总部可得比例 |
| 分成基准 | 定价 / 实际销售金额 / 扣除支付通道服务费后的实收金额 |
| 技术服务费计费基准 | 与分成基准保持一致 |
飞创分成比例(技术服务费费率)
- 飞创技术服务费费率(
fitronTechRate)在 FCC 控制台按客户 配置与维护,不是全局统一值;新客户默认可为1%,按商务合同逐户调整。 - 客户私有云从 Centre(
fcc-api)同步当前生效费率;客户管理后台门店配置中 只读展示,不允许门店侧手工修改。 - 费率变更仅影响生效后的新订单/新收入上报;历史按订单或上报快照中的
fitronTechRateSnapshot核算。
订单结算计算模型
设:
baseAmount= 结算基准金额(由门店配置决定)storeRate= 门店分成比例hqRate= 总部分成比例fitronRate= 飞创技术服务费比例(默认 1%)
则:
storeAmount = baseAmount * storeRatehqAmount = baseAmount * hqRate(品牌授权费)fitronAmount = baseAmount * fitronRate(技术服务费)
校验规则:
storeRate + hqRate = 100%fitronRate独立于门店/总部分成比例计算- 所有金额计算统一保留两位小数,并记录原始计算参数用于审计
渠道结算规则
微信支付(连连支付)
- 订单支付成功后,基于门店配置计算
storeAmount/hqAmount/fitronAmount。 - 生成三方结算流水,标记来源为
WECHAT_LIANLIAN。 - 总部账户、飞创账户在连连体系内记实收;门店账户记应收。
抖音核销 / 美团核销
- 核销成功后,仍按相同规则计算三方金额。
- 因资金不经连连,系统在虚拟欠款账户登记:
- 总部应收(品牌授权费)
- 飞创应收(技术服务费)
- 门店账户记对应结算结果,等待后续清结算动作对平。
平台账期与统计口径
每个平台维护独立账期规则(如 T+1、周结、月结),账期配置按平台维度管理。
日收入统计口径(经营视角)
- 统计依据:订单实际金额(支付/核销成功后的订单金额)
- 统计时间:按订单发生时间(
paidAt)归属自然日 - 与平台是否打款、是否到达账期无关
日打款统计口径(结算视角)
- 统计依据:平台在当日实际打款金额
- 统计时间:按平台打款入账时间归属自然日
- 需按平台账期聚合后再确认当日打款总额
因平台账期差异,某日“收入金额”与“打款金额”通常不相等,必须分开展示与对账。
退款冲销规则
当订单发生用户退款(微信/抖音/美团均适用):
- 结算系统按原订单结算参数生成退款冲销流水(负向分录)。
- 将原计入总部账户的品牌授权费记为应退回门店。
- 将原计入飞创账户的技术服务费记为应退回门店。
- 对非连连渠道订单,同步在虚拟欠款账户登记反向欠款,保持账务对平。
核心原则:
- 退款冲销必须与原订单结算参数一一对应(门店比例、基准、飞创费率按原单快照回放)。
- 退款入账不可使用“当前配置”重算,避免历史失真。
结算流水模型(建议)
text
SettlementLedger {
id String
orderId String
storeId String
settlementPlatform Enum # WECHAT_LIANLIAN / DOUYIN / MEITUAN
paymentMethod Enum # WECHAT_LIANLIAN / DOUYIN_VOUCHER / MEITUAN_VOUCHER
entryType Enum # ORDER_SETTLED / ORDER_REFUNDED / ADJUSTMENT
accountType Enum # STORE / HQ / FITRON / VIRTUAL_DEBT
bizType Enum # STORE_REVENUE / BRAND_LICENSE_FEE / TECH_SERVICE_FEE / REFUND_REVERSE
amount Decimal # 正数=入账,负数=冲销
settlementBase Enum # LIST_PRICE / ACTUAL_SALE / NET_RECEIPT
baseAmount Decimal
rateSnapshot Json # { storeRate, hqRate, fitronRate }
channelFee Decimal? # 支付通道服务费(如有)
payoutDate Date? # 平台实际打款日期(无打款时为空)
settlementPeriod String? # 平台账期标识(如 2026-W20 / 2026-05)
occurredAt DateTime
createdAt DateTime
}配置入口与权限
| 配置项 | 入口 | 可见角色 | 可编辑角色 |
|---|---|---|---|
| 门店-总部分成关系 | 门店详情 | owner / finance / manager(只读) | owner / finance |
| 分成基准 | 门店详情 | owner / finance / manager(只读) | owner / finance |
| 飞创费率(FCC) | 系统设置 | owner / finance | 不可编辑(只读) |
| 虚拟欠款对账 | 财务管理 | owner / finance | owner / finance |
对账与审计要求
- 每日生成按渠道、门店、账户维度的结算汇总。
- 结算流水需支持通过
orderId全链路回溯(下单、支付、结算、退款)。 - 抖音/美团渠道需输出“虚拟欠款余额表”,支持导出对账。
- 关键操作(结算重算、人工调账、退款补录)必须记录操作日志与审批痕迹。
待确认事项
- [ ] 各平台账期配置的变更是否允许追溯历史未结算订单
- [ ] 虚拟欠款账户是否需要按渠道分别建子账户
- [ ] 退款时是否允许“部分退款按比例冲销”