中华人民共和国最高人民法院 民 事 判 决 书 （2019）最高法知民终330号 上诉人（原审原告）：张明，男，1973年4月6日出生，朝鲜族，住辽宁省沈阳市皇姑区。 被上诉人（原审被告）：弗格安吉网络科技（北京）有限公司。住所地：北京市通州区五里店西路6号7号楼241号。 法定代表人：黄勇，该公司总经理。 上诉人张明因与被上诉人弗格安吉网络科技（北京）有限公司（以下简称弗格安吉公司）计算机软件开发合同纠纷一案，不服北京知识产权法院作出的（2017）京73民初91号民事判决，向本院提起上诉。本院于2019年8月9日立案后，依法组成合议庭，于2019年9月10日公开开庭审理了本案。张明、弗格安吉公司法定代表人黄勇到庭参加诉讼。本案现已审理终结。 张明上诉请求：1.撤销原审判决第二项，发回重审或依法改判支持张明原审全部诉讼请求；2.本案原审、二审诉讼费用由弗格安吉公司承担。事实和理由：1.张明已通过中间人续南君向弗格安吉公司提供了完成软件开发所必需的资料，不认同弗格安吉公司所称，张明未提供后台管理等系统说明书，导致开发内容约定不明；2.张明与弗格安吉公司于2015年9月8日签订《技术开发合同》（以下简称涉案合同），总价为220000元整，合同约定了违约责任等条款，张明于合同签订后支付了预付款66000元；3.合同约定由弗格安吉公司负责详细需求调查、设计、开发、调试、培训、技术服务等工作，而详细需求调查不属于需求变更；4.弗格安吉公司于2015年10月26日提交了阶段开发成果，但未提交截止2015年11月17日的开发成果，且之后不再响应张明要求继续履行合同的要求；5.弗格安吉公司内部有矛盾、管理混乱，无法完成软件开发，导致本案纠纷产生，应返还首付款并承担相应的违约责任。 弗格安吉公司辩称，请求解除合同，张明承担诉讼费用。 张明向原审法院起诉，请求：1.解除张明与弗格安吉公司2015年9月8日签订的涉案合同；2.弗格安吉公司返还首付款66000元整；3.弗格安吉公司支付违约金44000元整；4.弗格安吉公司支付律师代理费14000元整；5.本案诉讼费用由弗格安吉公司承担。 原审法院认定事实： 一、关于涉案合同签订情况 2015年9月8日，张明（甲方）与弗格安吉公司（乙方）签订了涉案合同。涉案合同载明：“委托人张明，研究开发人弗格安吉公司。双方就百代旅行服务端和后台管理端项目的设计、开发、安装、培训、维护等事宜，经协商一致，签订本合同。本合同中所有提及到的通知、确认、验收等，除本合同条款明确约定外，包括但不限于口头、电话、ＩＭ、截图、视频、书面及电子邮件等形式。一、合作方式：甲方同意委托乙方开发百代旅行服务端和后台管理端项目。乙方愿意承接甲方上述开发项目，并保证按时、按质地完成开发任务。二、合同标的：2.乙方负责详细需求调查、设计、开发、调试、培训、技术服务等，保证按照《百代旅行服务端和后台管理端工作说明书》（以下简称说明书）按时、按质地完成开发任务。5.甲方在合同有效期内发生需求变更较大，引起合同中乙方设计开发内容调整时，双方对变更内容进行协商，协同解决，双方签订《需求变更申请单》。三、研究开发计划及成果交付：2.开发内容详见合同附件说明书，说明书为本协议不可分割的组成部分，具有同行于协议下文的法律效力。四、委托项目的研究开发期限：（二）本合同项下委托项目的日期预计自2015年9月8日至2015年11月30日。五、研究开发经费、报酬及其支付或结算方式：开发总费用的支付方式（采用分期付款方式）：1.甲方在合同签订后的5个工作日内向乙方支付开发总费用的30%，即人民币66000元；2.项目上线后5个工作日内向乙方支付开发总费用的45%，即人民币99000元；3.甲方在试运营期届满，验收合格后，5个工作日内向乙方支付开发总费用的15%，即人民币33000元；4.甲方在售后服务届满，验收合格后，5个工作日内向乙方支付开发总费用的10%，即人民币22000元。八、双方的权利和义务：1.甲方的权利和义务：（3）甲方应向乙方提供完成软件开发所必需的资料和工作条件。十二、违约责任：（一）由于乙方原因未能在合同期限内完成约定内容的，则应按超过合同周期每个工作日承担合同总金额1%的比例向甲方支付逾期违约金。逾期超过60日的，甲方有权单方面终止合同。甲方依照本款约定终止合同的，乙方应退还已经收取的费用，并向甲方支付相当于开发总费用的20%的违约金；（三）双方在执行本合同过程中，任何一方违反本合同之约定，均为违约。违约方除向守约方赔偿外，还须承担另一方为取得此等赔偿而支出的所有费用，包括但不限于仲裁费、诉讼费、律师费、差旅费等。二十、其它：（三）合同双方联系信息如下：甲方联系人张明，电子邮件ｚｍｅ×××＠ｓｉｎａ.ｃｏｍ；乙方联系人黄勇，联系电话137××××2894，电子邮件137×××＠139.ｃｏｍ。涉案合同附有说明书，包含工作安排、工作范围、项目主要交付物、项目验收及项目计划等条款，未涉及具体的项目需求。 2015年9月16日，张明向黄勇账户支付了涉案合同第一笔款项66000元。弗格安吉公司认可收到上述合同款。 二、关于涉案合同履行情况 为证明因弗格安吉公司未及时履行合同义务，张明多次进行催促，张明提交了其向涉案合同载明的乙方联系人黄勇手机号码发送的短信记录，载明：2015年11月17日，张明向黄勇发送信息称“正式通知你，请你继续履行你我之间的合同，若再不反馈，将视为违约，我将采取法律行动维护正当权益”。2016年1月26日，张明向黄勇发送信息称“你好！在北京么？关于咱们合同的事，找个时间谈谈吧”，黄勇回复称“什么事”，张明回复“你合同没履行完，违约了，该如何处理？”。2016年2月25日，张明向黄勇发送信息称“你好！律师函收到了吧？我希望咱们还是协商解决。可行的话，联系我吧。希望你尽快回复”。 弗格安吉公司认可上述信息的真实性，但认为张明应提交内容细致的工作说明书，否则无法完成软件开发。原审法院当庭对张明邮箱进行了勘验，双方对软件开发的需求有过邮件沟通。弗格安吉公司对此坚持认为应当通过涉案合同约定的方式，即双方签订《需求变更申请单》来确认变更需求。对于涉案合同约定的“甲方提供完成软件开发所必需的资料”，张明未提交任何证据证明。 弗格安吉公司主张其于2015年10月26日以邮件方式交付了涉案项目后台代码及备忘录，张明当庭确认已收到上述交付内容。对于后续的沟通情况，张明当庭提交了2015年11月8日的录音。 原审法院当庭播放了上述录音，内容包括：（张明）什么时候做完？今天能做完吗？（弗格安吉公司）可以做完，我们只能按照自己的理解做。（张明）你和我说的是今天做完。你把后台界面给我们。（弗格安吉公司）你的前后面逻辑不通的，我们先做一版。（张明）先交付一个可行的程序。（弗格安吉公司）所以这个合同我就不想接。（张明）这算违约了。（弗格安吉公司）违约就违约吧。（张明）后续怎么办啊？（弗格安吉公司）后面的钱我就不想拿了，这个东西不想再做了。（张明）我现在要的是进度。（弗格安吉公司）按照这个做吧，不考虑复杂情况…… 弗格安吉公司认可上述录音内容，并认可其于2015年10月26日提交了上述开发成果后，没有再继续履行涉案合同。另，张明为证明其合理支出，提交了其与北京都嘉律师事务所签订的委托代理协议及律师费发票，发票金额14000元。 原审法院认为，张明与弗格安吉公司签订的涉案合同系双方的真实意思表示，内容亦不违反我国法律法规的效力性强制性规定，应为合法有效的合同。双方当事人均应按照涉案合同的约定全面履行相关义务。根据双方当事人的诉辩意见，本案争议焦点为涉案合同是否应当解除以及合同解除后的法律后果。 关于涉案合同是否应当解除。本案中张明主张于本案开庭之日解除涉案合同，弗格安吉公司对此表示同意，原审法院确认涉案合同于2019年2月25日解除。 关于涉案合同解除后的法律后果。《中华人民共和国合同法》第九十七条规定，合同解除后，尚未履行的，终止履行；已经履行的，根据履行情况和合同性质，当事人可以要求恢复原状、采取其他补救措施，并有权要求赔偿损失。 本案中，涉案合同签订后，张明依约履行了其第一笔付款义务，弗格安吉公司于2015年10月26日以邮件方式交付了项目后台代码及备忘录。弗格安吉公司抗辩其未继续履行合同的原因系张明未能提供开发软件所需要的材料，以及双方未签订《需求变更申请单》来确认变更需求，导致其无法履行后续合同义务。对此原审法院认为，《最高人民法院关于民事诉讼证据的若干规定》第二条规定，当事人对自己提出的诉讼请求所依据的事实或者反驳对方诉讼请求所依据的事实有责任提供证据加以证明。没有证据或者证据不足以证明当事人的事实主张的，由负有举证责任的当事人承担不利后果。因涉案合同系计算机软件开发合同，通常来讲，双方应对软件开发的具体需求及验收标准进行确定，在此基础上，受委托方才能按照该确定的需求进行软件开发，故提供确定的软件开发具体内容及需求系涉案合同能够履行的前提。 本案中，涉案合同约定了开发内容详见说明书，但涉案合同所附说明书中却未包含具体的开发内容。同时，根据涉案合同约定，张明应向弗格安吉公司提供完成软件开发所必需的资料等，但张明并未提交证据证明其已向弗格安吉公司提供了软件开发所需资料以及确定的具体开发内容。双方邮件往来记录虽然可以证明双方对软件需求有过沟通，但其沟通情况尚不足以确定双方已明确了涉案软件开发的具体内容及详细需求。因此，在案证据不足以证明张明已提供了开发软件所需材料及具体的开发需求，在此情况下，原审法院难以认定弗格安吉公司的行为构成违约。 张明认为其提出需求以及变更需求可以通过邮件往来等确认，每次变更均签订《需求变更申请单》不具有现实可操作性。对此原审法院认为，任何一项程序的开发必然有其可预期、可操作的最终目标，如若该目标不能在开发之初确认，则会导致开发过程因缺乏明确目标而混乱。在确定具体开发内容后，张明固然有权利在一定限度内依据实际情况变更其需求，但该变更并非单方作出即生效，而是需征得开发人的同意，即双方应对此协商一致，涉案合同亦通过签订《需求变更申请单》这一条款对此进行了约定。换言之，签订《需求变更申请单》系双方已对需求的变更达成一致的证明，如果张明认为双方已以实际的履行行为就改用合同约定之外的其他方式协商需求变更并达成了一致，其应就此承担举证义务。而从本案查明事实来看，双方既未签订《需求变更申请单》，张明也未提供证据证明双方已对此达成合意。在此情况下，原审法院对张明的主张实难采信。 至于弗格安吉公司是否应返还首笔款项，原审法院认为，弗格安吉公司在合理期限内以邮件方式交付了项目后台代码及备忘录，张明对此并未提出异议，故难以认定弗格安吉公司提交的成果不符合合同约定。且弗格安吉公司对上述阶段性成果必然已付出了相应的人力物力财力，其劳动理应获得相应的对价。因此，在弗格安吉公司已交付阶段性成果且无过错的情况下，张明要求其返还首笔款项的主张没有事实和法律依据，原审法院不予支持。同样，对于张明要求弗格安吉公司支付违约金和律师费的主张，原审法院亦不予支持。 综上，原审法院依据《中华人民共和国合同法》第九十七条，《中华人民共和国民事诉讼法》第六十四条之规定，于2019年3月28日判决：一、确认张明与弗格安吉公司于2015年9月8日签订的涉案合同于2019年2月25日解除；二、驳回张明的其他诉讼请求。案件受理费2780元，由张明负担。 二审中，张明提交两组证据：第1组证据为8封邮件，系合同签订前张明发给中间人续南君4封邮件，续南君将上述4封邮件又转发黄勇，邮件内容为拟开发涉案软件的大致需求。证明张明在合同签订前通过续南君向弗格安吉公司提供了本案软件开发项目所必需的资料。第2组证据为2015年8月25日至11月12日，张明与黄勇双方往来邮件收件箱页面截图35封。证明双方自签订合同前至合同履行过程中一直通过邮件就需求进行澄清和细化。弗格安吉公司经质证认为，对两组证据的真实性认可，关联性不予认可。第1组证据系合同签订前的沟通内容，且续南君非合同相对方。第2组证据缺少书面证据，不具有法律效力。本院经认证对上述两组证据真实性予以确认。至于证明效力，本院将结合本案其他证据一并予以阐述。 弗格安吉公司提交三组证据：第1组证据为黄勇发送张明的2封邮件截图，分别为2015年10月26日发送，主题为“API部分截止26日目前源码，以及建库和初始化数据SQL”和2015年11月7日发送，主题为“后台管理代码”，证明弗格安吉公司已交付符合合同约定的产品。第2组证据为黄勇与张明2015年10月28日qq聊天截图及2015年9月8日张明回复黄勇“合同修改稿”邮件截图，证明交付代码后，张明再次要求修改内容并提出追加费用。第3组证据为2015年10月29日、11月17日、12月16日三张宣传百代旅行APP的网页信息截图，证明百代旅行APP已上线运行。张明经质证认为，对三组证据的真实性、合法性予以认可，对第1、2组证据的关联性认可，对第3组证据的关联性不予认可，对上述3组证据的证明目的不予认可。关于第1组证据，张明认可弗格安吉公司交付了阶段性成果但未验收，不认可其交付的软件符合合同约定。关于第2组证据，只是聊天记录，双方未签字确认。关于第3组证据网页宣传为市场行为，不能证明已经上线。本院经认证认为，对上述证据真实性予以确认。第1组证据可证明弗格安吉公司交付了阶段性成果，对该组证据予以采信。第2组证据待证事实与争议焦点无关，第3组证据不能证明百代旅行APP已上线运行，对该2组证据不予采纳。 原审法院查明的事实属实，本院予以确认。 本院认为，本案二审的争议焦点为，涉案合同解除后的法律后果。 一、弗格安吉公司应否承担违约责任。 本案中，张明于原审期间主张解除涉案合同，弗格安吉公司表示同意，原审法院判决确认涉案合同解除并无不当。合同解除后，尚未履行的，终止履行。至于合同解除后当事人承担的违约责任问题，应基于双方约定，根据履行合同是否违反合同约定的义务来确定。本案中，涉案合同约定开发内容详见说明书，但该说明书未包含具体的开发需求。虽然双方合同另约定，发生需求变更、调整时，双方对变更内容进行协商，协同解决，双方签订《需求变更申请单》，但实际履行过程中，双方并没有签订《需求变更申请单》。因此，根据双方约定及履行情况，尚不能明确涉案合同所约定的软件开发的具体内容及需求。张明声称通过中间人续南君转发了涉案合同APP需求，虽然双方往来邮件可以反映出双方就合作事宜进行了沟通，但尚不足以证明双方约定了涉案合同软件开发的具体内容及需求，张明亦未能提供证据证明双方邮件所涉即为涉案合同项下内容，更不能根据邮件所涉内容完成情况来确定弗格安吉公司是否违反了合同约定。且该组邮件系双方在签订合同之前通过案外人对软件开发项目的介绍和沟通，不能据此确定涉案合同相关内容。在涉案合同软件开发的具体内容及需求未确定的情形下，不能确定弗格安吉公司履行合同是否违反了双方间的约定，故张明主张合同解除后应由弗格安吉公司承担违约责任，本院不予支持。弗格安吉公司亦无需支付违约金和律师费用。 二、弗格安吉公司应否返还首付款。 关于弗格安吉公司是否应返还张明已付的首笔款项，弗格安吉公司于2015年10月26日和2015年11月7日交付了API部分截止26日的源码、建库和初始化数据SQL及后台管理代码，张明认可收到了弗格安吉公司提交的阶段性成果。对此，弗格安吉公司付出了相应的劳动，根据公平原则，其劳动应获得相应的对价。因此，原审法院认定弗格安吉公司无需返还首付款并无不当，应予维持。 综上所述，张明上诉请求不能成立，应予驳回；原审判决认定事实清楚，适用法律正确，应予维持。依照《中华人民共和国民事诉讼法》第一百七十条第一款第一项规定，判决如下： 驳回上诉，维持原判。 二审案件受理费2780元，由张明负担。 本判决为终审判决。 审判长  徐燕如 审判员  刘晓梅 审判员  詹靖康 二〇一九年十一月十日                                                     法官助理 毛涵                                                    书记员    谭秀娇                                裁判要点                            案  号                       （2019）最高法知民终330号                               案  由                       计算机软件开发合同纠纷                               合 议 庭                       审判长：徐燕如             审判员：刘晓梅、詹靖康                                                     法官助理：毛涵                       书记员：谭秀娇                               裁判日期                       2019年11月10日                               关 键 词                       计算机软件开发合同；合同解除；违约责任                               当 事 人                       上诉人（原审原告）：张明             被上诉人（原审被告）：弗格安吉网络科技（北京）有限公司                               裁判结果                       驳回上诉，维持原判。             原判主文：一、确认张明与弗格安吉网络科技（北京）有限公司于2015年9月8日签订的《技术开发合同》于2019年2月25日解除；二、驳回张明的其他诉讼请求。                               相关法条                       《中华人民共和国合同法》第九十七条、《中华人民共和国民事诉讼法》第一百七十条第一款第一项                               法律问题                       计算机软件开发合同开发方违约责任的认定                               裁判观点                       计算机软件开发合同，经双方明确确定的具体内容和需求是开发方履行开发义务的前提，开发内容和需求不确定前提下，不宜因开发方未完成软件开发认定其存在违约责任。                               注：本摘要并非判决书之组成部分，不具有法律效力。