浙江省高级人民法院
民 事 判 决 书
（2017）浙民终452号
上诉人（原审原告）:浙江千为网络科技有限公司，住所地浙江省杭州市余杭区南苑街道天健大厦2单元502B室。
法定代表人：杨小成，总经理。
委托诉讼代理人：李燕，浙江诺力亚律师事务所律师。
委托诉讼代理人：杨金华，浙江诺力亚律师事务所律师。
被上诉人（原审被告）：浙江天尔软件技术有限公司,住所地浙江省杭州市拱墅区祥园路88号2幢901室。
法定代表人：王笃安，总经理。
委托诉讼代理人：吴国金，浙江路友律师事务所律师。
上诉人浙江千为网络科技有限公司（以下简称千为公司）与被上诉人浙江天尔软件技术有限公司（以下简称天尔公司）计算机软件开发合同纠纷一案，不服浙江省杭州市中级人民法院（2016）浙01民初1333号民事判决，向本院提起上诉。本院于2017年7月14日立案后，依法组成合议庭进行了审理。本案现已审理终结。
千为公司上诉请求：撤销一审判决，改判支持其一审全部诉讼请求，并由天尔公司承担本案一、二审诉讼费用。事实和理由：一、天尔公司未履行合同主要义务。《软件开发合同》条款系由天尔公司提供，千为公司对该合同中关于主要义务与协作义务条款作区别安排的用意不清楚，其订立该合同的最终目的是要将软件投放市场，供消费者下载使用，故该合同及补充协议均已明确天尔公司需将开发完成的涉案软件上传至各大应用商店，但天尔公司仅上传至并非合同约定的搜狗手机助手应用商店，且所上传软件含有多处瑕疵，故其未履行合同主要义务。二、一审法院关于千为公司未举证证明系因天尔公司原因导致提供软件时间超过合同约定进度的认定错误。千为公司已于2016年9月26日就涉案合同进度违约等相关问题向天尔公司发出《律师函》，天尔公司于同所10月19日出具《一元骑兵项目后续开发保证书》，对项目后期履行作出保证，故千为公司举证责任已经完成。
天尔公司辩称，其已经完成涉案合同的主要义务，并上传至各大应用商店，涉案软件未上线运营的主要原因在于千为公司没有上传相应证件。《律师函》和《一元骑兵项目后续开发保证书》的出具时间均在涉案软件开发完成之后，两者均未涉及催促合同进度的内容，而仅是天尔公司就千为公司提出的软件修改问题作出的时间承诺。因此，一审判决认定事实清楚，适用法律正确，请求驳回千为公司的全部上诉请求。
千为公司于2016年11月24日向一审法院起诉请求：一、确认2016年5月9日签订的《软件开发合同书》以及2016年7月20日签订的《软件开发合同书补充协议》解除；二、判令天尔公司返还千为公司已支付的开发经费共计146000元，并支付违约金7000元（违约金按合同总额14万元的5%计算）；三、判令天尔公司按合同约定承担千为公司已支付的律师费8000元；四、判令天尔公司赔偿天尔公司损失23266.67元（损失按照关联合同总额69800元分摊至4个月来计算）；五、判令本案诉讼费由天尔公司承担。
一审法院认定：2016年5月9日，千为公司、天尔公司就千为公司（甲方）委托天尔公司（乙方）开发一元奇兵APP项目签订《软件开发合同书》，约定：项目服务开发所需费用为人民币140000元，支付方式及时限为合同签订的3个工作日内，甲方需支付乙方总费用的60%，计人民币84000元；乙方完成系统开发测试上线后，甲方3个工作日内需支付乙方总费用的30%，计人民币42000元；项目正式上线后一个月内，甲方需支付乙方总费用10%，计人民币14000元。本合同自2016年5月9日至2016年6月29日履行具体项目开发、系统上线、项目验收，履行方式为乙方提交开发完成的业务系统及交付文档、系统上线文档。技术协作和技术指导的内容包括系统上线后，乙方应把该项目上传苹果AppStore、安卓市场等15家应用商店。验收按方案要求标准，采用现场验收方式，由甲方出具技术项目验收证明，具体为系统开发内容上线，甲方付完全额项目款后乙方将相关文档资料（包括软件安装包、产品说明书、系统部署说明、源代码）交甲方，甲方组织系统终验。双方约定因乙方原因而未能按照合同规定的进度向甲方提供本合同所涉及的产品时，甲方有权追究乙方的违约责任，每逾一天按合同总额的1‰向甲方支付违约金，但累计不得超过合同总额的5%；特殊原因或因第三方原因导致工期延误，双方协商解决；一方如有违约或侵权行为，须承担另一方为实现债权而支出的诉讼费用、律师代理、交通费及其他费用。2016年5月9日，千为公司向天尔公司支付APP开发费用人民币84000元。同年8月24日，千为公司向天尔公司支付APP软件开发费用人民币42000元。同年7月20日，千为公司、天尔公司签订《软件开发合同书补充协议》，约定甲方（千为公司）新增一元夺宝微信公众平台所需服务开发费用人民币20000元，补充协议签订的2个工作日内，甲方需一次性支付计人民币20000元，功能按照现开发的一元奇兵APP功能进行开发。补充协议未涉及到的其他事项按原合同所对应的条款执行。同年7月19日，千为公司向天尔公司支付微信公众号开发费用人民币20000元。同年8月8日，千为公司与案外人杭州为盟信息科技有限公司就“一元奇兵”微信公众号宣传推广事宜签订《微信代运营服务合同》，并支付了微信公众号托管服务费69800元。同年10月19日，天尔公司出具《一元骑兵项目后续开发保证书》，称：委托我司设计定制开发的一元骑兵项目目前的需求修改，我司保证在2个工作日完成，上传应用商店的工作我司在5个工作日完成，除了国家政策原因，时间顺延。如果没有在既定的时间完成，合同的尾款不再收取，作为赔偿。同年11月21日，千为公司向天尔公司寄送解除合同通知书，要求解除涉案合同，并于同年11月24日向一审法院提起诉讼。千为公司为本案委托代理律师并支付律师费。名为“一元奇兵”的微信公众号显示账号主体为千为公司，显示有一元奇购、我的奇购、一元夺宝等内容。
一审庭审中，千为公司确认对于《软件开发合同书补充协议》约定的微信公众平台已经完成并上线没有异议；千为公司认为天尔公司应在涉案项目上线后上传至各大应用商店；千为公司质证时确认涉案项目在搜狗手机助手上线；千为公司主张天尔公司开发的技术成果无法按照合同约定上传至各大应用商店，导致涉案项目无法实现，天尔公司未履行主要债务。
一审法院认为，双方签订的合同系当事人真实意思表示，符合法律规定，合法有效，应予以确认。结合《软件开发合同书》、《软件开发合同书补充协议》、《一元骑兵项目后续开发保证书》的内容，本院认定“一元奇兵”、“一元夺宝”、“一元骑兵”均系涉案项目的名称，涉案软件即为一元奇兵APP及其微信公众平台。
根据《软件开发合同书》约定，合同的履行方式为天尔公司提交开发完成的业务系统及交付文档、系统上线文档，并约定天尔公司完成系统开发测试上线后，千为公司支付人民币42000元。千为公司已经向天尔公司支付上述人民币42000元，在千为公司没有提供相反证据的情况下，一审法院认为千为公司的实际付款行为表明付款条件已经满足，结合千为公司认可软件应在上线后上传至应用商店并在质证时确认涉案项目已经上传至搜狗手机助手这一应用商店的事实，一审法院认定天尔公司已经完成涉案软件系统的开发并已测试上线。千为公司主张其系在天尔公司未完成涉案软件系统的开发的情况下提前付款，但并未举证予以证明，对千为公司该项主张不予采信。千为公司对于《软件开发合同书补充协议》约定的微信公众平台已经完成并上线没有异议，一审未能院认定天尔公司已经完成《软件开发合同书补充协议》所约定的开发义务。千为公司主张天尔公司未将涉案软件上传至合同约定的15家应用商店，对此一审法院认为，依照合同约定，上述内容系技术协作和技术指导的内容，千为公司和天尔公司应相互配合履行上述约定，但上述约定并非涉案合同约定的主要合同义务，不影响合同目的的实现。千为公司主张系因天尔公司原因未按合同约定的进度向千为公司提供涉案软件，一审法院认为，千为公司并未举证证明系因天尔公司原因导致提供软件时间超过合同约定的进度，对千为公司该项主张不予采信。
综上，一审法院认为天尔公司已经完成涉案《软件开发合同书》及《软件开发合同书补充协议》的主要合同义务，千为公司未举出有效证据证明天尔公司存在其指控的违约行为，千为公司要求解除合同、天尔公司返还146000元开发经费及支付违约金、律师费、赔偿损失等诉讼请求无事实和法律依据，不予支持。千为公司、天尔公司应依约继续履行涉案合同。根据《中华人民共和国合同法》第八条、第六十条、第九十四条，《中华人民共和国民事诉讼法》第六十四条第一款之规定，于2017年5月17日判决：驳回千为公司的全部诉讼请求。案件受理费3985元，由千为公司负担。
千为公司和天尔公司在二审中均没有提交证据。本院二审查明的事实与一审查明的一致。
本院认为，千为公司与天尔公司于2016年5月9日签署的《软件开发合同书》和同年7月20日签署的《软件开发合同书补充协议》系双方真实意思表示，且未违反法律和行政法规的强制性规定，依法应认定有效，双方均应按照合同约定行使权利并履行义务。根据千为公司的上诉请求以及天尔公司的答辩意见，本案二审的争议焦点为：一、天尔公司是否履行了涉案合同的主要义务；二、天尔公司是否存在违约行为及是否应承担相应的违约责任。
关于争议焦点一，千为公司上诉认为天尔公司未将涉案软件上传至合同约定的各大应用商店导致其订立合同的主要目的不能实现，天尔公司则认为其已完成涉案合同项上的开发及上线义务。结合《软件开发合同书》约定的主要条款及本案双方当事人的履行情况，本院认为天尔公司已履行涉案合同项下的主要义务，千为公司订立合同的主要目的已实现。首先，《软件开发合同书》系千为公司委托天尔公司开发一元骑兵APP项目而签订，该合同中约定的履行方式为天尔公司提交开发完成的业务系统及交付文档、系统上线文档；合同的支付方式为千为公司在签订后3个工作日内支付总费用的60%，软件完成系统开发测试上线后3个工作日内支付总费用的30%，一个月内支付总费用的10%。从上述合同约定条款显示，涉案合同项下天尔公司的主要义务为完成涉案软件的开发及上线。其次，一、二审庭审中，千为公司对天尔公司已将一元骑兵APP项目上传至搜狗手机助手上线并无异议，天尔公司亦已确认千为公司已按合同约定支付第一期费用84000元和第二期费用42000元。天尔公司已将涉案软件上传至应用商店并可经下载使用的事实可以证明其已完成涉案软件的开发及上线义务，在千为公司未能提交证据证明其支付第二期费用系天尔公司未完成涉案软件开发义务的提前付款行为，其实际付款行为表明其认可涉案软件已完成开发并测试上线。第三，涉案合同中将上传至各大应用商店的义务作为天尔公司技术协作和技术指导的内容进行规定，故将涉案软件上传至各大应用商店非天尔公司应履行的主要合同义务，违反该约定并不会导致千为公司合同主要目的不能实现。千为公司虽上诉认为系软件自身存在的页面瑕疵问题导致不能上传至各大应用商店，但其未提交相应证据予以证明，故其应承担举证不能的责任。因此，千为公司该节上诉理由不能成立，本院不予支持。
关于争议焦点二，千为公司主张天尔公司违约的主要理由是天尔公司未按合同约定的进度开发涉案软件。本案中，《软件开发合同书》对合同约定的履行期限约定为2016年5月9日至同年6月29日，但双方于同年7月19日签订《软件开发合同补充协议》，约定由天尔公司继续开发一元夺宝微信公众平台功能。千为公司支付第二期款项的时间为2016年8月24日，根据合同约定该款项应在天尔公司完成系统开发测试上线后支付，一审中天尔公司提交的证据显示，其曾于2016年8月26日向360移动开发平台提交“一元奇兵”APP，并于同年9月1日通过审核。本院认为，千为公司和天尔公司通过补充协议对原合同约定的履行期限进行了变更，且之后双方履行各自合同义务的时间可以证明天尔公司大致于2016年8月底完成涉案软件开发及开始陆续进行上线，千为公司按约支付第二期款项的行为亦可视为其对天尔公司已按合同约定的期间履行义务并无异议。至于天尔公司未在约定时间内将涉案软件上传至合同约定的各大应用商店的问题，虽天尔公司认为未能上传系千为公司未提供相应证件等原因所致，但其在二审中已表示将按《一元骑兵项目后续开发保证书》约定的内容履行，即不再向千为公司收取尾款，故本院认为其已承担了相应的责任，千为公司要求天尔公司承担超出上述保证书约定部分的责任于法无据。
综上所述，千为公司的上诉请求均不能成立，本院不予支持；一审判决认定事实清楚，适用法律正确，应予维持。依照《中华人民共和国民事诉讼法》第一百七十条第一款第一项的规定，判决如下：
驳回上诉，维持原判。
二审案件受理费3985元，由千为公司负担。
本判决为终审判决。
审判长 王亦非
审判员 周 平
审判员 骆苏英
二〇一七年十月十日
书记员 郝梦君