Счёт, который стоил мне клиента на $60 000
Дэниел Ким, владелец агентства по разработке программного обеспечения — Сиэтл, штат Вашингтон
Я восемь лет разрабатывал ПО в других компаниях, прежде чем основал собственное агентство. К моменту, когда я ушёл в свободное плавание, я умел проектировать системы, управлять спринтами и выпускать продукт. Чего я не умел — и чему не учат ни на факультете информатики, ни на должности продакт-менеджера, — так это выставлять счета.
Первый год работы Kim Development по большинству показателей был прибыльным. Проекты приходили. Код выпускался. Клиенты были довольны. Но эта прибыльность оказалась иллюзией, которую я осознал лишь после того, как потерял клиента на $60 000 из-за спора по счёту, которого вообще не должно было быть.
Спор, изменивший всё
Я четыре месяца строил кастомную систему управления складом для оптового дистрибьютора из района Сиэтла. Проект был оценён в $48 000. У нас было подписанное техническое задание. Клиент был доволен результатом.
Проблема была в выставлении счетов. На протяжении проекта я отправлял неформальные счета через нерегулярные промежутки времени — то $12 000, то $8 000, когда вспоминал об этом или когда нужны были деньги. Никакой единой структуры. Никаких этапных вех. Никакой детализации по результатам.
Когда я отправил итоговый счёт на остаток суммы, клиент оспорил его. Он считал, что уже заплатил больше, чем предполагал объём проекта, опираясь на собственный неформальный учёт моих счетов. Мои счета не ссылались на исходное техническое задание. Клиент не мог сверить уплаченное с тем, что был должен.
Спор стоил мне $4 200, которые я так и не получил. А ещё он стоил мне продления, о котором клиент упоминал во время проекта, — заказа на разработку кастомного модуля отчётности за $60 000, который ушёл другому агентству. Проблема с оформлением счетов разрушила отношения на шестизначную сумму.
Во что на самом деле обходится непрофессиональное выставление счетов в разработке ПО
Ошибки в выставлении счетов в разработке ПО, как правило, дороже, чем в других сферах услуг, потому что и стоимость проектов выше. Спор на $200 в сфере услуг — это досадно. Спор по счёту на $4 000 в софтверном проекте — катастрофа.
Конкретные ошибки, которые я допускал:
Отсутствие структуры по вехам. Отправка счетов тогда, когда нужны были деньги, а не привязка к чётко определённым этапам проекта создавала путаницу в том, за что уже заплачено.
Отсутствие ссылок на техническое задание. Мои счета были обезличенными — «Услуги по разработке — март — $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»
В каждом этапном счёте я ссылаюсь на исходное техническое задание: «Этап 2 согласно техническому заданию SOW-2026-0341 от 15 января 2026 года». Клиент может сопоставить каждый счёт со своей копией соглашения.
С тех пор как я внедрил эту структуру, у меня не было ни одного спора по счетам. Клиенты знают, сколько стоит каждый этап, что они получают на каждом этапе и когда придёт счёт.
Счёт на запрос изменений, который защищает обе стороны
Софтверные проекты меняются. Требования эволюционируют. Клиенты видят первую сборку и хотят правок. Вопрос не в том, будут ли запросы на изменения, — а в том, будут ли они оценены и задокументированы до начала работы.
Теперь я выставляю официальный счёт на запрос изменений для любой работы вне исходного ТЗ:
«Авторизация запроса на изменение — [Имя клиента] — CR-2026-007: Описание: переработанный процесс аутентификации пользователя — добавление двухфакторной аутентификации через SMS и подтверждение по email. Исходное ТЗ предусматривало только однофакторную аутентификацию.
Оценка дополнительной работы:
- Доработка бэкенд-сервиса аутентификации: 12 часов × $175/час: $2 100,00
- Редизайн фронтенд-интерфейса аутентификации: 8 часов × $175/час: $1 400,00
- Тестирование и QA изменённого процесса аутентификации: 6 часов × $175/час: $1 050,00 Итого: $4 550,00
Этот запрос на изменение должен быть подписан до начала работ. Ориентировочный срок поставки: 5 рабочих дней после авторизации».
Клиенты, которые понимают, что их запрос стоит $4 550, принимают взвешенные решения. Кто-то одобряет сразу. Кто-то сокращает объём. А кто-то решает, что исходных требований было достаточно. Все эти исходы лучше, чем выполнить работу и либо взять её на себя, либо выставить счёт-сюрприз в конце проекта.
Модель абонентского обслуживания, создавшая регулярный доход
Изменение в выставлении счетов, оказавшее наибольшее влияние на бизнес, — это построение модели абонентского обслуживания после проекта.
После запуска каждого проекта я теперь предлагаю абонемент на сопровождение и поддержку. Разговор идёт легко, потому что клиент только что увидел, как выглядит моя работа, и не хочет терять доступ ко мне, когда что-то ломается или требует обновления.
Мои стандартные тарифы абонемента для софтверных клиентов:
«Ежемесячный абонемент на поддержку ПО — [Имя клиента]:
Тариф 1 — Базовый (8 часов/месяц): исправление багов, обновления безопасности, мелкие изменения конфигурации, техническая поддержка. $1 400/месяц.
Тариф 2 — Активный (16 часов/месяц): всё вышеперечисленное плюс добавление функций, оптимизация производительности, интеграции API, ежемесячный код-ревью. $2 800/месяц.
Тариф 3 — Выделенный (32 часа/месяц): выделенные ресурсы — постоянная разработка, вся поддержка, ежемесячный обзор архитектуры, приоритетный отклик. $5 600/месяц».
Я настраиваю в InvoiceFlow регулярные счета для каждого клиента на абонементе. Девять из моих последних двенадцати клиентов с завершёнными проектами перешли на абонентское обслуживание. Мой текущий доход с абонементов — $18 200 в месяц: регулярный, предсказуемый, не зависящий от привлечения новых проектов.
Корпоративное и enterprise-выставление счетов
Двое клиентов моего агентства — средние предприятия с формальными закупочными процессами. Требования к счетам конкретны: регистрация поставщика, номера заказов на закупку (PO), условия оплаты net-45, формат счёта, согласованный с их системами.
Я добавляю все необходимые поля через пользовательские поля InvoiceFlow:
«Услуги по разработке ПО — [Enterprise-клиент] — июнь 2026: Номер PO: PO-2026-IT-ENG-0921 Регистрация поставщика: VR-84421 Центр затрат: IT-OPERATIONS Код проекта: INV-MGMT-V2 Результаты этапа 3 согласно ТЗ от 3 марта 2026 года: среда UAT, поддержка тестирования на стороне клиента, устранение багов (14 проблем), нагрузочное тестирование. Сумма: $28 500,00 Условия оплаты: Net-45 Срок оплаты: 15 августа 2026 года»
Системы кредиторской задолженности (AP) предприятий обрабатывают счета, сопоставляя поля с заказами на закупку. Счета, которые совпадают, оплачиваются в срок. Счета, которые не совпадают, зависают в очередях или возвращаются на исправление. Сделать это правильно — это разница между получением оплаты в срок и выбиванием платежа месяцами.
Агентство после изменений
Потеря клиента на $60 000 стала событием, которое заставило меня всерьёз отнестись к выставлению счетов. Сегодня агентство совсем не похоже на то, каким оно было в первый год.
Текущее состояние:
- Все проектные счета структурированы по этапам со ссылками на ТЗ
- Запросы на изменения задокументированы и оценены до начала работ
- Девять клиентов на абонементе при $18 200/месяц регулярного дохода
- Enterprise-клиентам выставляются счета с полной документацией закупочных полей
- Ноль споров по счетам за последние два года
- Годовая выручка агентства выросла на 85% — за счёт перехода клиентов на абонементы и дисциплины проектного выставления счетов, а не только за счёт привлечения клиентов
Урок, который я вынес: ПО — это услуга высокой стоимости. Выставление счетов должно ей соответствовать. Неформальный счёт от серьёзного инженерного агентства — это противоречие, которое стоит вам клиентов.
Скачайте InvoiceFlow. Постройте свои шаблоны поэтапной оплаты. Отправьте первое предложение об абонементе следующему клиенту с завершённым проектом. Регулярный доход изменит то, как вы ведёте бизнес.
Дэниел Ким — основатель Kim Development в Сиэтле, штат Вашингтон, создаёт кастомные программные решения для клиентов в сфере оптовой дистрибуции, логистики и управления операциями.