《独立开发者的商业指南·合同、应收与风险》附录 C 合同与风险评审清单

本附录把卷二 13 章的合同与风险判断落成一张 46 项、满分 92 分的评审清单:合同结构、关键条款、应收与坏账、争议与保险、IP 与渠道、依赖与连续性六组,每项按 0/1/2 三档打分,并给出三个案例的评分示例、评审记录模板、十类常见误判与一页速记。

以下情境为教学假设,人物与数字不代表经核实的真实案例。

这份清单把卷二 13 章的合同与风险判断收成 46 个可打分的问题。它不是法律审查表,也不替代律师意见;它只回答一件事:一份合同、一笔应收、一个依赖,能不能被算成金额,并在出事时被证据支持。

清单的用法有两个:每季度自查一次,看风险结构在哪些维度变差;准备签约、续约、授权或出售时,用它预演对方或买方的追问。每一项都必须指向一份文件或一张表;拿不出证据的项,按 0 分计。

怎么打分

每项三档:

  • 2 分:有书面证据,口径清楚,最近两个期间一致,金额可复算。
  • 1 分:有证据但不完整,或口径变过,或只覆盖部分合同与客户。
  • 0 分:没有证据,或金额算不出,或只能靠负责人口头解释。

六组满分分别是 20、16、14、14、14、14,合计 92 分。第一组有 10 项,其余组 8 项或 7 项;每项最高 2 分。换算成百分比后分三档:

得分率评级含义
≥ 70%健康条款与证据足以进入报价、续约或交易讨论
55%–69%需关注先补证据和条款缺口,再谈价格或扩张
< 55%高风险一次事故或一个客户流失就可能击穿现金

评分只用于纵向比较。第 13.1 节的合同矩阵和第 13.2 节的敞口表可以作为第六组的交叉校验:如果清单说“依赖可控”,但矩阵里的暴露金额占 SDE 超过一半,以矩阵为准。

一、合同结构(10 项,20 分)

合同结构回答的是“这份合同能不能执行、能不能算钱”。八个部分齐全只是起点,真正的分数在每一部分有没有数字。

#检查项0 分1 分2 分章节
1合同主体、签署人、发票抬头、收款账户一致四者不一致,或个人代签主体一致,但授权文件缺失四者一致且有授权记录第 1.1 节
2八个部分齐全,每部分至少一个数字缺三个以上部分八部分齐全,但三处以上只有定性描述八部分齐全,每部分有金额、天数或比例第 1.1 节
3服务范围可枚举,且有排除项只有一句概括,增项靠口头有范围清单,未写不包含项范围清单、排除项、增项计价方式齐全第 1.2 节
4验收条件可判定以客户满意为标准有条件,但缺对象、阈值、证据、时限之一四要素齐全,争议可落到具体条件第 1.2 节
5价格、币种、含税口径明确只写总额,未写币种或含税币种与含税写明,折扣或调价基数不清单价、数量、币种、含税、折扣、调价基数均可复算第 1.3 节
6调价机制与通知期可计算无调价条款,或可单方随时调价有通知期,未写调价基数与生效日通知期、基数、生效日、老客户保护期齐全第 1.3 节
7付款时点与前提明确只写验收后付款,未写起算日写了 Net N,起算日或前提不清起算日、前提、到期日、宽限期齐全第 1.3 节、第 3.1 节
8逾期违约责任可计算无逾期条款有费率,未写基数或上限费率、基数、上限、暂停服务条件均可算第 1.3 节、第 5.1 节
9期限、续约与通知窗口写明无期限,或自动续期无窗口有期限与窗口,但不对称或未写续约价格期限、窗口、续约价格机制对称且可算第 2.2 节
10终止权与终止后结算写明只有一方可终止,或结算空白终止权对称,未写未结费用、数据返还、过渡期终止情形、通知期、未结费用、数据返还、过渡支持齐全第 2.2 节、第 10.2 节

这一组的分差通常不在“有没有合同”,而在“合同有没有数字”。LedgerLite 的企业订阅协议加 DPA 结构最完整,18 分;失分多在终止后的数据返还与过渡支持。Nord 的咨询合同常按客户模板改,范围和验收最容易被口头承诺替代,12 分。Tidecast 面对平台标准协议,多数条款不可谈,15 分已接近上限。

二、关键条款(8 项,16 分)

