《独立开发者的商业指南·合同、应收与风险》前言:把合同翻译成数字

前言交代卷二的定位与读法:合同不是法务模板,而是一组会产生财务后果的条款。三个案例分别代表可谈的标准订阅协议、几乎不可谈的平台条款与逐单重谈的咨询合同;本卷统一金额、比率、账期与期望损失四种口径,每节给出一个可计算的量,并说明它在什么边界条件下会失效。

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

卷一算清了收入、毛利、SDE、三张表和估值区间。但它只回答了一个问题:这笔生意现在值多少钱。还有一个问题没有回答:这些钱在什么条件下才真正属于你。客户什么时候付款、不付怎么办、对方违约你最多损失多少、数据出事谁掏钱、平台改规则你能不能搬走——这些都不是会计问题,是合同问题。

卷二把合同当成一组会产生财务后果的条款来写。它不讲法律知识,也不提供合同模板,只做一件事:把每一条重要条款翻译成一个可以算的数字。

三个案例,三种合同形态

三个案例的规模在卷一已经设好,这一卷要看的是它们与钱之间的合同结构差异。

LedgerLite 用的是企业订阅协议。这类合同有标准模板,但每一条都可以谈:账期 Net 15,责任上限 12 个月费用,SLA 99.5% 抵扣 10%,数据处理协议附在合同后,网络安全险保额 1,000,000 美元。合同是谈出来的,所以条款的每一个改动都能换算成现金。

Tidecast 用的是平台发行协议。这份合同不是双方逐条谈出来的,而是平台单方更新的标准条款:Steam 占销量 80%,平台分成 30%,退款率 4%,按月结算,账期 30 天。你能算的仍然是最坏损失、现金占用和收入可转移性,但几乎没有条款可以改,能改的只有渠道结构和现金储备。

Nord Studio 用的是逐单咨询合同。每个项目重新谈一次:85 美元/小时、Net 30、验收后付款、责任上限是合同金额的 100%,E&O 保险 500,000 美元。合同数量多、单笔金额小、条款重复率高,真正的风险不在单条措辞,而在客户集中——前 3 家占收入 48%。

三种合同形态对应三种谈判位置:可以谈、几乎不能谈、每次都要谈。卷二的所有方法都在这三种位置上验证一遍。

谈判位置的差异会直接改变现金。LedgerLite 可以把账期从 Net 30 谈到 Net 15,一年 240,240 美元收入对应的现金占用就从 19,746 美元降到 9,873 美元;Tidecast 谈不动平台的分成与结算周期,只能靠储备和渠道结构对冲;Nord 每签一单都能重谈条款,但客户集中让它在议价时反而更弱。同一套计算方法,在三种位置上的用法完全不同。

与卷一的衔接

卷二不重算卷一的数字。收入、毛利、SDE、三张表、应收余额、递延收入、13 周现金表、估值区间,这些在卷一已经算过;卷二只回答一件事:合同条款如何改变它们。

需要引用时,正文给一句话和一个链接,例如应收余额的构成见卷一《资产负债表》 ,客户集中度对估值的影响见卷一《集中度风险:前五大客户占比》 。读者如果还没读卷一,可以先看附录 B 的事实表;如果已经读过,纵深的部分可以直接跳回。

这本卷也不重复卷一的估值方法。第 11 章与第 12 章会用到估值倍数与尽调清单,但只讲「风险敞口如何压低倍数」「哪些条款会在尽调里被追着问」,不重新推导倍数本身。

一套新口径

卷一的口径继续有效:金额用美元整数,比率保留一位小数,派生数字必须写出公式,收入按权责发生制、现金按收付实现制。卷二在此基础上追加四条。

第一,账期与账龄用天。账期写 Net 15、Net 30、月结 30 天;应收周转天数按 应收 ÷ 年收入 × 365;账龄分 0–30、31–60、61–90、90 天以上四档。

第二,比率可以改用基点。涉及概率、抵扣比例、坏账准备率时,百分点容易在乘法里丢精度,书中统一在代码与表格里用基点(1% = 100 bps),正文叙述仍写百分数。

第三,风险敞口按 概率 × 损失 计算。概率用低、中、高三档,对应的 bps 是教学设定,不是统计结果。期望损失是可比较的量,不是对某一次事件的预测。

第四,教学假设必须标注。保费、免赔额、坏账准备率、仲裁费用、回收概率、迁移工时,这些数字没有公开统一口径,书中给出的是用于演示的假设值,会在正文或附录 B 中明确标出。

可运行的实验工程

卷二沿用 idb-lab。每一节正文里有一个 TypeScript 代码块,对应 src/contract/ 下的一个源文件,开头仍然是三行头:

// file: src/contract/terms.ts
// tier: L1
// verify: node --test test/contract/terms.test.ts

代码块的约束与卷一相同:零第三方依赖、只用 Node 内置模块、金额用整数美分、比率用基点、Node 26 原生类型剥离直接运行 .ts。把代码块保存为对应路径,运行 // verify: 给出的命令,就能复现正文中的数字。

卷二能算的部分包括:合同要素的完整性检查、验收条件判定、付款条件与现金占用、责任上限与保险净敞口、续约窗口、SLA 抵扣、账龄分档与坏账准备、催收阶梯的期望回收、违约损失、争议程序成本、证据完整度、保险赔付、IP 保护期、开源许可证边界、授权定价与版税、渠道净得、依赖暴露、迁移成本、风险登记册、RTO/RPO 与停机损失、保障覆盖缺口。它不覆盖需要外部系统的部分:真实签约、诉讼程序、保险核保、监管认定。这些只写口径与判断。

本书的读法

卷二 45 篇,13 章,每章 3 节,另有序、前言、目录与三篇附录。三种读法:

  • 顺序读:从第 1 章合同结构开始,按章推进。适合第一次系统检查合同与应收的读者,约需 10 至 12 小时。
  • 问题读:带着一个具体问题跳到对应章节。目录页给出三条按角色划分的路径:经营者关心账期与催收,准备融资或出售的人关心责任上限、IP 归属与风险登记,只关心现金的人可以直接读第 3、4、8、12 章。
  • 对照读:先读附录 B,把三个案例的合同条款与风险敞口抄到自己的表里,再逐章替换成自己生意的数字。这是最慢但收获最大的一种读法。

每一节结尾仍有「小结」和「常见错误与边界」,两节之间有阅读导航。卷一已经算过的收入、毛利、SDE、估值,卷二不重算,只在需要时用一句话引用并链接回对应章节。

使用约定

卷二不构成法律意见。书中的合同条款、责任上限、SLA 抵扣、保险覆盖、许可证判断都是商业口径,用于演示计算方法,不代表任何司法辖区的现行规定。真实签约、争议处理、保险理赔与合规判断,必须请所在地的持牌专业人士复核。

书中的案例公司、产品名、人名均为虚构。如果与真实主体重名,纯属巧合。

书中的概率、费率、工时、回收比例是教学假设,会在出现处标注。读者替换成自己的数字时,结论可能变化,方法是稳定的。

准备好了就从目录页开始。目录页按角色给出了三条路径,也列出了全卷 13 章 39 节的完整清单。

继续阅读

探索更多技术文章

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

全部文章 返回首页

「books」更多文章

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