中华人民共和国最高人民法院 民 事 判 决 书 （2020）最高法知民终64号 上诉人（原审原告、反诉被告）：上海昭隆软件科技有限公司。住所地：上海市嘉定区真南路******。 法定代表人：范井图，该公司执行董事。 委托诉讼代理人：邬建荣，该公司员工。 委托诉讼代理人：沙海涛，北京金诚同达（上海）律师事务所律师。 被上诉人（原审被告、反诉原告）：合朝电器（上海）有限公司。住所地：上海。住所地：上海市奉贤区浦星公路****厂房 法定代表人：黄宗联，该公司执行董事。 委托诉讼代理人：丁菁菁，上海行观律师事务所律师。 委托诉讼代理人：李浩，上海行观律师事务所律师。 上诉人上海昭隆软件科技有限公司（以下简称昭隆公司）因与被上诉人合朝电器（上海）有限公司（以下简称合朝公司）计算机软件开发合同纠纷一案，不服上海知识产权法院于2019年9月29日作出的（2018）沪73民初265号民事判决，向本院提起上诉。本院于2020年1月6日立案后，依法组成合议庭进行了审理。本案现已审理终结。 昭隆公司上诉请求：撤销原审判决，改判支持昭隆公司的全部原审诉讼请求；一、二审全部诉讼费用由合朝公司承担。 主要事实和理由：（一）涉案《软件最终用户许可及实施服务合同》《软件二次开发服务合同》无法履行的真正原因是合朝公司单方要求中止第二次上线工作，致使昭隆公司无法按照约定完成第二次上线，且随后合朝公司单方变更合同内容，在无法与昭隆公司协商一致的情况下单方终止合同。上线是一个过程，工作内容为动态数据准备和1.8系统切换中的三项内容，分别为1.8.1制定上线计划、1.8.2期初的动态数据录入和检查以及1.8.3日常业务处理；上线时间周期为2017年11月29日至2017年12月15日，包含两个重要的时间节点：2017年12月1日为期初日期，2017年12月1日到2017年12月6日完成期初动态数据录入和检查，系统将于2017年12月7日可以进行日常业务处理。（二）原审法院认定昭隆公司“明确拒绝履行合同”且“无正当理由”“要求加价18万”的行为构成违约，导致涉案合同目的无法实现，系认定事实错误。合朝公司要求进行“第三次上线”的工作内容已超过合同约定的工作范围，且客观上导致昭隆公司工作量骤增，昭隆公司在评估所须增加的工作量，计算得出服务费需相应增加18万元，并非无正当理由，不构成违约。（三）原审法院认定涉案系统存在的问题“均可能直接影响合朝公司的生产经营”，及合朝公司表示“数据缺失造成采购不到物料，工厂停产”均与客观事实相悖。（四）即使《软件最终用户许可及实施服务合同》与《软件二次开发服务合同》被判解除，昭隆公司为履行合同而购置了金蝶软件（K/3WISEV14.3）并在此基础上依据合朝公司的要求进行定制化开发设计，应由合朝公司退回或赔偿昭隆公司全部购买成本。合朝公司可以继续使用金蝶软件或在昭隆公司开发设计的基础上进行深化设计，从而达到原定目标。原审判决使合朝公司可以“零对价”获得昭隆公司高价购买的金蝶软件并免费享有昭隆公司已完成的设计成果，对于昭隆公司显失公平。（五）合朝公司单方终止合同的行为严重违反《软件最终用户许可及实施服务合同》的约定，理应赔偿因此给昭隆公司带来的损失。 合朝公司辩称，原审判决认定事实清楚，适用法律正确。第一，昭隆公司构成根本违约，合朝公司有权解除《软件最终用户许可及实施服务合同》《软件二次开发服务合同》。经原审法院现场勘验，昭隆公司交付的软件不符合合同约定以及实施方案的需求。在合朝公司提出软件问题后，昭隆公司无视涉案《软件最终用户许可及实施服务合同》第3.1.2条的约定，单方提出加价18万元的要求，以实际行为拒绝履行合同义务，导致合同无法实现。第二，针对昭隆公司对上线概念的解释，第1.8.1条至第1.8.3所约定的内容均为期初数据的录入和检查，并非系统软件的完善，系统软件应当于2017年11月28日前开发完毕。第三，《软件最终用户许可及实施服务合同》对于145天工作量的约定，也是合同期限的约定。昭隆公司所交付的软件并未达到要求且至今已经过了质保期，对合朝公司存在影响。第四，合朝公司仅仅是要求昭隆公司交付约定的软件，昭隆公司至今未完成。 昭隆公司向原审法院提起诉讼，原审法院于2018年3月20日立案受理。昭隆公司向原审法院起诉请求：1.判令合朝公司支付昭隆公司实施服务费103124元；2.判令合朝公司赔偿昭隆公司经济损失51562元。合朝公司向原审法院反诉请求：1.解除双方签署的合同，包括《软件最终用户许可及实施服务合同》和《软件二次开发服务合同》；2.判决昭隆公司赔偿合朝公司经济损失390934元。 原审法院认定事实： 2017年4月13日，合朝公司（甲方）与昭隆公司（乙方）签订《软件最终用户许可及实施服务合同》，合同约定乙方向甲方提供金蝶ERP软件，该软件使用许可费及实施服务费含税合计为515620元，其中，使用许可费含税合计为225620元，实施服务费含税合计为290000元，实施工作量预计为145（人天数）。合同约定甲方在签署后10日内向乙方支付50%（257810元），付款标志：合同签署；实施方案确认完成10日内支付20%（103124元），付款标志：实施方案；所有功能确认正常运作后10日内支付20%（103124元），付款标志：上线报告；上线确认6个月后的10日内支付10%（51562元），付款标志：验收报告。合同6.1.2条约定：甲方应对其提供的所有该类数据、材料以及信息的内容、准确性、完整性和统一性负责，并承担由于甲方过错产生的任何问题的责任。合同6.2.5条约定：乙方应保证甲方原始数据完整性，并承诺保留相应备份数据，保证甲方数据能够完整的导入新系统，并正常运行。否则乙方承担由此造成的损失。 2017年5月10日，合朝公司与昭隆公司签订《合朝电器K/3Wise项目实施方案》。该实施方案相关内容如下：本次实施主要为合朝公司提供供应链、生产、财务、成本及HR的ERP解决方案及落实。关键业务需求部分显示：目前MI号没有与销售订单环节、采购环节关联，MI号应当在销售环节、采购环节、生产环境都关联，便于后期各环节关联的追溯。基础数据说明：4.9外币设置显示：待客户提供。如有其它外币业务发生，可自行添加。5.2.1采购业务明细流程图显示：采购申请单可以生成采购订单，对质检不合格的产品，可以生成采购退料单以向供应商退货。5.5.2采购订单显示：当采购申请单审核后，采购人员可根据采购申请单生成采购订单。生产部根据审核后的MRP自制计划，生成委外订单。5.5.4BOM资料的维护显示：1)BOM资料由研发部负责维护；2）本次ERP应用，通过生产订单生产的产品，都需要进行BOM数据的整理及维护，其中主要为最终产品的BOM整理方式。BOM构架基本为两层，半成品需要进行出入库作业。5.6.1品质业务明细流程显示：抽样和质检为该业务流程的一部分。不良品处理单是对检验单中需要不良处理的再次判定，所以，来源于检验单的不良品处理单的判定结果，会反写到相应的采购收料单、退货通知单、库存请检单、生产汇报单、工序汇报单中，判定结果会控制后续的流程。合朝公司支付昭隆公司该合同款项360934元。 2017年5月19日，昭隆公司以225620元购买金蝶软件并交付合朝公司。 2017年7月14日，合朝公司（甲方）与昭隆公司（乙方）签订《软件二次开发服务合同》，约定乙方在甲方ERP标准软件产品基础上，进行相关功能的二次开发，金额为30000元。审理中，双方均认可该合同系在《软件最终用户许可及实施服务合同》的基础上针对新增加的功能签订，该补充的新增功能昭隆公司已开发完成。合朝公司支付昭隆公司合同款30000元。 原审审理中双方均确认系统第一次上线失败。2017年9月14日，双方就项目后续实施主计划达成一致意见，约定系统的第二次上线时间为2017年12月1日。 之后的履行过程中，合朝公司就测试账套中发现的问题与昭隆公司进行多次邮件沟通，昭隆公司予以解决。2017年11月28日，昭隆公司变更正式账套。在账套变更之后，合朝公司发现系统出现大量问题，包括数据导入不完整、外币业务缺失、无法下委外订单、系统报错、不良品处理拒收、销售订单号未贯穿、抽样标准质检方案未审核生效、BOM层级只有一级等。合朝公司认为上述问题属于重大瑕疵，故其无法将系统在2017年12月1日正式上线。 2017年12月15日，昭隆公司发邮件给合朝公司，主题为关于合朝电器第三次上线事宜。昭隆公司在邮件中称，因第3次上线，所需要增加的工作量，加上第二次上线已经实际发生的工作量，需追加实施费用18万元。 2017年12月19日，合朝公司发邮件给昭隆公司，逐一指出系统存在的问题。次日，昭隆公司邬建荣对该邮件及其附件进行了逐一回复。该邮件具体内容为：合朝公司提出：我司在2017年12月4日系统上线前做公司内部的最终验证审核时,发现系统仍然存在以下主要问题：1.贵司实施人员设置的正式账套中,与我司提交的价格文档相比,缺少采购价格的物料达200多条。昭隆公司回复：采购价格方因贵方在我方实施人员备份账套与恢复账套操作之间的时间内录入价格，且未及时反馈而导致丢失，发现后已指导补充完毕，没有影响上线。合朝公司提出：2.贵司实施人员导入的期初外购入库单,缺少的金额达1700多万元。昭隆公司回复：期初外购入库单由于提供的资料中存在外币(应该要换算为本币)，导致导入的此部分单据的金额有差错，且第二天根据最终用户提供的修正的数据已全部处理完成，没有影响上线；合朝公司提出：3.在准备上线前,贵司对正式账套的更换造成委外物料属性错误，MRP运行结果缺少委外订单和委外BOM下的材料订单，导致新系统成本与实际成本相差20%。昭隆公司回复：此问题属于物料里面的参数设置问题,因为需要满足贵方委外业务灵活变动的需求故指导贵方进行相关设置，在上线前的测试中已指导如何设置相关参数，且在贵方向贵方相关领导汇报演示出现此问题时已现场指导其改正。没有影响上线。合朝公司提出：4.在启动审批流和进入采购订单时,系统不断报错。昭隆公司回复：此类错误第一次上线已明确，属于系统环境问题，且不影响业务流程继续处理，不影响上线。已作为BUG向厂商提交反馈。合朝公司提出：5.销售订单号未能贯穿所有单据，在委外加工入库单和退料通知单中,销售订单号设置不完整或取值错误。昭隆公司回复：此设置问题我方从上线开始已在正式账套进行设置，没有影响上线。其他问题详见附件。合朝公司提出：以上错误最终导致新系统未能通过内部审核，公司迫不得已决定再次推迟上线时间，需要继续完善系统。昭隆公司回复：以上均不是影响上线的关键、主要因素。我方认为影响上线的核心因素是：1.所谓内部审核，至今我们仍不知道所谓内部审核的内容和标准是什么？即使有，也应该是上线前经双方讨论、确定，在实施计划中要列入、而不是在已经进行了大部分的上线初始化工作后,及正式上线的关键节点上突然进行所谓内部审核，而影响正式上线。2.12月4日所谓内部审核后所反馈的问题,我方及时在当天或次日内处理完成并回复,但贵方并没有继续推进上线，而是以所谓内部审核没通过通知我方上线失败。我方判断，根据已完成的工作，和已经及时处理反馈的问题的完成，完全可以正常继续推进上线，进入日常应用阶段，却被通知戛然而止，我方表示很意外和遗憾！合朝公司提出：为保证基础数据的准确性、我司组织相关人员全力进行了配合，员工们牺牲了自己的休息时间，仅11月份周末加班就高达1280小时。由于贵司原因导致我司ERP系统上线一再延期，不仅使我司大量人力、财力、精力的投入白白地损耗，且对我司业务产生严重不良影响。昭隆公司回复：综合上述回复内容，这个结论我方完全不接受。合朝公司提出希望昭隆公司尽快安排有资质的实施顾问配合系统完善,以免延误重新上线时间。昭隆公司回复：非我方的主要因素,而再次推迟上线,要求我方在原合同范围内继续第三次上线指导,昭隆公司完全不接受，昭隆公司意见已在12月15日给您的邮件中已提及。 2017年12月28日，合朝公司委托恒泰律师事务所发《律师函》给昭隆公司，称：1.贵司在收到本函之日，立即就软件第三次上线事宜与合朝电器积极沟通；2.贵司最晚应于2018年1月10日完成软件第三次上线实施计划,并对上线质量予以保证；3.若贵司逾期仍未完成上述要求的,合朝电器将依法追究贵司的违约责任。 2018年1月3日，昭隆公司回函称：按双方约定的在第二次重新上线的实施主计划，在初始化数据准备过程中，由于采购价格数据因贵司在我司实施人员备份账套与恢复账套操作之间的时间内录入价格，且未及时反馈而导致丢失，发现后在我司实施人员指导下，贵司工作人员及时补充提交了数据资料，并由我司实施人员及时重新导入系统，且经贵司工作人员检查确认完毕，没有影响上线进度。此外,为满足贵司委外业务灵活变动的需要,我司实施人员指导了贵司工作人员对系统物料的参数设置，贵方工作人员也完成了设置,在贵司工作人员向贵司相关领导汇报演示时发现的设置错误问题,在我司及时指导下贵司及时改正完成,未影响上线进度。昭隆公司还提出合朝公司为数据承担责任，并追加相应工作量的费用18万元，要求合朝公司于1月12日前答复，在协商一致后，商讨第三次上线计划。 2018年1月20日，合朝公司向昭隆公司寄发《合同解除函》，通知昭隆公司解除涉案合同。合朝公司认为在其再三给予昭隆公司宽限时间后，昭隆公司所交付软件产品仍不符合要求。鉴于合朝公司为配合昭隆公司完成ERP软件已倾注大量人力，故再次宽限昭隆公司最晚于2018年1月10日完成软件第三次上线实施计划。昭隆公司不但未对软件上线开展任何实质工作，甚至无视双方所签署合同中固定单价的约定，单方无理加价。合朝公司遂提出解除合同，并要求收到合同解除函10日内，将合朝公司所支付费用全部退回，共计390934元。昭隆公司在回函中认可2018年1月29日收到该份合同解除函。 原审庭审中，原审法院组织技术调查官及双方当事人对涉案软件系统进行现场勘验。经勘验，系统的采购价格数据存在缺失，系统中供应商BZ.01001的名称和合朝公司提供给昭隆公司的供应商名称不一致；系统不支持外币导入；系统在处理采购申请单生成采购订单时，会弹窗报错：定义的应用程序或对象错误；系统在处理收料通知/请检单生成退料通知单时会弹窗报错：数据读取错误，列名FHeadSelff0341无效。委外加工入库单里的销售订单号无法自动调取订单号，需要手工输入；系统的抽样标准和质检方案页面中所列的记录均未审核通过；BOM的层级只有一级。此外，双方确认委外订单设置错误问题在2017年12月5日已解决，但合朝公司认为，该问题昭隆公司应于上线前解决。 原审法院认为：本案主要的争议焦点是涉案《软件最终用户许可及实施服务合同》和《软件二次开发服务合同》是否应予解除以及双方各自主张的赔偿数额是否具有法律依据。 关于第一个争议焦点，原审法院认为，根据《中华人民共和国合同法》（以下简称合同法）第九十四条第四款规定，当事人一方迟延履行债务或者有其他违约行为致使不能实现合同目的可以解除合同。本案中，根据合朝公司提供的邮件以及原审法院现场勘验的情况，涉案系统存在数据导入不完整、外币业务缺失、系统报错、不良品处理拒收、销售订单号未贯穿、抽样标准质检方案未审核生效、BOM层级只有一级等问题，与涉案项目实施方案的约定不相符合。原审法院认为，供应商名称错误和遗漏、销售订单号未贯穿、BOM产品结构不完整、外币业务缺失、系统报错等上述问题均可能直接影响合朝公司的生产经营，在系统存在上述多处重大瑕疵的情况下合朝公司推迟上线时间具有合理理由。昭隆公司认为上述问题并非重大瑕疵，是可以进行修补的，不影响第二次上线的意见缺乏事实依据，原审法院不予采信。在此情况下，昭隆公司本应对上述问题进行解决，提供符合合同约定的开发成果帮助系统上线，而昭隆公司明确拒绝继续履行合同并要求加价18万元，昭隆公司的上述加价行为无正当理由及法律依据，其行为构成违约，导致涉案合同的目的无法实现。此外，本案涉及《软件最终用户许可及实施服务合同》和《软件二次开发服务合同》两个合同，虽然双方对于《软件二次开发服务合同》的履行无争议，但由于该合同系在《软件最终用户许可及实施服务合同》的基础上签订，其合同目的与《软件最终用户许可及实施服务合同》的合同目的一致，故原审法院认为，由于涉案软件未能上线运营，《软件二次开发服务合同》亦无法实现相应的合同目的，故也应当予以解除。故原审法院认为合朝公司有权解除合同，其发出的合同解除函具有法律效力，涉案两合同于该解除通知到达昭隆公司之日即2018年1月29日解除。 关于第二个争议焦点，原审法院认为，根据合同法第九十七条规定，合同解除后，尚未履行的，终止履行；已经履行的，根据履行情况和合同性质，当事人可以要求恢复原状、采取其他补救措施，并有权要求赔偿损失。本案合同解除系昭隆公司违约行为所致，故昭隆公司应当赔偿合朝公司因此遭受的损失。合朝公司主张的损失即为合朝公司已经支付的服务费共计390934元，原审法院认为合朝公司的该诉请具有法律依据，原审法院予以支持。昭隆公司主张合朝公司支付剩余的开发服务费并要求合朝公司赔偿损失缺乏事实及法律依据，原审法院不予支持。 据此，原审法院判决：一、昭隆公司与合朝公司之间的《软件最终用户许可及实施服务合同》和《软件二次开发服务合同》于2018年1月29日解除；二、昭隆公司应于判决生效之日起十日内赔偿合朝公司390934元；三、驳回昭隆公司的全部诉讼请求。昭隆公司如果未按判决指定的期间履行给付金钱义务，应当依照《中华人民共和国民事诉讼法》第二百五十三条规定，加倍支付迟延履行期间的债务利息。本诉一审案件受理费人民币3393元，由昭隆公司负担；反诉一审案件受理费人民币3582元，由昭隆公司负担。 二审中，双方当事人均未向本院提交新证据。 昭隆公司提出原审法院查明的以下事实错误：1.“约定系统的第二次上线时间为2017年12月1日”，事实上上线是一个时间段，而并非特定的一天。2.“2017年11月28日，昭隆公司变更正式账套。在账套变更之后，合朝公司发现系统出现大量问题，包括数据导入不完整、外币业务缺失、无法下委外订单、系统报错、不良品处理拒收、销售订单号未贯穿、抽样标准质检方案未审核生效、BOM层级只有一级等”，原审所列举的问题实际上只有一项，即委外订单设置错误，合朝公司在2017年12月4日所发现并告知昭隆公司，该问题已于次日即2017年12月5日解决，其他问题都是在2017年12月13日发送给昭隆公司的邮件中才提出，关于抽样标准质检方案未审核生效和BOM层级只有一级这两个问题是在2019年4月16日，即原审庭审勘验期间才发现。 昭隆公司对上述事实提出的异议，实际涉及原审法院对于合朝公司推迟上线是否具有合理理由，昭隆公司开发的软件是否具备上线条件等问题的认定，本院通过对昭隆公司上诉请求的审理即可回应昭隆公司对事实部分提出的异议。 原审法院查明的其他事实属实，本院予以确认。 本院另查明： 2017年12月13日，合朝公司向昭隆公司发送了12月12日的问题更新，并要求尽快处理。邮件所附的“副本ERP测试问题汇总——update20171212表格”显示，测试时间为2017年12月4日出现2个问题：（1）期初外购入库单金额不正确，提交的与导出的不含税金额不同，要求完成时间为2017年12月5日，进度为未完成；（2）委外订单投放生产错误，要求完成时间为2017年12月5日，进度为已完成，合朝公司回复意见为“物料属性中MRP运行是否产生采购申请勾选取消即可。测试时已修改正确，重新导入物料覆盖了相关属性”；测试时间为2017年12月5日出现1个问题：“供应商对应物料单价缺少很多，提供单价物料400多，账套现有账套单价的物料只有200多”的问题，要求完成日期是2017年12月5日，确认进度为未完成，合朝公司回复意见为“已重新整理单价另行导入”，正在检查确认。 本院另查明，昭隆公司为履行《软件最终用户许可及实施服务合同》《软件二次开发服务合同》而购买并交付给合朝公司的金蝶软件现由合朝公司掌握。双方均认可可以对金蝶软件进行后续功能设置和二次开发。 本院认为，根据《软件最终用户许可及实施服务合同》涉及的主要权利义务内容，该合同为涉及计算机软件的服务合同，由昭隆公司利用其掌握的技术知识，根据合朝公司的实际情况为其提供金蝶软件定制化设置；《软件二次开发服务合同》为计算机软件开发合同，本案为涉及计算机软件的开发和服务合同纠纷。本案二审期间的争议焦点有二：（一）合朝公司是否有权解除《软件最终用户许可及实施服务合同》《软件二次开发服务合同》；（二）如果合同解除，昭隆公司是否应退还全部已付款项。 （一）合朝公司是否有权解除《软件最终用户许可及实施服务合同》《软件二次开发服务合同》 昭隆公司上诉称，原审法院认定涉案系统存在的问题错误，昭隆公司据此要求中止第二次上线没有依据；由于合朝公司单方中止第二次上线，第三次上线增加了工作量，昭隆公司根据增加的工作量要求合朝公司支付价款不构成违约。 本院认为，关于昭隆公司是否有权就第三次上线增加的工作量向合朝公司主张增加合同价款的问题，实际涉及第三次上线是否属于合同约定的义务，以及合朝公司中止第二次上线是否有正当理由两个问题。 第一，第三次上线是否属于合同约定义务这一问题，涉及合同内容的解释。合同法第一百二十五条第一款规定：“当事人对合同条款的理解有争议的，应当按照合同所使用的词句、合同的有关条款、合同的目的、交易习惯以及诚实信用原则，确定该条款的真实意思。”在涉及计算机软件的技术合同的履行中，当事人对于是否属于合同约定的义务发生争议的，应考虑计算机软件是由各功能集合而成的系统这一特点，对合同义务的解释应着重结合合同上下文其他相关条款、当事人的合同目的进行整体解释、目的解释。本案中，合朝公司签订涉案合同的目的在于取得功能完备、能够上线运行的软件，昭隆公司作为开发方和服务提供方，完成上线是合同的主要义务之一，而不能对上线的次数进行区分和限制。无论是第几次上线，都属于合同下受托方应履行的主要合同义务。在第二次上线没有完成的情况下，进行第三次上线是昭隆公司依据合同当然负有的合同义务。 第二，在双方约定的第二次上线之前，合朝公司以系统存在重大瑕疵为由中止了上线。《软件最终用户许可及实施服务合同》第6.2.5条约定，昭隆公司应保证合朝公司原始数据完整性，并承诺保留相应备份数据，保证合朝公司数据能够完整的导入新系统，并正常运行。《合朝电器K/3Wise项目实施方案》约定，昭隆公司所提供的实施服务主要是为合朝公司提供供应链、生产、财务、成本及HR的ERP解决方案及落实。在该实施方案中的基础数据说明部分明确了外币设置显示、采购订单生成、采购退料单生成、BOM架构为两层等具体需求。但是，根据双方的往来邮件以及原审法院勘验情况，涉案系统存在数据导入不完整、外币业务缺失、系统报错、不良品处理拒收、销售订单号未贯穿、抽样标准质检方案未审核生效、BOM层级只有一级等问题，与上述合同约定及实施方案的要求不相符。因此，合朝公司在涉案系统无法完成实施方案基本要求的情况下，中止第二次上线时间具有合理理由。 昭隆公司提出，上线是一个过程，若如期进行第二次上线，可以在第二次上线时间段内发现并解决；且多数问题是合朝公司在第二次上线中止后，甚至在原审勘验期间才发现，不构成中止第二次上线的合理理由。本院认为，在涉及计算机软件的开发、服务合同履行过程中，软件设置、开发完成后，需要进行进一步调整、完善是软件行业的常见现象，委托方不得以软件存在瑕疵拒绝验收或拒绝上线，但影响软件基本功能实现的除外。本案中，从原审法院勘验的情况看，昭隆公司提交的软件存在的问题并非是软件瑕疵，而是软件主体功能存在问题，其主张在第二次上线期间应可以解决不能成立。虽然系统的一些问题是在原审法院勘验期间才得以发现，但是否具备上线条件是一个客观事实，并不以合朝公司事先发现为条件。 完成系统上线是昭隆公司应负的合同义务，在交付的成果存在问题无法进行第二次上线的情况下，昭隆公司理应积极解决问题并与合朝公司沟通再次上线事宜以完成其合同义务，但是昭隆公司以第三次上线增加其工作量为由提出加价，属于无正当理由拒绝履行义务。由此导致合朝公司合同目的无法实现，合朝公司有权解除合同。合朝公司向昭隆公司发出合同解除函，能够发生解除合同的效力，原审法院认定涉案两合同于该解除通知到达昭隆公司之日，即2018年1月29日解除于法有据，本院予以维持。因《软件二次开发服务合同》系在《软件最终用户许可及实施服务合同》的基础上签订，原审法院认定上述两合同均应解除，并无不当，本院予以维持。 （二）如果合同解除，昭隆公司是否应退还全部已付款项 昭隆公司上诉主张，其为履行合同为合朝公司购置金蝶软件并进行了定制化开发设计，即使合同解除，也应由合朝公司退回或赔偿昭隆公司购买金蝶软件的成本。 本院认为，合同法第九十七条规定：“合同解除后，尚未履行的，终止履行；已经履行的，根据履行情况和合同性质，当事人可以要求恢复原状、采取其他补救措施，并有权要求赔偿损失。”因昭隆公司未能完成合同义务，亦未能积极解决涉案系统存在的问题，致使涉案《软件最终用户许可及实施服务合同》《软件二次开发服务合同》解除，合朝公司有权要求昭隆公司赔偿损失。 关于合朝公司的损失，其向昭隆公司共支付了390934元，其中包含的服务费、开发费是因昭隆公司违约遭受的损失；其中包含的金蝶ERP软件的购置费用，由于昭隆公司已经向合朝公司交付软件，本院考虑金蝶软件的用途、目前由合朝公司掌握的现状，以及仍可以进行配置、二次开发等因素，确定软件对应的价款不属于合朝公司遭受的损失。此外，由于昭隆公司的违约行为，本应于2017年10月上线的系统至今未能上线，合朝公司虽然已经实际掌握金蝶软件，但未能如期上线、投入使用，因此遭受了一定的损失，对于该部分损失数额，本院综合昭隆公司的过错等因素酌情确定为12万元。据此，昭隆公司应赔偿合朝公司共计285314元。原审法院确定合朝公司因违约遭受的损失有误，本院予以纠正。 综上所述，昭隆公司的上诉请求部分成立，本院对该部分予以支持。依照《中华人民共和国合同法》第九十七条、第一百二十五条第一款，《中华人民共和国民事诉讼法》第一百七十条第一款第二项规定，判决如下： 一、维持上海知识产权法院（2018）沪73民初265号民事判决第一、三项； 二、变更上海知识产权法院（2018）沪73民初265号民事判决第二项为：上海昭隆软件科技有限公司于本判决生效之日起十日内赔偿合朝电器（上海）有限公司285314元； 三、驳回上海昭隆软件科技有限公司的其他上诉请求。 如果上海昭隆软件科技有限公司未按本判决所指定的期间履行给付金钱义务，则应依据《中华人民共和国民事诉讼法》第二百五十三条之规定，加倍支付延迟履行期间的债务利息。 一审本诉案件受理费3393元，由上海昭隆软件科技有限公司负担；一审反诉案件受理费3582元，由合朝电器（上海）有限公司负担582元，由上海昭隆软件科技有限公司负担3000元。二审案件受理费7164元，由上海昭隆软件科技有限公司负担6000元，由合朝电器（上海）有限公司负担1164元。 本判决为终审判决。 审判长  徐卓斌 审判员  雷艳珍 审判员  邓 卓 二〇二〇年八月二十日 法官助理徐晨 书记员王文婷 裁判要点                            案  号                       （2020）最高法知民终64号                               案  由                       计算机软件开发合同纠纷                               合 议 庭                       审判长：徐卓斌             审判员：雷艳珍、邓卓                                                     法官助理：徐 晨                       书记员：王文婷                               裁判日期                       2020年8月20日                               关 键 词                       合同解释；合同解除                               当 事 人                       被上诉人（原审被告、反诉原告）：合朝电器（上海）有限公司。             上诉人（原审原告、反诉被告）：上海昭隆软件科技有限公司。                               裁判结果                       一、维持上海知识产权法院（2018）沪73民初265号民事判决第一、三项；             二、变更上海知识产权法院（2018）沪73民初265号民事判决第二项为：上海昭隆软件科技有限公司于本判决生效之日起十日内赔偿合朝电器（上海）有限公司285314元；             三、驳回上海昭隆软件科技有限公司的其他上诉请求。             原判主文：一、昭隆公司与合朝公司之间的《软件最终用户许可及实施服务合同》和《软件二次开发服务合同》于2018年1月29日解除；二、昭隆公司应于判决生效之日起十日内赔偿合朝公司390,934元；三、驳回昭隆公司的全部诉讼请求。                               相关法条                       《中华人民共和国合同法》第九十七条、第一百二十五条第一款；             《中华人民共和国民事诉讼法》第一百七十条第一款第二项。                               法律问题                       1.计算机软件开发合同的合同条款解释规则             2.合同解除的条件认定                               裁判观点                       1.在涉及计算机软件的技术合同的履行中，当事人对于是否属于合同约定的义务发生争议的，应考虑计算机软件是由各功能集合而成的系统这一特点，对合同义务的解释应着重结合合同上下文其他相关条款、当事人的合同目的进行整体解释、目的解释。委托方签订涉案合同的目的在于取得功能完备、能够上线运行的软件，开发、服务提供方，完成上线是合同的主要义务之一，而不能对上线的次数进行区分和限制。无论是第几次上线，都属于合同下受托方应履行的主要合同义务。在第二次上线没有完成的情况下，进行第三次上线是开发方依据合同当然负有的合同义务。             2. 在涉及计算机软件的开发和技术服务合同中，开发方和服务提供方向委托方提供外购基础软件，在此基础上进行功能配置和二次开放，关于软件的购置费用，由于已向委托方交付软件，考虑软件的用途、由委托方掌握的现状，以及仍可以进行配置、二次开发等因素，软件对应的价款应不属于委托方遭受的损失。             3.合同解除后，尚未履行的，终止履行；已经履行的，根据履行情况和合同性质，当事人可以要求恢复原状、采取其他补救措施，并有权要求赔偿损失。                               注：本摘要并非判决书之组成部分，不具有法律效力。