关键条款决定最坏损失,不决定收入。责任上限、续约窗口、SLA 抵扣三件事,任何一件只写定性描述,都会让最坏损失变成不可算。

#检查项0 分1 分2 分章节
1责任上限的写法与基数无上限,或只写合理责任有上限,但基数不清写法、基数、适用期间、单份与累计口径明确第 2.1 节
2上限之外的赔偿单列赔偿、抗辩费用、罚款都塞进上限单列一项,另两项未写三项分别列示,并标明是否受上限约束第 2.1 节
3保险与责任上限的关系要求保险,但未写险种或保额写了保额,未写与上限的扣减关系险种、保额、免赔、先保险还是先上限写清第 2.1 节、第 6.2 节
4自动续期与通知窗口对称自动续期,且无退出窗口有窗口,但只约束一方或短于 30 天双方窗口对称、不少于 30 天、续约价格有机制第 2.2 节
5SLA 三要素齐全只有 99.5% 一个数字有可用性与抵扣,统计周期不清可用性、统计周期、抵扣比例齐全第 2.3 节
6抵扣基数写明只写抵扣 10%,未写基数写了月费或年费之一,未写是否含其他收入线基数、含税口径、产品线范围、月度与年度上限齐全第 2.3 节
7抵扣上限与计算示例无上限,或抵扣可超过当期费用有上限,未给算例上限加一个停机小时数到金额的算例第 2.3 节
8暂停服务、不可抗力与免责边界任何中断都可免责有免责条款,未写通知与恢复义务免责范围、通知时限、恢复义务、补偿关系可算第 2.1 节、第 5.1 节

LedgerLite 的责任上限是 12 个月费用,$240,240,等于 1.84 倍 SDE;Nord 是合同金额 100%,多年期合同会把上限放大;Tidecast 的上限由平台协议给出。SLA 要看三件事:99.5% 对应年度 43.8 小时停机,月度 10% 抵扣是 $2,002,年度上限 $24,024。只写百分比,不写基数和上限,等于没写。

三、应收与坏账(7 项,14 分)

账期是一笔无息贷款。LedgerLite 的 Net 15 平均占用 $9,873,按 8% 资金成本算年成本 $790;Nord 的 Net 30 占用 $12,684,年成本 $1,015。实际 DSO 与合同账期的差额才是管理对象:LedgerLite 是 18.2 天对 Net 15,Nord 是 26.6 天对 Net 30。

#检查项0 分1 分2 分章节
1账期与实际 DSO 分开记录只有合同账期,没有实际回款天数有 DSO,但未按月更新合同账期、实际 DSO、差额原因按月记录第 3.1 节
2账期资金成本进入报价报价未考虑账期考虑但只凭感觉加价按年收入乘账期天数除 365 乘资金成本率算出金额第 3.1 节
3账龄四档表按月滚动只有应收总额有分档,但四档相加不等于总额0–30、31–60、61–90、90+ 齐全,与总额勾稽并按月滚动第 3.2 节
4坏账准备按账龄分档不计提,或只用一个统一比例分档但比例无依据,未定期复核分档比例有客户结构依据,季度复核并留痕第 4.1 节
5核销、转回与账外追索核销后不再跟踪有核销记录,转回或账外追索缺失核销、转回、账外追索三本台账齐全第 4.1 节、第 4.3 节
6开票前置条件齐备先开票后补验收或 PO有前置清单,缺税号、收件人或金额之一验收、PO、税号、金额、收件人五项开票前齐备第 3.3 节
7催收阶梯与前置保护逾期后才临时联系有节点,但无回收概率或大额应收无担保到期前 3 天到 +90 天节点与概率齐全,大额应收有预付款、托管或担保第 3.3 节、第 4.3 节

坏账准备按账龄分档,90+ 档只占应收 0.9%–1.2%,却贡献 24.1%–27.8% 的准备,尾部不能按余额占比看。Nord 的应收 $11,264 按普通债权 10% 回收只有 $1,126,缺口 $10,138,相当于 SDE 的 29.5%;预付款、托管或个人担保比事后催收更有效。

四、争议与保险(7 项,14 分)

争议解决要先算程序成本。Nord 的 $11,264 应收,调解净得 $5,811.60,仲裁 −$1,635.20,诉讼 −$14,452;只有调解为正。保险看净赔付,不看保额:$1M 保额、$10,000 免赔,$120,000 损失的赔付是 $110,000;一条除外责任就能把赔付变成 0。

