客户问答 · 企业反舞弊与职务侵占系列
Q&A:合同里没写必须交源码,项目做完后公司还能要求供应商把源码交出来吗?
很多软件合同会写功能、价款、上线和运维,却唯独没写“交付源代码”。项目初期,公司只关心系统能不能用;等到准备自己运维、二次开发或更换供应商时,才发现没有源码就很难接手。
· 本批审校完成于 2026-08-27
一、问题引入
很多软件合同会写功能、价款、上线和运维,却唯独没写“交付源代码”。项目初期,公司只关心系统能不能用;等到准备自己运维、二次开发或更换供应商时,才发现没有源码就很难接手。
这时,供应商往往会说:合同只约定了交付系统,从来没答应把源码也交给公司。那么,公司付了定制开发费,是否就当然有权拿到源码?
二、法律问题翻译
这件事不能只搜索“源码”三个字,还要回答:
- 双方买卖的是定制开发成果,还是现成软件的使用许可?
- 合同对著作权、定制成果归属、独立运行和二次开发怎么约定?
- 即使有交付义务,交的应是全部代码,还是只包括本项目定制部分?
三、先说结论
- 合同没有出现“必须交源码”,不代表公司一定无权要求,但也不代表付过开发费就自动取得全部源码。
- 要结合合同名称和实际内容,特别是著作权归属、定制成果所有、技术资料交付、二次开发与独立接管等条款,解释双方真正的交易目的。
- 如果对软件著作权没有书面约定或约定不明,《计算机软件保护条例》第十一条的默认规则是著作权由受托人享有。因此,公司不能只凭“这是我花钱定制的”要求对方交出所有代码。
- 即使应当交付,也要分清项目定制代码、供应商既有底层框架、开源组件和第三方商业模块,不能把它们一概当成公司所有。
四、裁判要旨与参考案例
在一起计算机软件开发合同纠纷中,合同明确约定网络平台项目的相关程序、文件源码版权归委托方所有。法院因而认为,开发方不仅要交付源码,还应保证第三人对该源码不享有权利。由于交付的系统与案外软件存在大量相似内容,开发方又未能合理解释,法院认定其未尽权利瑕疵担保义务,支持解除合同并返还已付合同款。
这个案例反而提醒我们:法院支持源码交付,关键前提是合同对源码和版权归属有明确约定。它不能被扩大成“所有委托开发项目都必须交源码”的普遍规则。
案件来源:山东省济南市中级人民法院(2020)鲁01民初3195号一审民事判决;最高人民法院(2021)最高法知民终677号二审民事判决,驳回上诉、维持原判,为生效裁判。最高人民法院知识产权法庭入库案例
五、律师建议
第一,把所有合同文件放在一起看。主合同没写“源码”,不等于附件、报价单、需求书、投标文件、会议纪要和微信邮件里也没有。
第二,先确定公司真正需要的权利。有的公司要的是源码著作权,有的只需要在供应商停业时能够接管。后者也可以通过源码托管、触发交付和持续导出来实现。
第三,要求供应商说明代码的构成。哪些是本项目定制开发,哪些是通用平台,哪些来自开源或第三方授权,并提供版本、许可证和使用范围。
第四,如果准备提出正式要求,书面说明依据的合同条款、交易目的和需要交付的具体范围,不要笼统地说“整套代码全部给我”。
六、最后的话
源码纠纷往往不是项目做完后才出现的,而是签合同时就留下的空白。
对已经签过的合同,公司还可以从权利归属、技术资料和独立使用目的中寻找依据;但如果这些也都没写,就不能把“我付过钱”当成自动取得源码的答案。
专业团队