【裁判要旨】
1.上述内容的履行均需要双方当事人相互配合、共同推进,原审法院在合同有效期届满且炳格公司明确拒绝继续履行并主张解除合同的情况下,认定涉案合同具有不适于强制履行的债务标的应终止履行,并无不当。
2.双方当事人均未严格按约定履行自己的合同义务,面对分歧时未能坦诚沟通、求同存异,未能妥善协商解决矛盾,也未能采取有效措施积极推进合同继续履行,对此双方均存在过错。
【案件基本事实】
2019年4月,炳格公司(甲方)与远昊公司(乙方)就乙方承接甲方“高尔夫订场系统及高尔夫自由行系统项目”的设计及程序签订案涉合同,约定:……二、合作内容。乙方负责完成涉案软件,实施全程服务。产品提交形式:软件代码以光盘形式提交,同时需提交验收文档,包括:测试报告、数据库字典、代码说明、操作手册。三、项目费用和支付方式。费用:在签订合同后的10个工作日内向乙方支付涉案软件的设计及程序开发费用,共计140000元,包括定制设计开发服务费用和增值税(税率3%,普通增值税发票)。支付方式:1.甲方在签订本合同后10个工作日内向乙方支付首期款,付款比例30%,付款日期5月10日,验收日期5月1日,金额42000元。2.乙方按照甲方需求及原型(不含UI)确定后,经甲方确认本项目一期所有需求后10个工作日内,甲方向乙方支付第二期款项,付款比例20%,付款日期为5月20日,验收日期为5月10日,金额28000元。3.乙方按照开发计划(日程前提:6月7日,交付UI),在完成本项目二期计划交付甲方且经甲方整体验收合格后的10个工作日内,甲方向乙方支付第三期款项,付款比例40%,付款日期8月10日,验收日期7月30日,金额56000元。4.后期维护服务(维护服务包括:和非功能性),在上线30工作日后的10个工作日内,经甲方验收合格后,甲方向乙方支付尾款,付款比例10%,付款日期9月10日,验收日期8月30日,金额14000元。以上款项在结算前,乙方提前5个工作日提供等额增值税专用发票至甲方……四、双方责任。甲方责任:1.甲方派专人负责工程项目建设协调工作,并做好经双方协商达成的项目进度表中甲方所必须完成或指定工期内完成的前置性工作。2.乙方提供的软件到现场后,甲方组织验收,并与有关人员一起对乙方提供的产品进行初验。3.负责项目的组织协调、工程监督和质量验收。乙方责任:1.负责系统设备、软件产品的安装和部署功能实现、实施及培训。2.按本合同的项目内容、要求、计划、进度,负责项目实施和完成本项目的设计、部署、调试,确保本项目按质按期交付验收和完工使用……五、计划进度和交验方式。1.乙方应根据本合同规定的进度和要求完成涉案软件,并交付涉案软件给甲方进行审查。2.乙方应在7月10日之前完成涉案软件的设计及开发工作。3.甲方应在接到乙方关于涉案软件书面的初验申请后的2个工作日内指派技术人员或代表与乙方共同进行初验测试(以下简称初验),初验经测试符合要求的,甲方应签署初验合格证书。4.若初验不合格,乙方应立即对涉案软件重新进行调试,直至测试结果符合初验测试标准。5.初验合格后的1个月为“试运行期”(即免费维护期),“试运行期”结束后,甲方在2个工作日内将指派技术人员或代表与乙方共同进行最终验收(以下简称终验),终验测试符合要求的,甲方签署终验合格证书。6.若终验不合格,乙方应负责更正和修改,直至测试结果符合终验测试标准。9.甲方可根据项目的需要,在本合同履行期限内新增加10%项目需求,并对新增需求不另外支付费用。10.乙方将在甲方签署终验合格证书之日起提供6个月的免费质保期,如非甲方原因造成的Bug,在质保期内乙方免费提供修复……12.工程项目的有关文件,源代码、操作指南等,均用中文说明,以文档(文字/图片)和光盘两种形式,在涉案软件交接时,一并移交甲方……七、售后服务与培训。1.甲方签署最终验收合格证书之日起6个月为免费售后服务期……3.合同确认培训对象是甲方指定相关人员、IT技术支持人员。4.培训方式与时间:现场培训与厂商模拟教室培训相结合,培训时间由甲乙双方根据进程友好协商安排组织。5.培训内容:互联网基础知识培训,网站内容管理系统操作培训,以及与项目相关的业务培训。八、违约责任。乙方应在合同所规定的时间内完成和交付本合同规定的项目。如开发工作延时,可经甲方许可设定宽限期,宽限期限内完成项目不追究乙方的违约责任。如乙方在宽限期内仍未依据本合同的规定完成和交付本合同所规定的项目,除依约支付违约金外,甲方有权要求乙方作出补偿和采取补救措施,并继续履行本合同所规定的义务。1.每延期1天,乙方应向甲方支付合同总价1‰的违约金,违约金不超过合同总价的30%。2.如延期时间超过10个工作日,甲方有权终止合同,除前款所约定的违约金外,并要求乙方支付合同总价的5%作为对甲方的赔偿。如甲方由此终止本合同,乙方应在两个星期内返还甲方所支付的所有费用和报酬并依甲方的指示退还或销毁所有的基础性文件和原始资料。3.若乙方所交付的涉案软件出现本合同所指A、B类Bug中的任意一种Bug,甲方有权解除本合同。乙方除承担合同总价格的5%的违约金外,还需全额返还甲方已支付款项,若还不能赔偿甲方损失的,乙方应赔偿甲方因此而遭受的全部损失。4.乙方擅自将本合同项目部分或全部研究开发工作转让第三人承担的,甲方有权终止合同,乙方除应支付本条第三款约定的违约金外,乙方还需双倍返还甲方已支付款项。5.本合同的所有违约,违约金不超过合同的总金额……
涉案合同签订后,双方通过电子邮件、微信群等进行涉案软件的开发沟通。
原审中,远昊公司表示涉案软件的测试标准以其递交0710版测试清单为准,炳格公司则认为应以其递交的炳格标准为准。分别使用远昊标准和炳格标准,对涉案软件测试后,远昊公司认为,根据远昊标准,涉案软件:1.在原型确认后,根据变更、增加后的需求完成度为100%的。2.因需求取消而未完成的,其中WEB端/首页/联系我们、推荐酒店列表,后台端/酒店/酒店一览、运营/推荐酒店设置。3.除上述第1项、第2项外,其余部分已根据远昊标准全部完成,完成度100%。
炳格公司认为,根据炳格标准,涉案软件存在如下16个BUG。炳格公司认为上述1、8、10、13属于C类BUG,BUG2-5、11属于A类BUG,6-7、9、12、14、15、16属于B类BUG。
针对炳格公司陈述的上述16个BUG,远昊公司表示上述BUG1系炳格公司使用不当未对价格进行维护。BUG2、5是aed货币已被删除。BUG3、7系微信支付接口被关闭。BUG4是炳格公司使用不当,应当输入国家和城市名进行搜索。BUG6、9属于程序问题,测试环境部署代码并非最终代码,测试环境存在问题。BUG8属于前面测试数据的遗留。BUG10系炳格公司变更需求所致。BUG11代码中已经包含,可以通过查看代码确认。BUG12英文名称未显示是因为英文名没有编辑。BUG13只有点击当日、当月才可查询数据。BUG14无法确认是否属于BUG。BUG15认可属于BUG,但可优化。BUG16属于需求变更,统一表述形式使中英文7折和30%off表述一致。
原审中,远昊公司表示同意继续履行涉案合同,若炳格公司不同意履行涉案合同,则要求炳格公司支付全款。炳格公司则表示不同意继续履行涉案合同,并要求法院根据实际情况对本案予以处理。
另查明:
涉案合同记载:合同有效期为2019年4月24日至2020年4月23日。炳格公司于2019年5月20日支付了第一笔合同款42000元,8月20支付了第二笔合同款28000元。
2019年3月6日,远昊公司发送给炳格公司的“高尔夫项目-报价V1.0”记载:PM(管理)单价为2500元,数量为8,合计20000元;SE(设计)单价为2000元,数量为8,合计16000元;PG(开发)单价为1500元,数量为72.5,合计108750元;TEST(测试)单价为1200元,数量0,合计0。总价款为144750元。其中,与酒店功能有关的工作量记载如下:酒店预定首页,PG:2;酒店详情,PG:2;酒店预定,PG:2;酒店广告位设定,PG:0.5等。二审中,远昊公司陈述该报价单中“单价”是开发人员的每天工作量对价,“数量”是预计开发的天数,并表示可以以该报价单作为涉案软件实际开发工作量的参考。
关于开发成果的交付与验收,远昊公司陈述其先后交付了软件的后台、前端和球场端三个部分,于2019年9月8日将程序安装在炳格公司提供的阿里云服务器上,向炳格公司发送了相关的账户和密码,并通过微信交付了操作手册。11月4日,其只是关闭了部署在该服务器上的涉案软件的相关功能,而并没有删除该软件。炳格公司则认为,远昊公司开发的软件未通过验收,其也没有签署相关的初验合格证书。
【原告诉讼请求】
远昊公司一审诉讼请求:判令炳格公司向远昊公司支付技术开发费70000元。
炳格公司反诉请求:1.确认炳格公司与远昊公司之间签订的涉案合同已于2019年11月10日解除;2.判令远昊公司向炳格公司返还合同款70000元;3.判令远昊公司向炳格公司支付违约金7000元。
【法院裁判】
一审法院作出(2020)沪73知民初19号民事判决:一、原告(反诉被告)远昊公司与被告(反诉原告)炳格公司之间的《高尔夫订场及高尔夫自由行WEB系统项目合同》终止履行;二、驳回原告远昊公司的本诉请求;三、驳回反诉原告炳格公司的反诉请求。
二审法院作出(2022)最高法知民终586号民事判决:驳回上诉,维持原判。
【争议焦点评析】
一、涉案合同是否应当终止履行
1.合同终止履行的相关规定
《最高人民法院关于适用<中华人民共和国民法典>时间效力的若干规定》第十一条规定,民法典施行前成立的合同,当事人一方不履行非金钱债务或者履行非金钱债务不符合约定,对方可以请求履行,但是有民法典第五百八十条第一款第一项、第二项、第三项除外情形之一,致使不能实现合同目的,当事人请求终止合同权利义务关系的,适用民法典第五百八十条第二款的规定。
民法典第五百八十条规定,当事人一方不履行非金钱债务或者履行非金钱债务不符合约定的,对方可以请求履行,但是有下列情形之一的除外:(一)法律上或者事实上不能履行;(二)债务的标的不适于强制履行或者履行费用过高;(三)债权人在合理期限内未请求履行。有前款规定的除外情形之一,致使不能实现合同目的的,人民法院或者仲裁机构可以根据当事人的请求终止合同权利义务关系,但是不影响违约责任的承担。
2.案涉合同是否应终止履行
本案中,涉案合同有效期为2019年4月24日至2020年4月23日,根据约定涉案合同有效期已届满。而且,涉案合同类型为计算机软件开发合同,作为开发方的主要义务是根据合同约定在一定期限内开发完成并向委托方交付符合要求的开发成果,该合同义务属非金钱债务。
根据已查明事实,远昊公司交付的软件尚有酒店部分功能未开发,虽然远昊公司称该部分未完成系炳格公司的原因,并主张除去该部分开发内容,而炳格公司却要求远昊公司按合同约定将该部分完成。可见,双方并未就酒店部分功能开发与否达成一致意见。除此之外,软件测试完善、BUG修复、售后服务与人员培训等工作亦未完全履行完毕,上述内容的履行均需要双方当事人相互配合、共同推进,原审法院在合同有效期届满且炳格公司明确拒绝继续履行并主张解除合同的情况下,认定涉案合同具有不适于强制履行的债务标的应终止履行,并无不当,最高院予以确认。
二、涉案合同终止履行的后果
1.合同终止履行后果承担规则
合同终止后,尚未履行的,终止履行;已经履行的,根据履行情况和合同性质,当事人可以要求恢复原状、采取其他补救措施,并有权要求赔偿损失。本案中,远昊公司认为其已按约定交付了合格的开发成果,不存在违约行为,要求炳格公司支付全部开发款项,故本案中确定涉案合同终止履行的后果,应当审查远昊公司履行合同的情况及双方当事人是否存在违约行为。
2.合同未履行部分后果承担
根据涉案合同关于付款方式的约定,与第四期14000元合同款对应的是“后期维护服务”,其中主要包括了质保和培训两部分内容。关于质保涉案合同约定,“甲方签署最终验收合格证书之日起6个月为免费售后服务期……”“如非甲方原因造成的Bug,在质保期内乙方免费提供修复。”关于培训涉案合同约定,“培训方式与时间:现场培训与厂商模拟教室培训相结合,培训时间由甲乙双方根据进程友好协商安排组织。”“培训内容:互联网基础知识培训,网站内容管理系统操作培训,以及与项目相关的业务培训。”本案中,涉案合同履行尚未进入后期维护与服务阶段,在涉案合同终止履行后,尚未履行的终止履行,远昊公司无需再向炳格公司提供涉案软件的后期维护和培训服务,炳格公司也无需支付第四期14000元合同款。
3.关于涉案软件酒店部分功能未开发问题
关于涉案软件酒店部分功能,包括WEB端/首页/联系我们、推荐酒店列表,后台端/酒店/酒店一览、运营/推荐酒店设置等未开发完成。根据2019年11月3日的邮件内容,远昊公司认为该部分内容不属于本次开发工作的范畴,并主张就该部分工作量差额,可以在原合同款上进行结算。至于该部分工作量对应的合同价款,远昊公司提交的“高尔夫项目-报价V1.0”相关内容可以在一定程度上作为参考依据。其中,关于酒店部分PG(开发)的数量超过6.5,在合同终止履行的情况下,涉案软件酒店部分功能对应的开发费应从140000元的合同款中予以扣除。
4.关于已开发部分是否符合合同约定及相应的责任承担
涉案合同约定“乙方提供的软件到现场后,甲方组织验收,并与有关人员一起对乙方提供的产品进行初验”,还约定“甲方应在接到乙方关于涉案软件书面的初验申请后的2个工作日内指派技术人员或代表与乙方共同进行初验测试(以下简称初验),初验经测试符合要求的,甲方应签署初验合格证书。”在涉案合同履行过程中,炳格公司对涉案软件进行测试后,通过电子邮件、微信向远昊公司提出了包括“……测试出来的BUG,附件中的15个地方还需要你修改下”“编辑数据上传完成后没有数据”“页面跳转的位置不正确”等问题,远昊公司也是通过电子邮件或微信对上述问题进行回复。在案证据表明,远昊公司并未向炳格公司提出书面的初验申请,而炳格公司亦没有指派人员与远昊公司共同进行软件测试。远昊公司、炳格公司未按合同约定由相关人员在一起对测试环境、网络设置、测试标准共同进行确认,以至于直至本案诉讼期间,双方就“初验”“终验”的具体方式以及涉案软件的测试标准均未达成一致意见,也导致就涉案软件“网页崩溃”“后台数据不能保存”等是属于网络问题还是软件质量问题,双方当事人各执一词。可见,在合同履行的过程中,远昊公司、炳格公司都没有严格按合同约定履行自己的义务,致使双方就软件质量是否符合验收标准无法达成一致意见,并由此产生嫌隙,影响了合作的信任基础。也正是因为远昊公司、炳格公司对软件开发的完成度以及软件质量存在不同认识,造成双方就合同款支付条件达成与否产生分歧。远昊公司认为其已交付了符合约定的开发成果,合同约定的第三期付款条件已经成就;炳格公司则认为涉案软件尚存在诸多问题,故未同意远昊公司的付款要求。远昊公司在多次向炳格公司催要合同款无果的情况下,将部署在正式服务器上的软件关闭,由此双方矛盾激化,最终致使合作关系破裂。
综上,双方当事人均未严格按约定履行自己的合同义务,面对分歧时未能坦诚沟通、求同存异,未能妥善协商解决矛盾,也未能采取有效措施积极推进合同继续履行,对此双方均存在过错。
基于以上分析,原审法院综合考虑涉案合同的实际履行情况、涉案软件的完成程度、双方就涉案软件的开发投入、双方当事人的过错程度等因素,酌情认定在炳格公司已经支付70000元合同款的情况下无需再支付其他费用,并无明显不当,最高院予以确认。