$60,000짜리 고객을 잃게 만든 인보이스

작성: Daniel Kim, 소프트웨어 개발 에이전시 대표 — 워싱턴주 시애틀


저는 제 에이전시를 시작하기 전 8년 동안 다른 회사에서 소프트웨어를 개발했습니다. 독립할 무렵에는 시스템을 설계하고, 스프린트를 관리하고, 제품을 출시하는 법을 알고 있었습니다. 하지만 제가 몰랐던 것 — 그리고 컴퓨터공학 과정에서도, 제품 관리 역할에서도 아무도 가르쳐주지 않는 것 — 은 청구하는 법이었습니다.

Kim Development을 운영한 첫해는 대부분의 지표로 보면 수익성이 있었습니다. 프로젝트가 들어왔습니다. 코드가 출시되었습니다. 고객은 만족했습니다. 하지만 그 수익성은 착각이었고, 저는 절대 일어나서는 안 됐던 청구 분쟁으로 $60,000짜리 고객을 잃고 나서야 그 사실을 이해했습니다.

모든 것을 바꾼 분쟁

저는 시애틀 지역의 도매 유통업체를 위한 맞춤형 재고 관리 시스템을 4개월간 개발했습니다. 프로젝트 견적은 $48,000이었습니다. 서명된 작업 명세서(SOW)도 있었습니다. 고객은 결과물에 만족했습니다.

문제는 청구였습니다. 저는 프로젝트 내내 불규칙한 간격으로 비공식 인보이스를 보냈습니다 — 여기서 $12,000, 저기서 $8,000, 생각날 때마다 혹은 현금이 필요할 때마다. 일관된 구조가 없었습니다. 단계별 마일스톤이 없었습니다. 항목별 인도물 명세가 없었습니다.

남은 잔액에 대한 최종 인보이스를 보냈을 때 고객은 이의를 제기했습니다. 그들은 자신들이 비공식적으로 추적한 제 인보이스를 근거로, 프로젝트 범위가 정당화하는 것보다 이미 더 많이 지불했다고 믿었습니다. 제 인보이스는 원래 작업 명세서를 참조하지 않았습니다. 그들은 지불한 금액과 지불해야 할 금액을 대조할 수 없었습니다.

이 분쟁으로 저는 끝내 받지 못한 $4,200을 잃었습니다. 또한 고객이 프로젝트 중에 언급했던 갱신 계약 — 다른 에이전시로 넘어간 $60,000 규모의 맞춤형 리포팅 모듈 개발 — 도 잃었습니다. 청구 표현 방식의 문제가 6자리 규모의 관계를 무너뜨린 것입니다.

비전문적인 소프트웨어 청구가 실제로 치르는 대가

소프트웨어 개발 에이전시의 Invoice Flow app 청구서 편집기 — 별도의 변경 지시 항목으로 청구된 맞춤 CRM 마일스톤과 맞춤 필드의 프로젝트·스프린트·SOW 참조
한 청구서에 담은 마일스톤과 범위 외 변경 지시 — 프로젝트, 스프린트, SOW 참조가 구매팀이 기대하는 위치에.

소프트웨어 청구 실수는 프로젝트 가치가 크기 때문에 다른 서비스 업종보다 그 규모가 큰 경향이 있습니다. 서비스업에서 $200짜리 분쟁은 짜증나는 일입니다. 소프트웨어 프로젝트에서 $4,000짜리 청구 분쟁은 치명적입니다.

제가 저지르고 있던 구체적인 실패들:

마일스톤 구조가 없음. 정해진 프로젝트 단계에 연결하지 않고 현금이 필요할 때마다 인보이스를 보내니 무엇에 대한 대금인지 혼란이 생겼습니다.

작업 명세서 참조가 없음. 제 인보이스는 두루뭉술했습니다 — “개발 서비스 — 3월분 — $12,000”. 원래 합의서와의 연결이 없었습니다. 인도물 문서화가 없었습니다.

