上海知识产权法院民 事 判 决 书（2018）沪73民初687号原告(反诉被告)：上海创软信息科技有限公司，住所地上海市闵行区。法定代表人：季禾，执行董事。委托诉讼代理人：孙兆祥，上海市锦天城律师事务所律师。被告(反诉原告)：上海商桥供应链服务有限公司，住所地上海市青浦区。法定代表人：陈磊，董事兼总经理。委托诉讼代理人：罗新宇，上海先诚律师事务所律师。委托诉讼代理人：桑成露，上海先诚律师事务所律师。原告上海创软信息科技有限公司(以下简称创软公司)与被告上海商桥供应链服务有限公司(以下简称商桥公司)计算机软件开发合同纠纷一案，本院立案后，依法适用普通程序进行审理。2018年9月17日，本院组织当事人进行了第一次庭前会议。同年10月12日，本院依法受理被告商桥公司的反诉，并与本诉合并审理。2019年1月14日、4月18日，本院再次组织当事人进行了庭前会议和涉案开发成果的演示。同年6月25日，本院公开开庭审理了本案，原告(反诉被告)创软公司的委托诉讼代理人孙兆祥，被告(反诉原告)商桥公司的委托诉讼代理人桑成露到庭参加诉讼。审理中，当事人在本院主持下调解未果。本案现已审理终结。原告(反诉被告)创软公司向本院提出本诉诉讼请求：1.判令创软公司与商桥公司于2018年1月19日签订的《商桥公交货巴运营系统项目开发合同》自2018年7月2日解除；2.判令商桥公司向创软公司支付拖欠的合同款人民币375,000元(以下币种均为人民币，其中一期费用为300,000元；二期费用按照50%的进度计算，为75,000元)；3.判令商桥公司向创软公司支付延期付款的违约金(以合同金额750,000元为基数，按日万分之五计算即每日375元，从2018年5月29日计算至实际履行之日止)；4.判令本案诉讼费用由商桥公司承担。事实和理由：2018年1月19日，创软公司与商桥公司签订了《商桥公交货巴运营系统项目开发合同》(以下简称涉案合同)，约定创软公司为商桥公司提供公交货巴系统开发服务，合同总价款为750,000元，签约时支付225,000元，一期阶段验收时支付300,000元，二期阶段验收时支付150,000元，质保期满时支付75,000元。同年5月28日，商桥公司对创软公司提供的公交货巴运营系统一期项目进行了验收，并且向创软公司出具了项目验收单，商桥公司确认创软公司已经按照合同约定的内容实施了开发。在合同约定的付款期内，创软公司多次通知商桥公司付款，商桥公司迟迟不予支付。且在合同履行过程中，商桥公司未按约履行协助义务，在没有通知创软公司的情况下，单方面关闭了服务器。创软公司认为，商桥公司的上述行为属于严重的违约行为，根据涉案合同第10.3条的相关约定，创软公司有权解除合同，故于同年7月2日向商桥公司发函要求解除合同，并要求商桥公司支付一期项目费用300,000元、二期项目已开发部分的费用75,000元(二期项目费用为150,000元，按已完成50%的进度计算)以及违约金，但商桥公司至今仍拖欠上述费用。因此，创软公司诉至本院，请求支持其上述诉讼请求。被告(反诉原告)商桥公司针对本诉辩称：1.创软公司在合同履行过程中迟延交付一期项目开发成果，且交付的成果不符合涉案合同第10.2条的约定，根本达不到实际使用的目的，故并非商桥公司存在违约行为，而是创软公司存在严重违约行为，不同意再向创软公司支付任何费用。2.由于创软公司存在上述违约行为，商桥公司根据涉案合同第10.2条约定亦于2018年7月2日向创软公司发函要求解除合同，故商桥公司同意涉案合同于该日解除，但对于违约责任及合同解除的后果由法院判定。综上，商桥公司请求法院驳回创软公司除第一项诉讼请求之外的其余本诉诉讼请求。被告(反诉原告)商桥公司向本院提出反诉诉讼请求：1.判令创软公司返还商桥公司已支付的合同款项225,000元的50%，即112,500元；2.判令创软公司承担本案全部诉讼费用。事实和理由：涉案合同签订后，商桥公司已经向创软公司支付了首期开发费用225,000元，但在合同履行过程中，创软公司存在迟延履行合同义务和交付的一期项目开发成果根本无法使用的违约行为，故商桥公司向创软公司发函要求解除涉案合同。合同解除后，商桥公司有权撤回所有服务，并要求创软公司返还已收取的全部费用，但考虑到创软公司在合同履行过程中实际有一定的投入，故要求创软公司返还50%的费用。因此，商桥公司提起反诉，请求本院支持其上述反诉诉讼请求。原告(反诉被告)创软公司针对反诉辩称：创软公司已经按照合同约定履行了开发义务，并将一期项目开发成果交付给商桥公司，交付的开发成果能够正常使用，故创软公司不同意商桥公司的反诉诉讼请求。本案审理中，当事人围绕本诉和反诉诉讼请求依法提交了证据，本院组织当事人进行了证据交换和质证。其中，双方当事人均向本院提交的涉案合同，创软公司向本院提交的《项目验收单》、律师函和快递单及快递查询信息、上海增值税专用发票(三张)及签收单、双方相关人员之间的往来电子邮件、微信聊天记录、双方往来函件，商桥公司向本院提交的双方相关人员之间的微信聊天记录，系当事人对真实性、合法性均无异议的证据，且与本案具有关联性，故本院予以确认并在卷佐证。此外，创软公司还向本院提交了以下证据：1.《商桥公交货巴运营系统项目开发服务工作说明书》(以下简称项目工作说明书)，用以证明该项目工作说明书明确了项目的具体开发要求、工作计划等，创软公司制作完成后交给商桥公司签字确认，但商桥公司不肯签字，之后创软公司通过电子邮件发送给了商桥公司，创软公司也是按照该项目工作说明书进行的项目开发，创软公司已经按约履行了开发义务。2.双方相关人员之间的谈话录音，用以证明商桥公司委托创软公司开发涉案项目的目的是为了融资，融资完成后该项目已经没有用处；商桥公司承认已就创软公司开发完成的一期项目内容签署《项目验收单》，商桥公司内部也已进入申请付款流程。商桥公司质证后发表以下质证意见：对于证据1的真实性不予认可，认为该证据系创软公司单方面制作，没有商桥公司的印章或相关人员的签字，当时的确拿到过创软公司提供的项目工作说明书，但内容与该证据有区别，创软公司之后进行过修改，该证据亦不能体现创软公司履行合同的事实；对于证据2的真实性认可，合法性、关联性不认可，该录音是在未经商桥公司相关人员允许的情况下录制，且录音中涉及本案的内容，也无法证明创软公司的开发成果符合合同约定，能够正常使用。商桥公司还向本院提交了一份涉讼后自行制作的《上海创软提交的一期软件产品存在的问题》，用以证明创软公司提交的一期项目开发成果存在较多问题且部分功能未开发，造成无法正常使用，严重影响了商桥公司的业务发展。创软公司对该证据的真实性、合法性、关联性均不认可，认为创软公司已经完成了一期项目的开发，商桥公司也已出具了《项目验收单》，应以《项目验收单》记载的内容为准。本院对上述证据认证如下：1.创软公司提交的证据1虽未加盖商桥公司的印章或者由商桥公司的相关人员签字，但创软公司提交的双方相关人员的往来电子邮件可以证明该证据创软公司已经通过邮件发送给商桥公司，商桥公司当时对此并未提出异议，本院对该证据的真实性、合法性予以确认，且该证据与本案具有关联性，故本院予以采纳。2.关于创软公司提交的证据2，根据《最高人民法院关于适用〈中华人民共和国民事诉讼法〉的解释》第一百零六条规定，对以严重侵害他人合法权益、违反法律禁止性规定或者严重违背公序良俗的方法形成或者获取的证据，不得作为认定案件事实的根据。因此，即使是未经对方当事人允许私自录制谈话内容取得的录音证据，除非是严重侵害他人合法权益、违反法律禁止性规定或者严重违背公序良俗的方法形成或者获取，否则，该录音证据可以作为认定案件事实的根据。现商桥公司对证据2的真实性认可，也未提供证据证明该证据的形成或者获取存在上述不得作为认定案件事实根据的情形，故本院对该证据的真实性、合法性予以确认，并根据该证据内容与本案的关联程度酌情予以采纳。3.关于商桥公司提交的证据即《上海创软提交的一期软件产品存在的问题》，因该证据系商桥公司涉讼后自行制作，创软公司对该证据的三性均不予认可，且该证据与商桥公司在合同履行过程中签署的《项目验收单》存在明显矛盾之处，故本院对该证据不予采纳。本院依据上述确认和采纳的证据以及当事人的陈述查明如下事实：一、涉案合同的签订等情况2018年1月18日，创软公司苏良本向商桥公司陈根学等发送电子邮件，内容为：“附件为商桥公交货巴运营平台的原型设计文档、业务逻辑文档、开发服务SOW文档、开发服务合同，请审核，请回复确认签署时间。目前创软商桥项目开发组已经成立，美工已经在设计APP界面，开发人员已经在做开发前的准备工作了。等明天哲盟(指深圳市哲盟软件开发有限公司，以下简称哲盟公司)将源代码交接过来后正式启动开发工作。由于年底时间比较紧迫，希望商桥和哲盟能积极配合，感谢！”该邮件附件共4个，其中包括“商桥公交货巴运营系统项目开发服务工作说明书-SOWV1.0.3.docx”。2018年1月19日，商桥公司(甲方)与创软公司(乙方)签订涉案合同，合同与本案有关的主要内容为：一、定义本合同中使用的下列词语具有如下含义：1.1“本合同”指合同正文及其附件，以及双方在本合同签署生效后达成的补充协议。本合同附件为本合同不可分割的部分，与合同正文具有同等效力。……1.4“书面形式”是指合同书、往来函件等可以有形地表现所载内容的形式。二、方案目的实现甲方建立完善的快箱运营体系，其中包括构建智能化的快箱卡班网络、支持动态车辆调度、支持空箱自动调拨、提供客户服务、车辆承运管控等……。三、服务内容基于甲方对智能快箱业务运营的需求，进行系统解决方案的开发服务，乙方为甲方提供：3.1公交货巴运营平台端开发服务；3.2公交货巴客户版APP开发服务(包含iOS版本、Android版本)；3.3公交货巴司机版APP开发服务(包含iOS版本、Android版本)；系统开发服务的验收标准与交付物以本合同第六章约定为准。五、权利与义务……5.3本项目总体需求以双方签字确认的项目工作说明书中双方对项目内容的约定为主要框架，除非双方协商同意，否则不得脱离和超出该框架。并作为本合同附件，与本合同具有同等法律效力。5.4乙方在取得了甲方提供的必要的信息和资料后，明确项目工作说明书，双方确认无异议后双方需在项目工作说明书上签字确认。5.5双方在项目工作说明书上签字确认后，乙方将依据本合同所约定的功能、目标与项目工作说明书完成系统方案的开发。5.6项目工作说明书作为本合同附件，是对本合同的详细描述和补充，与本合同具有同等法律效力。5.7双方在项目工作说明书上签字确认后，如果存在严重影响业务流转的功能缺陷，一方必须以书面形式(《需求变更建议书》)向另一方提出变更请求，双方协商同意后，该需求变更才能生效。5.8如果需求变更涉及合同及项目工作说明书以外需求，应以补充协议的形式对项目计划及咨询费用进行调整。5.9双方约定以项目工作说明书中的项目分期及交付约定中的时间计划执行；如因实际情况需要对该文档进行修改变更，一方必须以书面形式(《需求变更建议书》)向另外一方提出变更请求，双方协商一致后，该需求变更才能生效。……六、验收标准与交付乙方已经根据本合同所约定的功能、目标，完成本合同以及项目工作说明书中所述的系统方案的设计，其中交付物包含以下清单：过程文档(用户需求列表、方案里程碑计划表、方案工时评估表)、研发文档(数据库设计文档、系统设计文档、系统源代码)、管理文档(项目变更记录、项目会议纪要、项目验收文件)。七、价格与付款方式7.1本合同(合同及其附件规定的服务范围内)定制开发总价款为750,000元，除非另有书面约定，本合同总价款付款进度如下：1.合同签订，支付30%，即225,000元；2.项目工作说明书中约定的一期项目验收，支付40%，即300,000元；3.项目工作说明书约定的二期项目验收，支付20%，即150,000元；4.项目验收后满三个月，支付10%，即75,000元。以上阶段付款均在甲方收到乙方开具符合国家税务规定的增值税专用发票后，5个工作日内甲方向乙方完成支付。……十、违约责任10.1双方应严格按照本协议的规定执行，一方违反本协议规定，另一方有权终止合作，并按本协议相关规定追究违约方责任。10.2如乙方不能按时完成本合同义务即提供合格的系统，或者根本不能提供有效的系统、服务，每延迟一天，按照合同金额的万分之五承担违约金；逾期三十天以上的，甲方有权单方解除合同，乙方应撤回所有的服务，并退回甲方已支付的全部费用。10.3如甲方无故拖延验收，并且费用支付延期在三十个自然日内，甲方每延期支付一天应额外按照合同金额的万分之五承担违约金；延期超过三十个自然日，乙方有权终止此合同，并甲方仍应按照本合同约定及项目当前完工状况支付已发生费用。创软公司提交的项目工作说明书载明：1.文档版本为1.0.3，文档日期为2018年1月18日。2.用户需求包括项目分期阶段与范围、功能性需求等。(1)项目分期阶段与范围：平台中的功能班车管理(子功能含班车资料管理、班车发车登记、班车发送管理、班车提现管理、油卡库存管理、油卡申请管理、油卡账户充值管理、油卡充值管理、班车杂费管理)、快件箱管理(子功能含货箱类别、货箱库存管理、货箱申请、租箱价格设定、共享管理、货箱线路申请、货箱建立交接、货箱结余、货箱异常科目设置、快件箱登记异常处理管理)、车箱匹配(子功能含平台任务监控、我要调车)、结算中心项下的子功能用户提现管理，均属于一期阶段开发内容；结算中心项下的开票申请管理、客户管理，以及平台的接口中心均属于二期阶段开发内容；司机版APP[功能包括快件箱(子功能为任务大厅)、运输单(子功能为运输单)、个人中心(子功能含我的余额、收入/提现、我的消息、客服中心、账号设置、注册/登录、认证)]的Android版本属于一期阶段开发内容，iOS版本属于二期阶段开发内容；客户版APP属于二期阶段开发内容。(2)功能性需求载明了每一个子功能的具体需求描述。3.初步里程碑计划：一期阶段，起始日期为2018年1月22日，截止日期为2018年3月1日；二期阶段，起始日期为2018年3月2日，截止日期为2018年4月27日；外部结项完成，起始日期为2018年4月30日，截止日期为2018年5月8日；内部结项完成，起始日期为2018年5月8日，截止日期为2018年5月10日。二、涉案合同的履行等情况涉案合同签订后，商桥公司按照合同约定向创软公司支付合同首期款项225,000元。涉案合同履行过程中，创软公司李志明和商桥公司靳慧玲一直就项目开发情况及遇到的问题通过微信进行沟通。2018年3月3日，靳慧玲向李志明发送微信“你能不能和开发说一下让他这几天来这边办公呀，这样交流就更加直接，有问题直接就提出来解决了，现在界面是都画出来了，但是功能都不能用，我们根本就没法测试。”李志明回复“我和苏总商量下，然后目前哪个功能不能用，你们在哪里说的。”同年3月5日，李志明向靳慧玲发送微信“一会我带着开发就会到，目前我们在车上。”靳慧玲回复“我今天有事情不在，到时候测试人员会一起交流”“运营庞海霞主要测试这部分”。李志明回复“我们先协助哲盟的技术，解决下代码冲突，引入一些代码，然后再测试。”同年3月8日，靳慧玲在“商桥哲盟”微信群里发送消息“我再重申一下……快件箱这一块是由我负责，出了问题我承担不起，但是你们谁延误了进度，我就找谁……今天已经8号了，今天的测试再不能正常进行的话，责任全由你们自己来背＠龚学明Simon＠创软-苏良本大家需要怎么配合，在群里积极交流……”“http：//122.144.133.28：9090/”“＠沫子李(即创软公司李志明)这个是哲盟今天新给的地址，你们在这个里面找一下”。2018年3月11日，创软公司李志明向商桥公司靳慧玲发送电子邮件，并抄送商桥公司陈根学，内容为：“年后人员是否在商桥驻场开发与延迟上线并没有直接关系。我们在3月1日如期交付了代码，而代码合并的事是由哲盟公司主导我司配合，这个责任不能全部让我们来背。3月7日给商桥组织培训后，提出许多细节方面优化的需求，我们也花了不少时间在处理。不过我们也不逃避延期上线的事实，明天起我将和主要开发人员驻场商桥配合业务部门进行最后的上线测试，下周五前完成正式上线发布工作，谢谢！”2018年3月17日，商桥公司靳慧玲在“商桥哲盟”微信群里发送消息“龚总，创软是为你们代工，哲盟也是要负责任的哦”。创软公司苏良本回复“上午讨论下快箱压测和上线的事实”。创软公司李志明询问哲盟公司龚学明“今天大概几点会升级一版”，龚学明回复“平时九点”。李志明询问“今天升级了吗”，龚学明回复“如有需要，跟小罗提”。2018年3月26日，创软公司李志明通过微信向商桥公司靳慧玲发送“上线计划.docx”“进度报告.xlsx”，靳慧玲回复“今天没有什么事情了就先回去吧，你们也挺辛苦了……”李志明回复“我们还要讨论那个管理版APP呢，搞完之后回去”。靳慧玲询问“和谁讨论？”李志明回复“易老师(即商桥公司易林)”。2018年4月2日，商桥公司向创软公司发送《告知函》，内容为：“兹与贵司在2018年1月18日签订《商桥公交货巴运营系统项目开发合同》，贵司未如约履行合同内容，基于贵司与商桥、哲盟的服务关系，我司要求贵司给出项目开发的开发方案以及上线时间计划表，可根据情况协调时间，但多次催要未果，贵司已延期交付开发成果，特告知贵司本期开发费用延期支付。”同年4月4日，创软公司回复商桥公司，内容为：“……在项目实施启动阶段，我司提供给贵司的项目工作说明书文档(SOW)中已经约定了初步里程碑计划表。虽然贵司不愿签署，但是我司还是按照该计划推进项目。双方原计划约定第一期阶段的开发工作在2018年3月1日截止。虽然项目启动期间因哲盟公司没有按时给我们源代码，导致整体延期一周时间。而我们也是赶在2018年3月1日完成平台端的开发工作。因为该项目核心框架及大部分功能由哲盟公司开发，测试环境、DEMO环境以及生产环境均由哲盟负责维护，原协商合作方式由我司将功能模块做完提交给哲盟公司，由哲盟公司负责合并模块并发布上线。而实际上我司项目组从2018年3月1日起耗费7个工作日时间，配合哲盟公司进行代码合并工作。代码合并完成后，由贵司业务部门进行第一期阶段项目验收工作。在项目验收工作期间，发现存在业务部门与贵司信息中心部门给出的结算等相关逻辑不一致的情况。我司项目组成员与业务部门耗费近两周时间完成逻辑变更的工作，并完成对第一期阶段项目的验收工作。第一期阶段项目验收完之后，贵司将数据迁移、数据迁移测试以及发布上线的工作归为我司工作。我司可以接受该部分工作，但是贵司应理解，且给予我司时间。在老系统数据迁移期间，因哲盟公司忙于他们的工作任务，并没有快速配合老系统数据迁移工作。整个过程也耗费近一周多时间。以上是项目实施阶段出现的问题，导致项目没有按原里程碑计划进行。但贵司不应全部归咎于我司，应从实际发生的问题进行理解。目前，第一期阶段内容已经在商桥生产环境进行灰色测试。按照今天我司组织商桥信息中心、商桥业务部门、哲盟公司进行公交货巴(快件箱、班车)上线工作安排会议决定，新系统将在明天完成灰色测试，后天(2018年4月6日)上午10点做新老系统的数据切割工作。数据切割工作完成后，老系统公交货巴将不再使用。”2018年4月4日18：52，创软公司李志明向商桥公司靳慧玲、易林等发送电子邮件，并抄送商桥公司陈根学，内容为：“根据今天2018-04-04下午公交货巴(快件箱、班车)上线工作安排会议……决定如下：1.2018年4月5日，由＠邸永波，以邮件方式确认昨天同步的生产环境数据无误。2.2018年4月5日，由＠王明军，以邮件方式通知2018年4月6日上午10点，可启动升级工作。3.2018年4月6日，由＠王明军，上午10点关闭老系统的操作权限，保留查询权限。4.2018年4月6日，由＠王明军＠郭凯，在上午10点前启动升级工作，预计12点前完成升级工作，完成后以邮件方式通知上线工作组。5.2018年4月6日，由＠邸永波，确认升级后生产环境数据无误，并以邮件方式通知上线工作组。6.2018年4月6日，由＠靳慧玲，以邮件方式通知商桥各单位，在2018年4月7日正式在新系统使用公交货巴，停用老系统公交货巴系统。具体操作，请务必按照附件执行！”该邮件的附件为“上线计划.xlsx”。同日20：01，李志明又向靳慧玲、易林等发送电子邮件，并抄送陈根学，内容为：“因为今天收到贵司邮件说没有收到过开发方案相关文档，不是太清楚易老师为什么这么说，附件中的文档以前通过微信或者QQ发送过，现重新以邮件方式给各位发一次，若有什么问题请及时沟通下，谢谢！”该邮件的附件为“开发文档.zip”，包括“公交货巴司机版APP界面设计文档”“公交货巴运营管理系统功能测试报告”“公交货巴运营管理系统详细设计说明书”“公交货巴运营平台系统概要设计说明文档”“商桥公交货巴运营系统项目开发服务工作说明书”“系统原型设计文档”“用户手册”。2018年4月8日，创软公司李志明向商桥公司靳慧玲发送微信“今天晚上不是业务高峰期，我们在现场处理紧急问题，现在在路上了，马上到……”“看看能不能安排哲盟那面的一个人，到时可能需要紧急发布代码，需要哲盟的人更新，我们这面没有权限，需要兄弟支持”。同年4月12日，李志明向靳慧玲发送微信“https：//fir.im/3brq司机APP测试版，安卓的可以测试下了”。靳慧玲回复“好的”。2018年4月13日，商桥公司靳慧玲向创软公司李志明发送微信“把之前的发生错误的交接可以同步处理掉吗”，李志明回复“历史数据的恢复吗？”“这个我咨询下开发”“让业务人员整理一下，给出交接单和结余的异常数据吧，我们来修复”。同年4月14日，李志明向靳慧玲、易林等发送电子邮件，并抄送陈根学，内容为：“历史数据的恢复方案：1.目前我们安排技术负责人将测试环境中两个模块的数据恢复到原始状态(老系统迁移的状态)；2.运营部负责安排人进行快件箱交接单数据的重新创建和发送以及接收(2018年4月8日至今的数据全部重新跑一次)；3.运营部负责比对交接单和结余的数据是否正常；4.确认无误后我们安排人将测试库的数据全部迁移到正式环境。具体安排详见计划表，请协助，方案是否可行？如果可行请告知，或者是否存在更好的解决方案，我们将尽力配合处理。”2018年4月19日，创软公司李志明向商桥公司靳慧玲、易林等发送电子邮件，并抄送商桥公司陈根学，内容为：“以下问题处理进度如下：1.车辆费用管理中公交货巴数据已进行启用，＠靳慧玲请安排相关人员核实费用和数据是否正常……2.快箱库存管理中新老系统货箱使用次数不一致，正在处理中，预计今天更新结束；3.货箱建立交接菜单名称修改为货箱交接管理，处理中，预计今天处理完成；4.车辆费用管理搜索条件处理中；5.快箱库存管理增加“第一次分配日期”字段，预计明天进行处理。其余问题已处理完毕，请查验。”该邮件的附件为“进度报告.xlsx”。同年4月20日，李志明通过微信向靳慧玲发送“4.20工作周报.doc”。同年4月23日，靳慧玲通过微信向李志明发送“快件箱上线问题反馈和跟进表4-21.xlsx”，并于次日发送消息“油卡在分配的时候需要存储一个持卡对象，麻烦你跟凯哥讲一下，谢谢”。李志明回复“新增一个字段‘持卡对象’？”靳慧玲回复“嗯嗯”。李志明询问“这个优先级是？”靳慧玲回复“为了APP上面增加车牌绑定油卡后充值，班车后面吧”，李志明回复“明白，其余任务整体延后”，靳慧玲回复“嗯”。同年5月2日，靳慧玲向李志明发送微信“麻烦你跟凯哥讲下这些常用功能的问题吧”“还有我们那平台开发到什么进度了”“先把老系统有的功能加到新系统里来，后面的优化需求放到后面做”。李志明回复“二期：1.安卓司机版测试版已交付；2.平台端需要一个月；3.安卓货主版预期估时一个月；4.iOS司机版15天，货主版一个月。一期：1.前期提出的优化和问题已全部处理完毕；2.今天提出来的缺失和需求后续进行补充和添加。”“今天没回去，没网络发邮件了，明天到了重新补发，这个你先参考看下”。同年5月3日，靳慧玲通过微信向李志明发送“快件箱上线问题反馈和跟进表5月.xlsx”，并发送消息“因为15号班车费要提现，所以尽量在10号左右处理完后，我们再进行测试，确保提现没有异常”。2018年5月7日，创软公司李志明向商桥公司靳慧玲、易林等发送电子邮件，并抄送商桥公司陈根学，内容为：“一、平台端：1.确认了问题和优化调整的功能部分；2.确认了各项任务的优先级，其中以数字代表顺序；3.详细查看进度报表，具体以实际情况为准。二、司机APP：1.需求逻辑确认……2.需要商桥提供的接口……3.优化部分……”2018年5月15日，创软公司李志明向商桥公司靳慧玲发送微信“文件是整理的油卡充值这块需要做的调整逻辑，内容看下是否存在缺失”，并发送“新需求.xlsx”。通过微信回复“好的”。同年5月16日，李志明通过微信询问靳慧玲“货箱分配支付方式：分期支付的逻辑确认了吗？”靳慧玲向李志明发送“新需求.xlsx”。同年5月17日，李志明回复“关于货箱结余-分期支付的逻辑你和王工确认下吧，老系统：分期支付：利息费……管理费……保证金……货箱租金(单价)……”靳慧玲回复“嗯”。李志明询问“分期支付逻辑确认的如何了？”靳慧玲回复“就这样”。2018年5月16日，创软公司李志明向商桥公司靳慧玲、易林等发送电子邮件，并抄送商桥公司陈根学，内容为：“司机APP和平台相关页面的操作手册于附件上，请查收。如有疑问，请及时反馈。”该邮件的附件为“司机APP用户手册.docx”。2018年5月18日，创软公司李志明向商桥公司靳慧玲发送微信“我问个情况，咱这面的验收单现在怎么样？”靳慧玲回复“明天开启验收程序”。同年5月19日，靳慧玲通过微信询问李志明“油卡的工时估出来了吗？”李志明回复“一会我把油卡费的估时放在excel表发给你”“初步估算时间于附表中”“……大概需要两周，最后一个估时不确定，看王工那面的接口是怎么样的？如果只是往表里面写数据，只需要一天，但如果需要开发接口的话，就是现在的估时5天。”靳慧玲询问“6月1日能做好吧？”李志明回复“需要开发的东西还是比较多的”。靳慧玲询问“能赶赶不？”李志明回复“如果是下周开始开发的话，两周差不多，正好到6月1日。但是这个时间有点长，需要向良哥说一下，申请一下。”靳慧玲回复“嗯嗯，好的”。同年5月22日，李志明向靳慧玲发送微信“1.创建两个账户类型：司机账户、货主账户，然后司机和货主创建用户的时候我们往这个账户管理表生成一条司机或者货主账户数据；2.针对货主账户进行手机端充值的接口；3.针对货主账户进行手机端提现的接口。这三个事情，你安排下，看看什么时候给到我们这面，我们这面好进行下一步开发。”靳慧玲回复“OK”。2018年5月21日，创软公司开具应税服务名称为“研发服务”，发票抬头为商桥公司的上海增值税专用发票三张，发票号码为NoXXXXXXXX-XXXXXXXX，每张价税合计金额为100,000元，共计300,000元，该三张发票的备注栏均注明“公交货巴第二笔款”。次日，商桥公司的靳慧玲签收该三张发票，并出具签收单。2018年5月23日，创软公司李志明通过微信询问商桥公司靳慧玲“微信、支付宝、银行三种方式，充值这块有没有接口？”同年5月25日，靳慧玲回复“财务回话了，还是独立开发吧”“账户等下我提供给你”。同日，靳慧玲向李志明发送微信“你明天过来拿验收单吧”，李志明回复“签字了吗？还是”，靳慧玲回复“下周也可以拿，签字”，李志明回复“今天签字了吗？我要不现在去拿……”靳慧玲回复“下大雨，你下周再来拿吧”“你可以跟苏总回话”“油卡的事情你还要跟一下哦”“我个人建议是先做油卡的再做租箱的”，李志明回复“嗯嗯，好的”“我这面协调下”“给苏总说了……他还说需要文档是吧，我这面呢整理下，发给你吧”。同日，李志明向靳慧玲发送电子邮件，并抄送陈根学等，内容为：“账户已收到，谢谢支持。附件是整理的一期的相关文档，请查收。”该邮件的附件为“商桥相关文档.zip”。同年5月26日，靳慧玲向李志明发送微信“班车费那一块有个问题，如果是手动登记的班车费，在发送管理页面点击了确认后，车辆费用就应该自动结余，但是现在新系统中就多了一步需要再在费用管理里面点击结余才能结算”“交易时间是结余时间，业务时间是发生时间，你和凯哥讲下，这两点有问题”。同年5月31日，李志明回复靳慧玲“这两个问题已经处理好了”。创软公司提交的《项目验收单》记载的项目名称为“公交货巴运营系统项目一期”，验收项目包括软件和文档，其中软件“模块”包括前述项目工作说明书中明确的属于一期阶段开发的内容，文档为项目工作说明书约定的项目交付物，“验收通过”栏均勾选了“是”。验收结果：经甲乙双方共同通过对本项目验收的审核与确认，甲方(即商桥公司)确认乙方(即创软公司)所实施内容、进度和交付物等均已按照合同所规定的内容进行实施，并予以验收。《项目验收单》落款处甲方代表由靳慧玲签名，乙方代表由李志明签名，验收时间为2018年5月28日。2018年5月28日，创软公司苏良本向商桥公司靳慧玲发送微信“我看到一期验收单已经签好了，大概什么时候可以付款”，靳慧玲回复“已经报上去了”。2018年6月1日，创软公司李志明向商桥公司靳慧玲发送微信“油卡费结余到固定的网管中心油卡账户，这个网管中心油卡账户是哪个？发给我下”。靳慧玲回复“先到网管中心”，并询问“你们做到哪一步了？还是刚开始动油卡这一块？”李志明回复“刚开始没多久”，靳慧玲回复“那要不先不调了吧”，李志明询问“整个需求都不做了吗？”靳慧玲回复“不做了，不动了”，李志明询问“这是咋了？”靳慧玲回复“到时候让我们这边的小伙子试着做好了，不能占用你们太多时间”“因为下周陈总就回上海了，到时候你可以过来谈二期的事情”“智能调度这一块”。2018年6月4日，创软公司苏良本向商桥公司靳慧玲发送微信“一期的费用还没有到账，帮忙问一下你们财务大概什么时候可以到账”“上周一你说提交给财务了那笔哦30w”，靳慧玲回复“应该也快了”。2018年7月2日，商桥公司向创软公司发送《解除合作通知函》，内容为：“……在项目推进期间，贵公司对项目推进不主动，执行不力，计划及实时进度未能及时汇报，开发进度严重延期，已开发功能中部分功能不可用(油卡管理、班车提现等)，未按甲方要求上线实施，已违反双方约定及贵公司承诺，现我公司正式函告贵公司：1.我公司与贵公司关于上述软件的合作签订的《商桥公交货巴运营系统项目开发合同》，自贵公司接到此函之日解除。2.按合同约定，贵公司不能按时完成本合同义务即提供经我司验收合格的系统和有效的系统服务，退还我司已支付的50%开发费用……3.请贵司停止对我司服务器等资源的访问，并及时处理合作项目的相关终止事宜。……”同日，创软公司回复商桥公司，对商桥公司上述函件中提出的几点质疑进行回复，并函告商桥公司：贵司于2018年6月29日在未经沟通的情况下擅自停掉我司的开发环境(SVN、数据库、测试环境)，经过我司的慎重考虑，现我司正式函告贵司：因贵司违反《商桥公交货巴运营系统项目开发合同》第10.3条款，应按照约定承担违约金13,500元(截止于2018年7月2日)、支付剩余待支付费用共计375,000元(一期300,000元、二期按50%计算为75,000元)，并正式通知贵司终止合同。……同年7月16日，创软公司委托律师向商桥公司发送《律师函》，重申了上述回函中正式函告商桥公司的内容。2018年7月2日和3日，创软公司苏良本去商桥公司，分别与商桥公司陈根学和法定代表人陈磊等进行了交谈，并对谈话内容进行了录音，其中与本案相关的谈话内容为：2018年7月2日苏良本与陈根学的谈话内容：苏“另外还有关于一阶段的内容，小靳签字的，我不知道你们认不认？”陈“认的”，苏“一期认的是吧，可以，因为现在小靳不在了”，陈“只要是按合同办事，我们都认的，这个没问题”，苏“是，一期是按合同去办事，小靳签字，那因为小靳不在了，所以我现在问你认不认？”陈“小靳不在也认的”，苏“认就行了吧，那为什么一期我们都验收掉了，钱还不付给我们呢？”陈“你讲的是什么概念，在我的眼里一期的话，最起码把那些东西做80-90%了，才叫一期，你那个质保的话10%是上线完给你们。”苏“不是说你觉得什么是一期，或我觉得什么是一期，这个都是我们合同当中有约定的。”陈“有约定的，按正常走，你觉得商桥违约了，你起诉就好了，大不了全部钱给你嘛。”2018年7月3日苏良本与陈磊的谈话内容：陈“欠你们所有的钱在15日之前的话都给你付掉，这个你不用担心”，苏“也就是上周的那个时候，陈总(此谈话内容中均指陈根学)和我说的时候，我问怎么还没有付款，我说发票5月份就给了，他说那个最近账上没钱，那我说没事”，陈“对”“钱肯定是要给的，没钱谁干活都没劲”，苏“但这次这个邮件一发，要解除合同，还让我们赔偿”，陈“我没看到邮件”，苏“因为昨天我也来过了……陈总意思是说，也是你这边拍板确定的事情，这个是总裁这边审核的”，陈“他这个话说的是不负责任的，所有的事情他来做，你明白伐”“等会我找他了解一下具体的情况”，苏“嗯，那行吧，那要不就这样，我找陈总再聊一下吧”，陈“可以”。2018年7月3日苏良本与陈根学的谈话内容：苏“跟陈磊总聊过了，你说这个东西是他弄的，你说他审批的，他其实是说不是很了解这个事情”，陈“对啊”，苏“一期验收单，你们都签了”，陈“我验收了的话，我说句真话，你那点东西的话，跟我要钱，我都不乐意……”苏“一期付了，二期东西给你们”，陈“怎么可能，一期再付给你30多万的话，然后的话，你就结束了”，苏“然后把二期东西给你嘛，后面还有30%呢”，陈“你有什么东西给我吗？”苏“三个APP给你啊，你先把一期的付了，我再给你三个APP啊……”“5月份的时候，我们给你们发票，其实就是想你们把这个钱付掉，我们把APP给你，然后你再把后面的钱付给我们”，陈“那是在后面，付了23万以后的时候，他们易林和小靳想要把你那个第二笔30万付了，我想30万付给你就没了，我说一开始做就付给你们了，后面怎么搞，我就说停掉一笔……”苏“那是第一笔吧，合同签订是30%，我昨天看了一下那个，是分4次付”“那实际上是4笔，才付了一笔”，陈“……前面做的BI的话，做到一半就走了，数据没有啊，接口没有啊”，苏“我也是希望把这个事情做好嘛，但是不是一直没有数据嘛”，陈“当然也不能怪你，前面大家讲好的东西，也没有理由来帮我们做其他事情……”苏“但是后面代码合并花了多少时间啦？你想一下这个事情都是我们这边在弄，主要是我们这边在弄，本来是他们把我们代码合并的，现在变成我们来合并他们的代码了，然后后面的那个培训、老数据迁移，这些也变成我们的事情”，陈“这个算你10天，合并也好、迁移也好”。三、其他事实(一)本案审理中，双方当事人确认涉案所有一期项目开发成果均部署在哲盟公司的服务器上。就其中的平台，双方同意从哲盟公司服务器上当庭下载2018年6月26日创软公司提交的版本进行演示，并由商桥公司将后台还原至可以匹配该版本；就司机版APP(Android版本)，双方同意当庭在前述微信聊天记录中下载2018年4月12日李志明通过微信向靳慧玲发送的“司机APP测试版”进行演示，但由于APP的后台已关闭，且无法重启，故司机版APP(Android版本)无法演示。经对平台当庭演示，就商桥公司提出的其中未能实现的功能演示情况如下：1.快件箱功能项下的子功能“货箱结余”，商桥公司提出该功能中货箱逾期费结算存在问题，但演示时无法呈现该问题，商桥公司表示使用时不是所有情况下均会产生该问题。2.车辆功能项下的子功能“班车提现管理”，商桥公司提出创软公司开发的该功能业务逻辑缺失，与现实业务不符，故商桥公司就该功能自行进行了开发，创软公司则表示该功能其已按约开发完成并交付给商桥公司，商桥公司自认为存在问题，自行进行了开发。3.车辆功能项下的子功能“油卡账户充值管理”，商桥公司提出其中存在“对于新增的数据查询不出来”和“没有实现银行对接”两个问题，前一个问题，演示时新增两条数据，但查询时只查到一条数据(输入第一条数据无法查询，输入第二条数据查到第一条)，新增第三条数据只查到前两条；后一个问题存在，创软公司对此表示，实现该功能需要商桥公司提供真实的银行账户进行开发，但商桥公司没有提供，之后涉案合同终止，故没有开发。4.车辆功能项下的子功能“油卡充值管理”，新增数据时，提示“充值接口错误，请联系管理员！”创软公司表示，当时开发时商桥公司给的接口是测试接口，其发现问题后联系商桥公司重启接口，但因为该接口涉及钱的问题，商桥公司要求先不要动该接口，等钱没问题了再最终解决这个问题。5.车辆匹配功能项下的子功能“平台任务监控”，商桥公司提出不明白业务逻辑，演示该功能，显示一查询界面，在测试环境中可以查询到测试数据，点击“地图监控”，因为没有第三方接口无法打开。6.车辆匹配功能项下的子功能“我要调车”，商桥公司提出业务逻辑缺失，演示该功能，在测试环境中无法调取数据，无法下发任务，在正式环境中可以实现该功能。7.结算中心项下的子功能“用户提现管理”，商桥公司提出业务逻辑缺失，演示该功能，该功能的名称已改为“司机提现管理”，由创软公司开发的正式环境所对应的界面存在，但因网页文件缺失无法进一步打开。(二)本案庭审中，对于涉案合同第10.3条约定的理解与适用，创软公司表示，虽然该条款将甲方即商桥公司承担违约责任的情形约定为“如甲方无故拖延验收，并且费用支付延期在三十个自然日内”，但商桥公司的核心答辩意见还是不认可之前签署的《项目验收单》，认为创软公司开发的软件存在质量问题，导致商桥公司迟延支付相关费用，故创软公司仍可以适用该条款要求商桥公司承担违约责任；退一步讲，即使不能适用该条款，商桥公司的违约行为给创软公司造成了实际损失，也应当承担相应的违约责任。商桥公司则表示，其并没有无故拖延验收，亦认可其之前签署的《项目验收单》，但当时是在软件功能还需要完善的情况下签署的，故不能适用该条款追究其违约责任；即使其存在违约行为，违约金也应调低，不能以合同总金额作为计算基数，而应以其需支付给创软公司的开发费用金额为基数，每日万分之五的标准亦过高。(三)创软公司原法定代表人为苏良本，2019年8月30日变更为季禾。本院认为，创软公司与商桥公司签订的涉案合同，依法成立，合法有效，对双方当事人具有法律约束力，双方均应当按照合同约定全面履行自己的义务。根据双方当事人的诉辩意见，本案的主要争议焦点为：一、双方当事人是否各自存在对方主张的违约行为；二、涉案合同解除的责任以及合同解除以后的处理。关于第一项争议焦点，创软公司认为，商桥公司存在未按约支付合同款项和未按约履行协助义务，擅自单方面关闭服务器的违约行为。商桥公司则认为，创软公司存在迟延履行合同义务和交付的一期项目开发成果不符合合同约定的违约行为。本院认为：第一，涉案合同并未对合同履行期限进行约定，创软公司虽在提供给商桥公司的项目工作说明书中制定了“初步里程碑计划”，即一期阶段开发工作的截止日期为2018年3月1日，但该计划系制定于涉案合同签订之前的初步计划。根据本院查明的事实，双方相关人员在软件开发及上线运行过程中多次就相关功能如何实现、出现的问题如何解决进行沟通，其中包括对需求的进一步明确和调整，而创软公司的相关工作也需要哲盟公司提供协助和配合，且创软公司还额外承担了代码合并、老系统数据迁移等工作，上述情况增加了创软公司的工作量，必然需要相应增加开发时间。商桥公司亦于2018年5月28日签署了《项目验收单》，确认创软公司所实施内容、进度和交付物等均已按照合同所规定的内容进行实施。因此，商桥公司关于创软公司迟延履行合同义务构成违约的主张不能成立。第二，如前所述，商桥公司于2018年5月28日签署了《项目验收单》，对创软公司开发的一期项目予以验收，确认已按照合同所规定的内容进行实施，且均验收通过。之后，创软公司对于商桥公司提出的问题亦及时予以了处理。根据本院组织双方就一期项目中的平台进行当庭演示的情况，仅个别功能存在问题。司机版APP(Android版本)虽无法当庭演示，但《项目验收单》中记载的验收内容包括该APP，且商桥公司亦未能提供相反证据推翻《项目验收单》中记载的内容。因此，商桥公司关于创软公司交付的一期项目开发成果不符合合同约定构成违约的主张亦不能成立。第三，涉案合同第7.1条约定，项目工作说明书中约定的一期项目验收，支付开发总价款的40%，即300,000元，商桥公司收到创软公司开具符合国家税务规定的增值税专用发票后，5个工作日内完成支付。现一期项目已于2018年5月28日通过验收，商桥公司亦于之前的5月22日签收了创软公司开具的发票，故合同约定的该款项的付款条件已经成就，商桥公司未按约支付该款项构成违约，创软公司的相关违约主张成立。第四，根据《中华人民共和国合同法》第六十条第二款的规定，当事人应当遵循诚实信用原则，根据合同的性质、目的和交易习惯履行通知、协助等义务。商桥公司在合同履行过程中，在未通知创软公司的情况下，擅自单方面关闭服务器，导致创软公司的开发工作受阻，故商桥公司的行为违反了其根据涉案合同约定应当履行的协助等义务，创软公司主张商桥公司该行为构成违约，本院予以采纳。关于第二项争议焦点，本院认为，创软公司起诉要求确认涉案合同自2018年7月2日解除，商桥公司对此予以同意，并表示对于违约责任及合同解除的后果由法院判定，并无不当，本院予以准许，涉案合同自2018年7月2日解除。关于创软公司要求商桥公司支付合同款项375,000元的诉讼请求。其中，一期项目款项300,000元，如本院在第一项争议焦点中所述，该款项的付款条件已经成就，故关于该款项的诉讼请求，本院予以支持。对于二期项目款项75,000元，涉案合同第10.3条约定，如商桥公司无故拖延验收，并且费用支付延期在三十个自然日内，商桥公司每延期支付一天应额外按照合同金额的万分之五承担违约金；延期超过三十个自然日，创软公司有权终止此合同，并商桥公司仍应按照合同约定及项目当前完工状况支付已发生费用。因此，适用该违约责任条款的条件之一是商桥公司“无故拖延验收”，但现有证据并不能证明商桥公司存在“无故拖延验收”的违约行为，且创软公司亦未提供证据证明其二期项目的完成情况，故对于创软公司主张的二期项目款项75,000元，本院不予支持。关于创软公司要求商桥公司支付延期付款违约金的诉讼请求，如上所述，现有证据并不能证明商桥公司存在“无故拖延验收”的违约行为，故不能适用涉案合同第10.3条的约定追究商桥公司的违约责任。但鉴于创软公司在本案庭审中表示，即使不能适用该条款，商桥公司的违约行为给创软公司造成了实际损失，也应当承担相应的违约责任。创软公司的该主张并无不当，但损失计算的基数、标准及起算时间本院予以调整，即商桥公司应向创软公司支付以人民币300,000元为基数，从涉案合同解除之日2018年7月2日起至实际履行之日止按中国人民银行同期贷款利率计算的利息。关于商桥公司要求创软公司返还合同款项的反诉诉讼请求，因商桥公司的该请求系基于涉案合同第10.2条主张，该条款约定的是创软公司不能按时提供合格的系统，或者根本不能提供有效的系统、服务所应承担的违约责任，而本院在第一项争议焦点的论述中已经阐明，商桥公司对于创软公司的违约主张并不成立，反而是商桥公司存在违约行为，故商桥公司按照该条款要求创软公司退回已收取的部分款项，本院不予支持。综上所述，依照《中华人民共和国合同法》第八条、第六十条、第九十七条、第一百零九条，《中华人民共和国民事诉讼法》第六十四条第一款，《最高人民法院关于适用〈中华人民共和国民事诉讼法〉的解释》第九十条规定，判决如下：一、原告(反诉被告)上海创软信息科技有限公司与被告(反诉原告)上海商桥供应链服务有限公司2018年1月19日签订的《商桥公交货巴运营系统项目开发合同》自2018年7月2日解除；二、被告(反诉原告)上海商桥供应链服务有限公司应于本判决生效之日起十日内支付原告(反诉被告)上海创软信息科技有限公司合同款项人民币300,000元；三、被告(反诉原告)上海商桥供应链服务有限公司应于本判决生效之日起十日内向原告(反诉被告)上海创软信息科技有限公司支付以人民币300,000元为基数，从2018年7月2日起至实际履行之日止按中国人民银行同期贷款利率计算的利息；四、驳回原告(反诉被告)上海创软信息科技有限公司的其余本诉诉讼请求；五、驳回被告(反诉原告)上海商桥供应链服务有限公司的反诉诉讼请求。被告(反诉原告)上海商桥供应链服务有限公司如果未按本判决指定的期间履行给付金钱义务,应当依照《中华人民共和国民事诉讼法》第二百五十三条规定，加倍支付迟延履行期间的债务利息。本诉案件受理费人民币6,925元，由原告(反诉被告)上海创软信息科技有限公司负担人民币1,385元，被告(反诉原告)上海商桥供应链服务有限公司负担人民币5,540元；反诉案件受理费人民币1,275元，由被告(反诉原告)上海商桥供应链服务有限公司负担。如不服本判决，可以在判决书送达之日起十五日内，向本院递交上诉状，并按对方当事人的人数提出副本，上诉于最高人民法院。审 判 长 吴  盈  喆审 判 员 刘    静人民陪审员 吴  惠  丽二〇一九年九月二十六日法官 助理 谢玲、李冰雪书 记 员 朱  丽  娜附：相关法律条文一、《中华人民共和国合同法》第八条依法成立的合同，对当事人具有法律约束力。当事人应当按照约定履行自己的义务，不得擅自变更或者解除合同。依法成立的合同，受法律保护。第六十条当事人应当按照约定全面履行自己的义务。当事人应当遵循诚实信用原则,根据合同的性质、目的和交易习惯履行通知、协助、保密等义务。第九十七条合同解除后，尚未履行的，终止履行；已经履行的，根据履行情况和合同性质，当事人可以要求恢复原状、采取其他补救措施，并有权要求赔偿损失。第一百零九条当事人一方未支付价款或者报酬的，对方可以要求其支付价款或者报酬。二、《中华人民共和国民事诉讼法》第六十四条当事人对自己提出的主张，有责任提供证据。……。三、《最高人民法院关于适用〈中华人民共和国民事诉讼法〉的解释》第九十条当事人对自己提出的诉讼请求所依据的事实或者反驳对方诉讼请求所依据的事实，应当提供证据加以证明，但法律另有规定的除外。在作出判决前，当事人未能提供证据或者证据不足以证明其事实主张的，由负有举证证明责任的当事人承担不利的后果。