#检查项0 分1 分2 分章节
1违约形态与金额算法对应所有违约都写赔偿全部损失区分形态,但金额算法缺上限或基数迟延、瑕疵、拒绝、部分不能四类各有公式与上限第 5.1 节
2争议程序与争议金额匹配所有争议都约定诉讼有仲裁或调解选项,未按金额分层按金额设调解、仲裁、诉讼门槛,并算过盈亏平衡点第 5.2 节
3管辖地成本进入预算管辖地在外地,未估差旅和律师费估了固定费用,未算时间成本固定费用、差旅、本地律师、时间成本四项进预算第 5.2 节
4证据链五段齐全只有合同,缺变更、验收、沟通、日志五段中缺两段合同、变更单、验收记录、沟通记录、日志齐全第 5.3 节
5止损动作与 90 天现金差发现问题后继续投入有止损动作,未算现金影响停止投入、书面异议、保全证据齐备,并算过 90 天现金差第 5.3 节
6险种覆盖核心风险与投保时点没有保险,或险种与主要风险无关险种匹配,但项目开始日早于保单起期或追溯日险种匹配,保单起期与追溯日覆盖全部项目期第 6.1 节、第 6.3 节
7保额、免赔、除外责任可算净赔付只看保额看了保额与免赔,未列除外责任三者齐全,能按 max(0, min(损失, 保额) − 免赔) 算出净赔付第 6.2 节

LedgerLite 有网络安全险,Nord 有 E&O,Tidecast 没有保险,三家的缺口不在同一个位置。LedgerLite 的单次最大损失 $280,947,保额 $1M,缺口 $10,000;Nord 的 E&O 覆盖专业责任,但不覆盖关键人和应收,总缺口 $27,462,占 SDE 80.0%;Tidecast 的 IP 与 Steam 缺口合计 $232,430,占 SDE 191.8%。

五、IP 与渠道(7 项,14 分)

IP 与渠道决定收入能不能转移。Tidecast 的音乐是买断授权、不得转授权,Steam 占销量 80%;Nord 的转介绍占 55%,前 3 家客户占 48%;LedgerLite 的 IP 多为自有,但开源许可证仍可能带来合规成本,AGPL 场景的教学成本是 $85,672。

#检查项0 分1 分2 分章节
1IP 组合清单与取得方式说不清有哪些 IP、归谁有清单,但取得方式、期限、维护成本缺失商标、著作权、专利、商业秘密逐项列明取得方式、期限、年成本第 7.1 节
2开源许可证边界可判定不知道用了哪些许可证有清单,未判定分发、修改、网络服务触发逐项判定能否闭源、修改是否公开、网络服务是否触发,并算过替代成本第 7.2 节
3归属与转让链完整外包、联合开发、员工发明没有书面归属有归属条款,未覆盖后续修改或联合开发外包、联合开发、员工发明、后续修改的转让链完整第 7.3 节
4授权类型与权利边界只写授权使用,未写独占、排他或普通写了类型,未写自用权与再许可被授权方数量、授权方自用权、再许可权三组权利写清第 8.1 节
5版税、保底与审计终止只写分成比例,未写基数或保底有保底与分成,未写审计权或终止缺口基数、单位、保底、平衡点、审计权、终止缺口均可算第 8.2 节、第 8.3 节
6渠道净得与销量门槛只比较抽成比例,未算净得算了净得,未算匹配直销所需销量四种渠道净得与销量门槛可算,返点悬崖已检查第 9.1 节、第 9.2 节
7渠道退出四钱包合同没有退出条款有退出条款,但只算罚金库存回购、未结佣金、客户归属、竞业限制四类成本齐全,并算过回收期第 9.3 节

渠道净得要算到“匹配直销需要多少笔”:同一笔 $8,500,直销净得 $8,075,平台 $5,950,经销 $5,100,代理 $3,825;要匹配一笔直销,平台需要 1.36 笔,经销 1.58 笔,代理 2.11 笔。退出要算四个钱包,Nord 的代理转直销总退出成本 $141,125,满负荷回收期 20 个月,从切换日算是 26 个月。

六、依赖与连续性(7 项,14 分)

依赖与连续性回答“断掉之后还能活多久”。Tidecast 的 Steam 占毛销售 80%,90 天收入暴露 $19,079;LedgerLite 的云依赖是云支出的 60%,支付依赖是支付费的 25%;Nord 的转介绍依赖 55%,没有合同和罚金,退出成本约 $84,876。