리테이너 전환이 없음. 모든 프로젝트가 완전히 인도된 제품과 완전히 종료된 인보이스로 끝났습니다. 고객이 필연적으로 필요로 하는 지속적인 유지보수, 기능 요청, 업데이트를 위한 구조가 없었습니다. 그런 작업은 비공식적으로 들어와 일관성 없이 청구되었습니다.

프로젝트 청구를 바로잡은 마일스톤 시스템

분쟁 이후, 저는 InvoiceFlow를 사용해 청구 방식 전체를 재구축했습니다.

$15,000을 초과하는 모든 계약에 적용하는 새로운 프로젝트 청구 구조:

“소프트웨어 개발 계약 — [고객명] — 단계별 청구:

1단계 — 요구사항 및 아키텍처(20%): 이해관계자 인터뷰, 기술 명세서, 데이터베이스 스키마, 시스템 아키텍처 다이어그램. 요구사항 승인 시점에 지급. $9,600.00

2단계 — 핵심 개발(35%): 주요 기능 개발, API 개발, 통합 계층, 단위 테스트. 내부 QA 통과 시점에 지급. $16,800.00

3단계 — 통합 및 테스트(25%): UAT 환경 구축, 고객 테스트 기간, 버그 해결, 성능 테스트. 고객 UAT 승인 시점에 지급. $12,000.00

4단계 — 출시 및 인계(20%): 프로덕션 배포, 문서 인도, 팀 교육 세션, 출시 후 30일 지원. 출시 시점에 지급. $9,600.00

총 프로젝트 금액: $48,000.00”

저는 모든 단계 인보이스에 원래 작업 명세서를 참조합니다: “2026년 1월 15일자 작업 명세서 SOW-2026-0341에 정의된 2단계”. 고객은 각 인보이스를 자신이 보관한 합의서 사본과 대조할 수 있습니다.

이 구조를 도입한 이후로 저는 단 한 건의 청구 분쟁도 겪지 않았습니다. 고객은 각 단계의 비용이 얼마인지, 각 단계에서 무엇을 받는지, 인보이스가 언제 도착하는지 알고 있습니다.

양쪽 모두를 보호하는 변경 요청 인보이스

소프트웨어 에이전시의 Invoice Flow app 반복 청구서 — 자동 생성되는 USD 및 EUR의 월간 개발 리테이너
월간 리테이너 — EUR 리테이너 포함 — 가 스스로 생성되어, 예측 가능한 매출이 수동 청구 없이 도착합니다.

소프트웨어 프로젝트는 변합니다. 요구사항이 진화합니다. 고객은 첫 결과물을 보고 조정을 원합니다. 문제는 변경 요청이 발생할지 여부가 아니라 — 작업이 시작되기 전에 가격이 매겨지고 문서화될지 여부입니다.

저는 이제 원래 SOW를 벗어난 모든 작업에 대해 정식 변경 요청 인보이스를 발행합니다:

“변경 요청 승인 — [고객명] — CR-2026-007: 설명: 수정된 사용자 인증 흐름 — SMS 및 이메일 인증 옵션을 통한 2단계 인증 추가. 원래 SOW는 단일 요소 인증만 명시.

예상 추가 작업:

이 변경 요청은 작업 시작 전에 서명되어야 합니다. 예상 인도: 승인 후 영업일 기준 5일.”

자신의 요청이 $4,550이 든다는 것을 이해하는 고객은 신중하게 결정합니다. 어떤 고객은 즉시 승인합니다. 어떤 고객은 범위를 줄입니다. 몇몇은 원래 요구사항이 괜찮았다고 판단합니다. 이 모든 결과가 작업을 해놓고 그 비용을 떠안거나 프로젝트 종료 시점에 뜻밖의 청구로 내미는 것보다 낫습니다.

반복 수익을 만들어낸 리테이너 모델

소프트웨어 에이전시의 Invoice Flow app 문서 — 프로젝트 마일스톤, 변경 요청, 월간 리테이너, EUR 국제 마일스톤
마일스톤, 변경 요청, 리테이너, EUR 프로젝트 — 멀티 프로젝트 에이전시의 모든 갈래를 하나의 목록에.

