
기타 금전문제 · 노동
전자상거래 및 인터넷 콘텐츠 개발 기업인 주식회사 A가 소프트웨어 개발 및 판매 기업인 주식회사 C와 세 차례에 걸쳐 소프트웨어 개발 계약을 체결하고 총 9억 2백만 원의 개발대금을 지급했으나, 주식회사 C가 약속된 소프트웨어 개발을 완료하거나 납품하지 못하여 주식회사 A가 계약 해제를 통보하고 지급했던 개발대금의 반환을 청구한 사건입니다. 법원은 주식회사 C가 개발 계약에 따른 작업을 완성하지 못했다고 판단하여, 주식회사 A의 계약 해제가 적법하다고 보고 주식회사 C는 지급받은 개발대금 전액과 지연이자를 반환하라고 판결했습니다.
원고 주식회사 A는 전자상거래 및 인터넷 콘텐츠 개발 기업이며 피고 주식회사 C는 소프트웨어 개발 및 판매 기업입니다. 양사는 2021년 6월 9일 'KA 개발계약'(개발대금 6억 원), 2021년 12월경 'K 개발프로젝트 개발계약'(개발대금 4억 원), 2022년 7월 6일 'KB 개발계약'(개발대금 1억 5천만 원) 등 총 세 차례에 걸쳐 소프트웨어 개발 계약을 체결했습니다. 원고는 이 계약에 따라 피고에게 총 9억 2백만 원의 개발대금을 순차적으로 지급했습니다. 그러나 피고는 약속된 소프트웨어(KA, 메인넷, 통합월렛 등)를 개발하거나 원고에게 납품하지 못했으며, 일부 납품된 개발 결과물도 불안정하거나 제대로 작동하지 않는 등 원고가 요구하는 성능 기준을 충족시키지 못했습니다. 원고는 여러 차례 이메일과 메신저를 통해 개발 완료 및 납품을 독촉했으나 피고는 이를 이행하지 못했습니다. 결국 원고는 2022년 10월 13일 피고에게 내용증명우편을 발송하여, 피고의 개발 수행능력이 기준 미달이라고 판단하여 세 건의 개발 계약을 해제한다고 통보했습니다. 이에 따라 원고는 피고가 개발대금을 반환해야 한다며 소송을 제기했습니다. 피고는 선행 계약이 완료되어야 후행 계약이 체결되는 특성을 가지므로 1, 2차 계약은 이행 완료되었고 원고가 잔금을 지체했다고 주장했으나, 법원은 이를 인정할 만한 증거가 없다고 보았습니다.
피고 주식회사 C가 원고 주식회사 A와 체결한 세 건의 소프트웨어 개발 계약에 따른 약정된 작업을 제대로 완성하여 제공했는지 여부와, 피고의 개발 미완성으로 인해 원고가 계약을 해제한 것이 적법한지 여부가 이 사건의 핵심 쟁점입니다.
법원은 피고 주식회사 C가 이 사건 개발 계약에 따른 작업을 완성했다고 보기 어렵다고 판단했습니다. 이에 따라 원고 주식회사 A가 피고 주식회사 C의 이행 지체를 이유로 계약을 해제한 것은 적법하다고 보았습니다. 따라서 피고 주식회사 C는 원고 주식회사 A에게 지급받은 개발대금 총 9억 2백만 원과 각 대금이 지급된 날로부터 다 갚는 날까지 연 5%의 비율로 계산한 지연손해금을 지급해야 한다고 판결했습니다. 소송비용은 피고가 부담하며, 판결 제1항은 가집행할 수 있습니다.
소프트웨어 개발 계약에서 수급인(피고)이 약정된 개발 작업을 완성하지 못하고 이행을 지체한 경우, 도급인(원고)은 계약을 해제하고 이미 지급한 개발대금의 전액을 반환받을 수 있습니다.
이 사건은 '제작물 공급계약'에 해당하며, 특히 소프트웨어와 같이 특정 주문자의 요구를 만족시키기 위한 '부대체물'의 개발 계약은 '도급'의 성질을 가집니다. 제작물 공급계약의 법적 성격: 소프트웨어 개발과 같이 특정 주문자의 요구에 따라 물건을 만들어서 공급하는 계약은 제작의 측면에서는 '도급'의 성질을, 공급의 측면에서는 '매매'의 성질을 함께 가집니다. 이 사건과 같이 특정 수요자를 위한 '부대체물'(대체할 수 없는 특정한 물건)을 제작하는 것이 주목적인 경우에는 '도급' 계약의 성격이 강하게 적용됩니다 (대법원 1996. 6. 28. 선고 94다42976 판결 참조). 도급 계약상 일의 완성 및 입증 책임: 도급 계약에서 수급인(개발사)이 보수를 받으려면 '일의 완성'이 필수적입니다. 여기서 '일의 완성'이란 단순히 마지막 공정까지 마쳤다는 것뿐만 아니라, 목적물의 주요 부분이 계약 내용대로 시공되어 사회 통념상 일반적으로 요구되는 성능을 갖추어야 함을 의미합니다. 일의 완성에 대한 주장 및 입증 책임은 보수를 청구하는 수급인에게 있습니다 (대법원 2006. 10. 13. 선고 2004다21862 판결 참조). 계약의 해제 및 원상회복: 피고가 계약상 의무인 소프트웨어 개발 및 납품을 이행하지 않거나 지체한 경우, 원고는 상당한 기간을 정하여 이행을 최고(독촉)한 후에도 이행이 없으면 계약을 해제할 수 있습니다 (민법 제544조 이행지체와 해제). 계약이 해제되면 각 당사자는 상대방에 대하여 원상회복의 의무를 지게 됩니다 (민법 제548조 해제의 효과, 원상회복의무). 이 사건에서는 피고가 원고로부터 받은 개발대금 전액을 반환할 의무가 발생했습니다. 또한, 금전 반환의 경우에는 그 받은 날로부터 이자를 가하여 지급해야 합니다 (민법 제548조 제2항). 이 판결에서는 민법상 이율인 연 5%의 지연손해금 지급을 명했습니다.
계약서 상세 작성: 소프트웨어 개발 계약 시 개발 범위, 기능, 성능 기준, 완료 기한, 검수 절차, 대금 지급 조건, 지체상금 및 계약 해제 조건을 명확하고 구체적으로 작성해야 합니다. 추후 분쟁 발생 시 중요한 증거가 됩니다. 개발 진행 상황 기록: 개발 과정에서 주기적으로 산출물 제출, 중간 보고, 테스트 결과 등을 요구하고 그 내용을 문서나 이메일, 메신저 등으로 기록하여 보관해야 합니다. 개발사의 이행 지체나 미완성을 입증하는 데 필수적입니다. 납품 및 검수 절차: 개발 완료 후에는 계약서에 명시된 검수 절차에 따라 철저하게 검수하고, 문제가 발생할 경우 즉시 시정을 요구하며 그 내용을 기록해야 합니다. 목적물의 인도는 단순히 점유를 넘겨받는 것을 넘어 계약 내용대로 완성되었음을 확인하는 것을 포함합니다. 이행 촉구 및 증거 확보: 개발사(수급인)가 약속된 기한 내에 작업을 완료하지 못하거나 불완전한 결과물을 제공할 경우, 내용증명우편, 이메일 등 객관적인 방법으로 이행을 촉구하고 그 증거를 남겨야 합니다. 이는 계약 해제의 적법성을 입증하는 데 중요한 역할을 합니다. 선금 지급 신중: 개발 계약의 특성상 선금을 지급하는 경우가 많지만, 개발 진행 상황과 연동하여 분할 지급하는 방식을 고려하여 개발사의 이행을 담보하는 것이 좋습니다.