#检查项0 分1 分2 分章节
1依赖度与中断暴露口径只说依赖某平台,没有比例有比例,但分子分母或成本收入口径混用依赖度与 30/90 天中断暴露分开计算,口径写明第 10.1 节
2供应商退出成本合同没有退出条款只算罚金,未算最低承诺、导出、过渡、通知期五项相加,并写明罚金基数第 10.2 节
3备选方案与回本没有备选方案有方案,未算平衡概率或回本年限平衡概率、年净收益、回本年限可算,并按防什么分组第 10.3 节
4DPA、SCC 与安全问卷成本没有 DPA,或不知道客户是否要求有 DPA,未算子处理者、跨境、审计、删除义务成本五项义务、SCC 设置与复核、问卷分层成本均可算第 11.1 节、第 11.3 节
5泄露成本与净敞口没有泄露响应预算有预算,只算取证和通知,未算补偿与罚款期望四个口袋齐全,并按保单算净敞口第 11.2 节
6风险登记册五字段风险只列名字,没有概率、影响、责任人有五个字段,但概率档位与金额未参与计算五字段齐全,期望损失等于影响乘概率,并按占 SDE 比例排序第 12.1 节
7BCP 与三层覆盖没有 RTO/RPO,也没有备份和预案有 RTO/RPO,未算停机现金影响或未演练RTO/RPO 配现金影响,保险、备份、预案三层覆盖倍数与缺口可算第 12.2 节、第 12.3 节

第 12.1 节把前 11 章的风险收成一张表,三家期望损失合计 $21,361、$26,527、$17,008,占 SDE 分别是 16.4%、21.9%、49.6%。Nord 的绝对额不是最高,相对压力最大;同样的 $12,012,对 LedgerLite 是 9.2% SDE,对 Nord 是 35.0% SDE。排序要按期望损失和占 SDE 比例,不能按概率。

七、三案例评分示例

按上述标准给三个案例打分。分数是教学示例,用于演示评分方法,不是对案例的正式评价。

组满分LedgerLiteTidecastNord Studio
合同结构20181512
关键条款1614129
应收与坏账1412137
争议与保险1412109
IP 与渠道141176
依赖与连续性141157
合计92786250
得分率84.8%67.4%54.3%
评级健康需关注高风险

LedgerLite 78/92,84.8%,健康。合同结构 18/20 是三家里最高的:企业订阅协议、DPA、Net 15、12 个月费用上限、99.5% 与 10% 抵扣都有书面落点。失分集中在终止过渡、上限之外的赔偿、开源与 DPA 维护成本,以及云 60%、支付 25% 的依赖。

Tidecast 62/92,67.4%,需关注。应收与坏账 13/14 是三家里最高的,因为平台月结把应收压到接近零;但依赖与连续性只有 5/14,Steam 80% 和没有保险把平台风险直接写进收入结构。合同结构 15/20 已经接近平台标准协议的上限。

Nord 50/92,54.3%,高风险。应收与坏账 7/14 最低:Net 30、8% 逾期、2% 坏账准备;IP 与渠道 6/14 也最低:前 3 家客户 48%、转介绍 55%,把回款和收入来源绑在同一批人身上。合同结构 12/20、关键条款 9/16,说明它的弱项不是“不会写合同”,而是“生意形态让条款难以转移”。这也解释了 3.0 倍 SDE 与 4.5 倍 SDE 的差距。

八、评审记录模板

每次评审留一页记录。字段不要增删,否则季度之间无法比较。

评审日期:
评审人:
主体与业务线:
期间:最近 12 个月 + 最近一个季度
数据来源:合同台账 / 会计系统 / 订阅或平台结算 / 银行流水 / 保单

一、总分:__ / 92,得分率 __%,评级 __
二、六组得分:合同结构 __/20;关键条款 __/16;应收与坏账 __/14;
    争议与保险 __/14;IP 与渠道 __/14;依赖与连续性 __/14
三、与上次相比变化最大的三组:
四、得 0 分的项及原因:
五、得 1 分的项及补证计划:
六、本季度必须完成的三个动作:
七、需要外部专业意见的事项:
八、附件清单:合同样本 __ 份、账龄表 __ 张、保单 __ 份、风险登记册 __ 版