가장 큰 사업적 영향을 준 소프트웨어 청구 변화는 프로젝트 이후의 리테이너 모델을 구축한 것이었습니다.

이제 저는 모든 프로젝트 출시 후에 유지보수 및 지원 리테이너를 제안합니다. 고객이 방금 제 작업이 어떤지 경험했고, 무언가 고장 나거나 업데이트가 필요할 때 저에게 접근할 수 없게 되는 것을 원하지 않기 때문에 대화는 쉽게 풀립니다.

소프트웨어 고객을 위한 제 표준 리테이너 등급:

“월간 소프트웨어 지원 리테이너 — [고객명]:

1등급 — 필수(월 8시간): 버그 수정, 보안 업데이트, 사소한 구성 변경, 기술 지원. 월 $1,400.

2등급 — 활성(월 16시간): 위 항목 + 기능 추가, 성능 최적화, API 통합, 월간 코드 리뷰. 월 $2,800.

3등급 — 전담(월 32시간): 전담 리소스 — 지속적인 개발, 모든 지원, 월간 아키텍처 리뷰, 우선 응답. 월 $5,600.”

저는 InvoiceFlow에서 각 리테이너 고객에 대해 정기 인보이스를 설정합니다. 최근 완료한 12개 프로젝트 고객 중 9곳이 리테이너 계약으로 전환했습니다. 현재 제 리테이너 수입은 월 $18,200입니다 — 반복적이고, 예측 가능하며, 새 프로젝트 수주에 의존하지 않습니다.

기업 및 대기업 청구

제 에이전시 고객 중 두 곳은 정식 구매 프로세스를 갖춘 중견기업입니다. 청구 요건이 구체적입니다: 공급업체 등록, PO 번호, 순 45일(net-45) 결제 조건, 자사 시스템에 맞춘 인보이스 형식.

저는 InvoiceFlow의 맞춤 필드를 통해 필요한 모든 항목을 추가합니다:

“소프트웨어 개발 서비스 — [기업 고객] — 2026년 6월: PO 번호: PO-2026-IT-ENG-0921 공급업체 등록: VR-84421 비용 센터: IT-OPERATIONS 프로젝트 코드: INV-MGMT-V2 2026년 3월 3일자 SOW에 따른 3단계 인도물: UAT 환경, 고객 테스트 지원, 버그 해결(14건), 성능 벤치마킹. 금액: $28,500.00 결제 조건: Net-45 인보이스 만기: 2026년 8월 15일”

기업의 지급 처리(AP) 시스템은 필드를 PO와 대조하여 인보이스를 처리합니다. 대조가 맞는 인보이스는 기한 내에 지급됩니다. 대조가 맞지 않는 인보이스는 대기열에 남거나 수정을 위해 반송됩니다. 이것을 제대로 하는 것이 제때 수금하는 것과 몇 달간 결제를 쫓아다니는 것의 차이입니다.

변화 이후의 에이전시

$60,000짜리 고객 상실은 제가 청구를 진지하게 받아들이도록 만든 사건이었습니다. 오늘날의 에이전시는 첫해와는 전혀 다른 모습입니다.

현재 상태:

제가 새긴 교훈: 소프트웨어는 고가치 서비스입니다. 청구도 그에 걸맞아야 합니다. 진지한 엔지니어링 에이전시가 보내는 비공식 인보이스는 고객을 잃게 만드는 모순입니다.

InvoiceFlow를 다운로드하세요. 단계별 청구 템플릿을 구축하세요. 다음에 프로젝트를 완료한 고객에게 첫 리테이너 제안을 보내세요. 그 반복 수입이 사업 운영 방식을 바꿀 것입니다.


Daniel Kim은 워싱턴주 시애틀에 위치한 Kim Development의 창립자로, 도매 유통, 물류, 운영 관리 고객을 위한 맞춤형 소프트웨어 솔루션을 개발합니다.