如果供应商只愿意交付需求文档、接口说明或设计稿,而不承担部署、联调和上线实施,双方接口的设计重点就不是“把文档写全”,而是把文档里无法自动验证的部分变成可核对的输入输出。你需要在保留、改写或退出之间做取舍:保留的前提是接口边界能用样例和验收脚本固定;改写的前提是你方有实施能力且愿意承担返工;退出的前提是文档连最小可运行路径都无法支撑。
只交文档不实施时,最容易出现的分歧是:供应商认为“写清楚了”,你方认为“没法用”。这时不要争论文档厚薄,而是检查它是否包含可核对的接口四要素:调用方向、数据字段、错误返回、状态变化。缺少任何一项,实施方就只能靠猜,后续返工成本会转移到你方。
一个可操作的判断动作是:从文档中挑一条最核心的业务链路,要求供应商补充一份脱敏的请求与响应样例,并注明字段类型、必填性和空值含义。如果对方只能给文字描述而无法给出样例,说明这份文档更接近方案说明,而不是实施接口。此时保留原样推进,通常会在联调阶段集中暴露问题。
如果你方有开发或实施团队,可以选择保留供应商的文档交付模式,但必须把接口从“阅读材料”改写成“核对清单”。具体做法是:为每个接口定义一条最小验证路径,写明输入、预期输出、异常分支和判定人。这样做的结果是把分歧从“理解不同”转成“样例是否通过”,下一步的联调才有共同依据。
假设一个场景:供应商交付的是用户提交表单的接口说明,但未提供实施。你方可以要求补充三条样例——正常提交、必填缺失、重复提交。每条样例注明请求字段和预期返回码。若供应商拒绝补充,你方就需要评估是否自行编写适配层;这属于改写接口,而不是原样保留。
改写意味着你方在供应商文档之外,自行定义一层适配或转换逻辑。它适用的前提是:文档已经覆盖主要业务规则,只是字段命名、错误码或调用方式与你方系统不一致。改写不是重写业务,而是把不可直接使用的部分隔离出来,避免污染你方现有代码。
一个注明假设的短例子:假设供应商文档用status=1表示成功,而你方系统用code=0表示成功。你方可以在适配层做映射,并记录映射规则。这个动作的结果是:接口可以继续推进,但后续每次供应商更新文档,你方都要核对映射是否失效。如果供应商文档本身频繁变动且无版本记录,改写的维护成本会迅速超过重新选择供应商的成本。
退出不是情绪决定,而是基于可核对事实的取舍。在决定退出前,先确认三件事:第一,文档是否缺少最小可运行路径;第二,供应商是否拒绝提供任何样例或澄清;第三,你方是否已经无法通过适配层控制返工范围。如果这三件事同时成立,继续保留文档交付只会把风险留在你方。
退出的实际动作可以是:暂停基于该文档的开发排期,把已发现的接口缺口整理成书面问题清单,并要求在约定时间内补充样例。若补充后仍无法通过最小验证路径,再转向其他实施方。这个动作的结果是:你方不会在不可核对的文档上继续投入,同时保留了后续追责或切换的依据。
这些做法的共同点是:不依赖供应商的口头承诺,也不假设文档天然可实施。你方需要根据自身实施能力,在保留、改写和退出之间选择一条路径,并把选择依据落在样例、负责人和验收步骤上。只有这样,供应商只交文档不实施时,双方接口才不至于变成无法收尾的争议。