全文
王某、彭某等计算机软件开发合同纠纷民事二审民事判决书
陕西省高级人民法院
民事判决书
(2022)陕知民终124号
上诉人(原审原告):王某。
被上诉人(原审被告):彭某。
被上诉人(原审被告):杨某。
委托诉讼代理人:彭某,简况同上。
上诉人王某因与被上诉人彭某、杨某计算机软件开发合同纠纷一案,不服陕西省西安市中级人民法院(2021)陕01知民初1377号民事判决,向本院提起上诉。本院于2022年3月22日立案后,依法组成合议庭,公开开庭进行了审理,上诉人王某,被上诉人彭某、被上诉人杨某委托诉讼代理人彭某到庭参加诉讼,本案现已审理终结。
上诉人王某上诉请求:1.撤销(2021)陕01民初1377号民事判决;2.依法确认上诉人王某与被上诉人彭某、杨某于2018年6月27日签订的《闪展云
VR全景展示系统合同》已于2020年3月30日解除;3.依法判决被上诉人彭某、杨某向上诉人王某返还支付的合同价款20000元,迟延交付的违约金5000元,未按约定收取合同价款应支付的违约金5000元,合计30000元;4.依法判决被上诉人彭某、杨某未按约定向上诉人交付VR全景展示系统给上诉人造成的损失26000元;5.本案诉讼费由被上诉人彭某、杨某承担。事实和理由:1.原审法院关于合同条款理解存在错误。一审法院对上诉人王某与被上诉人彭某、杨某于2018年6月27日在《闪展云VR全景展示系统合同》规定合同履行完毕的标准“完成最终测试并上线”理解为“交付并进行了上线测试”存在错误;2.原审法院认定事实不清。被上诉人彭某、杨某开发并交付于上诉人王某的系统错误较多并存在未交付的部分系统,一审法院对上述事实认定存在错误,且对被上诉人未交付的部分不予提及,对上诉人另行甲公司二次开发后的成果认定是被上诉人所为,同样存在事实认定错误。被上诉人在2019年1月13日表示无法履约,上诉人才找第三方继续开发。《闪展云VR全景展示合同》第八条规定:“在淘宝店乐享网购e时代分三笔下单,分三次发货甲方未确认乙方无权发货如若违约按照合同款的百分之二十作为违约金支付给甲方。”被上诉人在完全没有告知上诉人的情况下从淘宝网站发货,第三笔款未到账所以在2018年9月24日退款成功,而代码最后一次核对是在2018年10月18日,从时间节点看,并非双方协商后被上诉人让上诉人寻找第三方完成剩余BUG修复工作并退还上诉人5000元;3.《非经营性互联网信息服务备案管理办法》第五条规定:“在中华人民共和国境内提供非经营性互联网信息服务,应当依法履行备案手续。未经备案,不得在中华人民共和国境内从事非经营性互联网信息服务。”涉案网站下方的备案号粤I某某备13075835号-3并非上诉人备案号,也并非被上诉人备案号,所以从法律角度来说并未上线;4.被上诉人一直在用BUG一词混淆视听,本案被上诉人称《闪展vr全景展示系统功能》功能说明共77条,其中6条甲方服务未兑现,71条由于各种原因无法测试,称为BUG过于牵强;5.合同载明乙方应于8月15日前完成最终测试并上线,上诉人出于人道多次放宽修改时间,在拖延6个月后表示无力完成修改,故在2019年1月12日交接最后代码。上乙公司继续开发,2019年4月完成最终上线并花费26000元;6.莲湖区人民法院所作的(2019)陕0104民初3681号判决因为没有管辖权不发生法律效力;7.违约金不予支持理由不正当,被上诉人已经严重违约,上诉人有权请求被上诉人向某付违约金5000元;8.被上诉人应当向上诉人赔偿经济损失26000元,被上诉人称已经无法履约并不作任何解释,故因被上诉人给上诉人造成的26000元损失按照合同约定应当由被上诉人支付。
被上诉人彭某、杨某共同答辩称:1.上诉人当初只是提供了相应的需求,被上诉人设计人员按照上诉人意思全程设计,被上诉人已提交过相关设计的原始文件;2.被上诉人已经于8月15日前完成了上线测试并提供了相关的测试链接及账户密码,不存在违约责任。由于上线测试后上诉人一直不付款,所以被上诉人在淘宝店铺强制付款;3.上诉人的视频于2022年4月11日录制,且录制视频中上诉人系统未对接互联网基础设施。如系统不能用,就不存在上线后修改。互联网服务器、云存储等相关配套设施有时间限制,上诉人应当在违约后及时录制证据材料,2022年4月11日录制,由于时间过长导致很多功能时间到期,无法使用,故被上诉人不认可上诉人视频的有效性和时效性。2018年11月,丙公司技术员全部解散,导致部分BUG未修复,故最后协商退款5000元;4.上诉人制作新系统未经被上诉人同意也未和被上诉人商量自己找人做的系统,与本案无关。软件系统属于更新迭代行业,上诉人想用25000元做出庞大的全景系统及图片交易系统,系统上线出现BUG是必然的。上诉人之前庭审笔录多次提及基于被上诉人系统二次开发,二审庭审说未使用系统,与之前笔录内容严重不符;5.备案应当由上诉人申某,被上诉人没有责任备案。
王某向一审法院提出诉讼请求:1.依法确认王某与彭某、杨某于2018年6月27日签订的《闪展云VR全景展示系统合同》已于2020年3月30日解除。2.依法判决彭某、杨某向王某返还支付的合同价款20000元,迟延交付的违约金5000元,未按约定收取合同价款应支付的违约金5000元,合计30000元;3.依法判决彭某、杨某未按约定向王某支付VR全景展示系统给王某造成的损失26000元;4.本案诉讼费由彭某、杨某承担。
一审法院认定事实如下:丁某(以下简称丁某)成立于2018年4月25日,彭某担任法定代表人,股东为彭某(持股99.9%)、杨某(持股0.1%)。丁某于2019年1月11日登记注销。戊公司于2018年6月27日签订了《闪展云VR全景展示系统合同》,2018年6月30日再次签订了《闪展云VR全景展示系统合同》(双方称其为附属合同)。己公司开发定制VR全景展示系统软件,约定合同总金额为25000元,分三次支付,签订合同当日支付12500元,在王某服务器测试完成30%支付7500元,开发完成交付后支付5000元。丁某应于2018年8月15日之前完成最终测试并上线,庚公司没有按照日期完成延期一天按照合同总金额的百分之五扣除余款直至扣完,尾款扣完仍未完成,王某有权终止合同,辛公司退回25000元加25000元×20%的违约金。
合同签订后,壬公司付款25000元。彭某于2018年12月19日向王某交付了部分代码,2019年1月12日彭某向王某交付了数据库,系统上线测试后,后续有bug需要修复、交易系统的付款功能没有完成,癸公司,技术人员离职,彭某曾与王某核对彭某交付的系统存在8到9个bug。双方因bug修复问题产生争议,双方协商后彭某让王某寻找第三方完成剩余bug修复工作并退还了王某5000元。子公司进行软件开发,于2019年6月20日补签了《全景功能定制开发合同》,丁某提供的全景系统上进行改动,并于2019年4月正式上线。
2019年4月9日,王某曾将彭某、杨某起诉至西安市莲湖区院,要求彭某、杨某返还王某合同价款20000元,支付违约金4000元,合计24000元。在案件审理过程中,双方均认可2018年8月15日系统已上线,但对合同中“完成最终测试并上线”的理解存在争议,王某认为系统上线后应能正常使用,并非一边上线一边测试,彭某、杨某认为系统上线后才能测试出bug并予以修复。
庭审中,彭某、杨某提交了其拥有著作权的闪展VR全景展示购物系统软件证书、售价及项目代码、网站设计源文件等,证明其完成约定义务,王某承认彭某、杨某交付源代码及数据库,但称因缺少CDN(网上存储加速机制),彭某、杨某开发的网站搭建不起来。
一审法院认为,戊公司签订的《闪展云VR全景展示系统合同》及《闪展云VR全景展示系统合同》,均系双方真实意思表示,不违反法律及行政法规的强制性规定,应为合法有效,双方均应依约履行。本案中,王某称因交付的系统上线后bug太多,故要求解除合同,彭某、杨某称bug数量不多但并未实际完成修复工作且已当庭认可并同意王某解除合同的微信通知,故王某请求案涉合同于2020年3月30日解除的主张,一审法院予以确认。
根据《中华人民共和国合同法》第九十七条的规定,合同解除后,尚未履行的,终止履行;已经履行的,根据履行情况和合同性质,当事人可以要求恢复原状、采取其他补救措施、并有权要求赔偿损失。合同解除之后,双方之间的合同关系进入清算阶段,法院将综合考虑争议合同的性质、合同履行的实际情况、是否具备恢复原状的条件、是否存在其他补充措施的可能性,来判断是否需要恢复原状或者采取其他补救措施,并根据双方在履约过程中的过错程度、违约情况来决定如何进行损害赔偿。就本案而言,综合双方的诉辩意见,王某已自行委托开发人员完成了涉案项目部分功能的软件开发工作,因此,王某的合同目的已实现,本案无需恢复原状,且不具备采取其他补救措施的可能性。根据本案及(2019)陕0104民初3681号案件查明的情况,丁某将其开发的系统交付给王某并进行了上线测试,系统存在bug需要修复属实,但根据软件开发的性质,其功能是一个逐步调整和完善的过程,瑕疵属于运行中售后服务范畴,上线后发现bug并进行修复,符合常理,且彭某、丑公司前与王某进行过协商,并实际向王某退还了5000元,丁某已经履行了交付软件代码及将系统上线运行的主要合同义务情况下,彭某、杨某收取的20000元系其付出的劳动成果,故王某要求彭某、杨某返还该20000元的主张,与事实不符,一审法院不予支持。同理,王某主张迟延交付的违约金、未按约定收取合同价款应支付的违约金以及经济损失的诉请,一审法院不予支持。
综上,根据《中华人民共和国合同法》第六条、第八条、第九十三条、第九十七条,《中华人民共和国民事诉讼法》第六十四条,《最高人民法院关于适用
中华人民共和国民法典时间效力的若干规定》第一条之规定,一审法院判决:一、依法确认王某与彭某、杨某于2018年6月27日签订的《闪展云VR全景展示系统合同》已于2020年3月30日解除;二、驳回王某的其余诉讼请求。
本院二审期间,上诉人提交了新的证据,本院组织进行了举证、质证,综合上诉人二审提交的证据以及原审证据、双方当事人陈某见,本院综合认定以下事实:涉案2019年6月30日签订的《闪展云VR全景展示系统合同》约定,开发完成在乙方(丁某)服务器测试完成支付30%,7500元。按照该合同约定,应在开发完成交付后支付最后5000元,且第二笔款7500元的支付属于强制扣款,最后5000元,是经王某申某并经彭某认可后,退回王某,该款并非从彭某账户退回王某。一审认定在王寅公司付款25000元不当,本院予以纠正。本院二审对于一审认定的其他事实予以确认。
本院认为,本案当事人对涉案合同已于2020年3月30日解除并无异议,双方于2018年6月27日签订的《闪展云VR全景展示系统合同》已于2020年3月30日解除,但合同解除,并不免除一方应当承担的违约责任。本案为计算机软件开发合同纠纷,王某是合同的委托方,丁某受托承担开发涉案系统软件的合同义务,完成开发并交付涉案系统软件,卯公司应当承担的基本合同义务。本案中,辰公司服务器上进行测试,并无异议,但对测试后涉案系统的功能完备性存在争议。彭某、巳公司的股东承认,涉案系统确实存在BUG,但全景云系统已完成开发,而支付系统尚未完成。王某认为系统功能基本无法运行。对涉案系统功能能否正常运行,属于合同义务履行方应当承担的举证责任,彭某、杨某虽然已经证明进行了测试,且王某也已受领了其交付的源代码、数据库,但由于王某在受领后一直存在异议,并未认可其交付的软件符合合同约定,故彭某、杨某仍应证明其履行行为符合合同约定。此外,根据彭某自认事实,所交付的软件支付系统并未完成,并存在BUG,可以确认其给付行为属于不符合约定的给付,应当承担相应的违约责任。关于双方是否协商免除彭某、杨某违约责任,西安市莲湖区人民法院(2020)陕0104民初6606号案2020年9月3日庭审笔录载明,法庭询问:“原告,午公司注销,双方是否协商过系统后续功能由原告好自行想办法完,被告退还原告5000元。”原告回答:“没注销之前,协商过。”法庭询问:“5000元如何退回的。”被告回答:“原告申某2回,被告同意并操作后,5000元退回给原告。”原告表示:“属实”。双方当事人在庭审时的陈述只能证明双方关于5000元的退款是经上诉人申某并经被上诉人同意后退还,但就50未公司的违约责任,并没有在协商后达成一致意见。被上诉人提出,之后由上诉人找寻第三方开发完成涉案系统,但上诉人并没有在找寻第三方解决时,明确放弃对被上诉人主张违约责任的权利。综上,彭某、杨某仍应承担未能最后完成并交付涉案系统的违约责任。
根据双方合同约定,丁某应于2018年8月15日之前完成最终测试并上线,庚公司没有按照日期完成延期一天按照合同总金额的百分之五扣除余款直至扣完,尾款扣完仍未完成,王某有权终止合同,辛公司退回25000元加25000元×20%的违约金。由于2018年8月15日前,申公司测试涉案软件系统,且双方在发生争议后,上诉人并未拒绝受领被上诉人进行测试后交付的成果,而只是对交付的成果提出修改完善意见,故王某在受领成果后,对于已经相应给付的20000元对待给付价款,不应予以退还,但合同约定按照合同总价款的20%计算的违约金5000元,应当由彭某、杨某承担。至于王某主张其委托第三方进行后续开发花费了26000元,但由于被上诉人已经承担5000元的违约金,且也缺乏充分证据证明其该主张,故不另行支持。酉公司是签订合同的当事人,丁某注销后,其股东没有履行注销前的清算责任的,戌公司债务的清偿责任。故按照《最高人民法院关于适用己28公司法若干问题的规定(二)》第二十条第一款规定:“公司解散应当在依法清算完毕后,申某办理注销登记。公司未经清算即办理注销登记,亥公司无法进行清算,甲23公司的股东、乙24公司的董事和控股股东,丙25公司丁26公司债务承担清偿责任的,人民法院应依法予以支持。”之规定,戊27公司已经注销,但彭某、杨某作为股东应当承担赔偿王某5000元违约金的责任。
综上,王某的上诉请求部分成立。根据《中华人民共和国合同法》第六条、第八条、第九十三条、第九十七条、第一百零七条、第一百一十三条,《最高人民法院关于适用中华人民共和国民法典时间效力的若干规定》第一条,《中华人民共和国民事诉讼法》第一百七十七条第一款第(二)项之规定,判决如下:
一、维持陕西省西安市中级人民法院(2021)陕01知民初1377号民事判决第一项;
二、撤销陕西省西安市中级人民法院(2021)陕01知民初1377号民事判决第二项;
三、彭某、杨某于本判决生效之日起十日内向王某支付5000元;
四、驳回王某的其余诉讼请求。
如未按本判决指定的期间履行金钱给付义务,应依照《中华人民共和国民事诉讼法》第二百六十条之规定,加倍支付迟延履行期间的债务利息。
一审案件受理费1200元,由王某负担800元,彭某、杨某负担400元。二审案件受理费1200元,由王某负担800元,彭某、杨某负担400元。
本判决为终审判决。
审 判 长 袁辉根
审 判 员 黄宸瑞
审 判 员 吴 娜
二〇二二年六月二十日
法官助理 卢建莉
书 记 员 李怡然
本案法律依据
中华人民共和国合同法 第107条
中华人民共和国合同法 第113条
中华人民共和国合同法 第6条
中华人民共和国合同法 第8条
中华人民共和国合同法 第93条
中华人民共和国合同法 第97条
己28公司法(2018修正)
中华人民共和国民法典
更多