记录的价值在趋势,不在单次分数。同一门生意连续四个季度从 48 分走到 61 分,比一次 70 分更能说明风险结构在改善。反过来,分数没变但结构在恶化——比如应收账龄变长、平台占比上升——也要在记录里写明。

九、常见误判

把合同份数当合同质量。 十份模板不如一份每个部分都有数字的合同。清单看的是条款能否算钱,不是文件柜有多厚。

只读责任上限,不读上限之外的赔偿。 上限 12 个月费用 $240,240,但抗辩费用、罚款、IP 赔偿可能不受上限约束;只读上限,等于只读一半条款。

把 SLA 百分比当抵扣金额。 99.5% 的年度允许停机是 43.8 小时;月度 10% 抵扣是 $2,002,年度上限 $24,024。百分比不告诉你钱,基数和上限才告诉。

用合同账期代替实际 DSO。 LedgerLite Net 15 实际 18.2 天,Nord Net 30 实际 26.6 天;差额来自预付款比例与逾期比例。账期是合同写的,DSO 是客户给的。

把坏账准备当坏账率。 1% 和 2% 是会计分摊,不是预测损失;90+ 档只占应收 0.9%–1.2%,却贡献 24.1%–27.8% 的准备。准备率要按客户结构解释,不能照抄行业数字。

用客户数集中度掩盖收入集中度。 一个大客户离开,客户数流失可能只有 0.4%,收入流失却是 9%。清单里的集中度一律按收入算。

把“有保险”当成“没缺口”。 保额 $1M、免赔 $10,000,净敞口仍可能是 $10,000–$70,000;除外责任能把赔付变成 0。保险改变谁付钱,不改变损失金额。

把平台依赖当成渠道选择。 Steam 80% 不是“选了 Steam”,是收入结构;平台条款不可谈,能改的只有销量来源和自建分发的保留率。

把风险登记册写成风险清单。 没有概率档位、影响金额、责任人和缓解措施,只是一张愿望表。期望损失等于影响乘概率,不乘概率的金额不能排序。

把附录分数当法律意见。 清单判断的是证据和金额,不是条款效力;具体条款的解释与适用需要专业意见。

十、从分数到动作

  1. 先修 0 分项。 0 分意味着没有证据。对方看到 0 分项,第一反应不是“补一下就好”,而是“还有多少没披露”。补证据的成本通常远低于折价。
  2. 再看同组短板。 一组里如果有三项得 1 分,说明这一组的流程不稳定,不是单点问题;先把流程固定下来,再逐项补。
  3. 找跨组根因。 应收低分会同时拉低现金与争议组;平台依赖会同时拉低渠道与连续性组。找到同时影响多组的那个根因,比逐项优化有效。
  4. 设一个季度目标。 例如“本季度把应收与坏账组从 7 分提到 10 分”,目标要落在具体项上,不要写“提升风险意识”。
  5. 下次同口径复评。 同一个清单、同一个期间长度、同一套数据来源,分数才有可比性;口径一变,趋势就断了。

如果连续两个季度总分不动,但经营数据在变好,大概率是清单口径没跟上生意变化。例如从纯订阅转向订阅加服务,第 3 组的账期与验收权重就需要调整。清单是工具,不是教条;它的目的是让风险判断可追溯,不是让分数好看。

十一、一页速记

如果只能记住七句话,记这七句:

  1. 没有证据的项按 0 分,不按印象给分。
  2. 合同先看八个部分是否都有数字,再看责任上限之外还有什么。
  3. 应收看账龄结构,不看余额;账期是现金成本,不是付款习惯。
  4. 争议先算程序成本,再决定要不要打;保险先算净赔付,不看保额。
  5. IP 看转让链,渠道看退出成本,授权看保底平衡点。
  6. 依赖看中断 30 天与 90 天的现金暴露,不看“很重要”。
  7. 风险登记册按期望损失排序,按占 SDE 比例定优先级。

继续阅读

探索更多技术文章

浏览归档,发现更多关于系统设计、工具链和工程实践的内容。

全部文章 返回首页

「books」更多文章

  1. 《移动游戏产品的架构·商业化与发行工程》附录 C 商业化与发行评审清单
  2. 《移动游戏产品的架构·商业化与发行工程》附录 B 双案例商业化事实表
  3. 《移动游戏产品的架构·商业化与发行工程》附录 A 商业化与发行术语速查