技术合同案例:开发微信小程序引争议,法院根据合同履行情况酌情支持一方诉请

案由:技术合同纠纷

原告a公司向法院提出诉讼,请求被告向原告支付合同款190000元,并支付违约金75000元;被告承担原告为实现合同债权所支付的律师费用20000元、保全担保费570元。

被告b公司提起反诉,请求反诉被告构成合同违约,返还已收取的60000元合同款,并立即解除《小程序+H5开发合同》;反诉发生的诉讼费、律师费16000等费用由被反诉人承担。

法院认为:a公司与b公司签订的《小程序+H5开发合同》是双方真实意思表示,合法有效。根据双方诉辩主张,本案争议焦点为:一、a公司在合同履行过程中是否存在根本违约,案涉《小程序+H5开发合同》应否予以解除?二、a公司交付的工作成果是仅限于第一期版本还是两期版本合并开发的结果。三、案涉合同开发费用付款条件是否成就,如已成就,应付款金额如何确定?

关于争议焦点一,反诉原告b公司主张a公司的违约行为包括未按照合同约定指定项目和技术负责人,未向被告提交过合同约定的《实施计划》、周报、工作联系单等书面文件,未针对被告提出的调整意见的具体意见进行修改,无法按期上线测试小程序;上线后发现小程序排版单调、构图粗糙、使用界面逻辑不合理、页面卡顿,后台程序难以适配反诉原告需求,存在的诸多BUG无法修复;未向反诉原告的运维员工提供系统性的操作和维护培训,还拒不交付全套技术资料等。

对此,本院认为逐一评析如下:

1.根据微信群聊记录,a公司法定代表人及技术负责人均在微信群中,且就具体开发问题与b公司持续沟通,b公司主张a公司未指定项目和技术负责人无事实依据。

2.在案证据显示,a公司确未按合同约定向b公司书面提交《实施计划》、周报、工作联系单等文件,但双方一直通过微信群进行持续有效沟通,微信记录亦显示双方还即时召开线下会议研究具体开发问题,b公司亦在微信群中随时提出修改意见,公司也及时予以回应,故b公司对案涉小程序开发的方案、计划、进度及存在的问题均随时掌握,虽无证据显示双方对相关合同条款协商一致变更,但亦未影响合同履行,不影响合同目的实现。故a公司的行为虽属违约行为,但不构成根本违约。

3.关于a公司提交的工作成果是否逾期问题。案涉合同第七条第1款约定,本合同签订正式生效(即2022524日)为项目启动日,并在启动之日起算50个工作日完成开发及安装部署。2022730日,a公司提交“b服务”1.1.3版本并通过腾讯公司审核完成部署上线,应视为工作成果交付,该上线日期符合50个工作日的时限要求,因此并未逾期。

4.关于b公司指称案涉小程序存在排版单调,构图粗糙、使用界面逻辑不合理、页面卡顿、后台程序难以适配开发需求、诸多BUG无法修复等问题,本院认为,依常理,委托开发成果交付后,须经验收合格才会正式上线。而案涉小程序已正式部署上线,在无相反证据的情况下,应认定开发成果符合开发要求。至于上线后存在的各类问题,即便属实,也应属后期维护问题,不能视同a公司的根本违约行为。

5.关于a公司是否提供系统操作及维护培训问题,b公司在《关于小程序全套技术资料的催交函》中已认可a公司提供了培训,故b公司该项违约主张无事实依据。

6.关于全套技术资料移交问题。双方在庭审中均确认“全套技术资料”系指开发源代码。a公司认可未移交源代码,但认为b公司未按约支付开发费用,故有权不移交源代码。本院认为,源代码交付、开发费用支付均属技术开发合同核心条款,案涉合同对源代码交付及开发费用支付并未约定先后履行顺序,a公司按合同约定应当在交付工作成果时交付源代码,但在b公司未按约付款的情况下,其未移交源代码的行为属行使法定抗辩权,并不构成违约。

综上,a公司在履行案涉合同的过程中,虽有违约行为,但并不构成根本违约,b公司要求解除合同并返还已付款项的反诉请求不能成立,本院不予支持。

关于争议焦点二,本院认为,综合原、被告陈述及在案证据,a公司已开发版本属于版本合并开发且未全部完成,理由如下:

1.案涉《小程序+H5开发合同》第三条第2.1款明确约定“开发服务费(V1.0版本费用)”为120000元,且该合同附件一中就V1.0开发内容与V2.0的开发内容进行了明确约定。根据案涉合同附件,物资贸易板块、信息板块为V2.0开发内容。同时,双方在庭审中亦认可已完成开发部分包括部分V2.0版本内容。据此,说明原告主张的V1.0V2.0系不同版本有相关合同依据。

2.双方存在不同版本合并开发合意。根据202266日、613a公司**与占**的微信聊天记录,及202268**在案涉群聊中发送“之前说两期并一期,除深度功能外,其他的都要能用”等信息,能够确认双方项目负责人员确实就V1.0V2.0版本合并开发进行了深入有效沟通。**虽非b公司法定代表人,但该项目一直由其对接负责,并向a公司下达开发要求、提出改进意见等,其意见可代表b公司。从a公司最终交付的工作成果看,确实部署了部分V2.0版本的有关内容。由此可见,a公司与b公司经充分协商,已对原合同开发内容合意变更,并最终增加了V2.0版本的相关开发内容。

3.关于案涉《小程序+H5开发合同》的开发进度。原告主张已完成该合同项下所有开发任务,被告应按总价款250000元结算开发费用。被告则认为原告仅完成第一期的开发且未达到开发要求。本院认为,根据案涉合同附件的“功能模块示意图”,首期开发重点围绕V1.0版本开展,V1.0版本相关功能模块在“功能模块示意图”中也更加具体和明确,相反V2.0版本部门也较简单和概括。从a公司与b公司在履行案涉合同过程中的沟通协商记录看,双方并未就V2.0版本项下功能模块进行深度协商。虽然如上所述双方曾达成不同版本合并开发的合意,但合并开发后的功能需求并不明确。如占**在微信群中就曾表示“之前说两期并一期,除深度功能外,其他的都要能用”,其所说的“深度功能”具体范围无法明确,在案证据也无法证实。庭审中,原告亦认可已开发完成的V2.0项目部分功能未实现,如“b信息”项下“银行产品、资讯”部分。综上,a公司已完成版本超出了V1.0版本范围,但也并未全部完成V2.0版本开发内容。

关于争议焦点三,本院认为,首先,根据微信群聊记录,b公司在案涉小程序正式上线前进行过测试。其次,根据a公司与b公司在拟上线阶段盖章确认的《“b服务”小程序-功能变更/新增确认表》,除表格所列内容外,双方确认其他功能均符合开发要求、功能无误,故除该确认表中列明的变更或新增功能外,其他功能应视为b公司已经认可。再次,案涉小程序已部署上线,b公司已实际使用。综上,本院认为a公司按约完成涉案小程序开发并部署上线,b公司应按约支付开发费用。b公司关于付款条件未成就的抗辩意见不成立,本院不予采纳。

关于应付开发费用的金额,首期开发费用120000元双方并无争议,扣除已付60000元,剩余未付60000b公司应当支付。关于双方协商增加的后续版本功能开发费用,因双方并未确认工作量,本院综合考虑涉案小程序的已完成工作量、小程序的开发质量等因素,对经双方协商增加的后续版本开发费用酌情确定为50000元。据此,本院认定案涉合同开发费用总额为170000元,扣除b公司已支付的60000元,尚应支付a公司开发费用110000元。

因案涉合同开发费用付款条件已成就,b公司未按约付款已构成违约。关于违约责任及维权支出费用的承担。a公司主张b公司应按涉案合同总金额250000元的30%即75000元支付违约金,但该主张并无合同依据,根据案涉合同第四条第7款之约定,逾期付款违约金应按每日合同总金额的1%确定,但依据该约定标准计算违约金明显过高,故本院酌情调整为20000元。

关于a公司维权支出的费用,保全担保费570元符合双方约定,可予支持;律师费的计算标准与本院最终支持的费用金额存在差距,本院酌情调整为10000元。据此,对a公司主张的维权支出20570元,本院酌情支持10570元。

综上,a公司诉请合理部分,本院予以支持。b公司反诉请求不能成立,应当予以驳回。依照《中华人民共和国民法典》第五百零九条第一款、第五百一十条、第五百七十七条、第五百七十九条、第五百八十五条、第五百九十二条,《中华人民共和国民事诉讼法》第六十七条第一款、一百四十三条之规定,判决如下:一、被告(反诉原告)b供应链管理有限公司于本判决生效之日起十日内支付原告(反诉被告)a信息科技有限公司开发费用110000元;二、被告(反诉原告)b供应链管理有限公司于本判决生效之日起十日内支付原告(反诉被告)a信息科技有限公司逾期付款违约金20000元;三、被告(反诉原告)b供应链管理有限公司于本判决生效之日起十日内支付原告(反诉被告)a信息科技有限公司律师费、保全担保费共计10570元;四、驳回原告(反诉被告)a信息科技有限公司的其他诉讼请求;五、驳回被告(反诉原告)b供应链管理有限公司的反诉请求。


相关文章