Наша собственная CRM и операционная платформа для подрядчиков по обоям. Она работает на wallflow.pro, и на ней есть платящие клиенты. В центре не воронка продаж, а арифметика: сколько рулонов нужно комнате и что это значит для цены.
Поклейка обоев под заказ: замерить комнату, посчитать, сколько нужно обоев, составить смету, получить подпись, взять предоплату, назначить бригаду, поклеить, выставить счёт.
Всё после замера это обычный бизнес-софт. А замер решает, принесёт ли заказ деньги, и как раз о нём обычный бизнес-софт ничего не знает.
В чём сложность.
Число рулонов это не площадь стены, делённая на площадь рулона. У обоев есть раппорт, и каждый отрез приходится округлять вверх до целого числа раппортов, чтобы рисунок сошёлся на стыке. Поэтому отходы зависят от самих обоев, а не от комнаты.
Если считать это в таблице, на каждую смету заново, ошибиться можно на каждом заказе. И ошибиться тихо: число рулонов на один меньше нужного выглядит так же правдоподобно, как верное. Узнаёшь об этом уже на стене.
PRJ-01-BВыноски
Что построено.
У каждого пункта указан файл, который это доказывает. Пути даны относительно репозитория.
A
Движок материалов, в одном файле
Число полос на стену считается из ширины стены и ширины рулона. Длина отреза округляется вверх до целого числа раппортов. Число полос из рулона считается из длины рулона. Из общего числа полос получаются рулоны, а за ними метраж в ярдах и цена. Проёмы вычитаются либо по реальным замерам, либо по стандартным американским размерам дверей и окон, если их никто не мерил. Файл начинается с правила, которое он охраняет: все формулы живут здесь, и бизнес-правило меняется правкой этого файла и больше ничем.
Доказательство
lib/calc.ts
B
Смета, подпись, предоплата
Смета уходит ссылкой. Клиент открывает её, читает и подписывает с телефона. Оплата идёт через Stripe, тем же общим модулем, что и в двух других системах.
Доказательство
app/sign/[token], app/api/esign/, lib/stripe.ts
C
Кабинет клиента без пароля, который можно потерять
Домовладелец получает страницу по токену, а не учётную запись. В этом ремесле никто не будет заводить логин, чтобы посмотреть свою же смету, а логин, которым не пользуются, потом превращается в звонок в поддержку.
Доказательство
app/p/[token]
D
Калькулятор, который встраивается на сайт
Тот же движок работает виджетом на сайте самого подрядчика, и посетитель может посчитать комнату ещё до звонка. Число на публичном сайте и число в смете считает один и тот же код, и только так они могут совпадать.
Голосовой агент на Vapi с передачей человеку в Telegram, движок повторных касаний из двенадцати модулей, звонилка для холодных звонков по токену с восемью эндпоинтами за ней и тринадцать задач по расписанию, из которых пять всё ещё работают. Именно об этой системе страница про ИИ.
Интеграция с QuickBooks, чтобы бухгалтерия не была вторым набором цифр, который кто-то в конце месяца переносит вручную из PDF.
Доказательство
lib/quickbooks.ts, app/api/quickbooks/
PRJ-01-CСправка
Где это живёт.
Построен Orium Studios, принадлежит студии и ею же поддерживается, на нём есть платящие клиенты. От него ответвились две другие системы, поэтому третья заняла недели, а не месяцы.
В двух вещах этот лист особенно аккуратен. WallFlow это собственный продукт Orium, а не клиентский: его построили здесь, он принадлежит студии, а компания по поклейке обоев работает на нём как платящий клиент. Однажды в брифе это написали наоборот, и сайт пришлось переписывать, поэтому здесь это сказано прямо. И здесь нет ни одного бизнес-результата. Нет выручки, нет роста конверсии и нет числа клиентов сверх измеренных цифр, которые сайт уже публикует, потому что печатать стоит только те числа, которые скрипт может измерить заново.
wallflow-saas · app/api/vapi/webhook/, передача от голосового агента человеку
wallflow-saas · lib/stripe.ts, байт в байт одинаковый во всех трёх системах
Три отдельных деплоя, три отдельные базы и никаких общих данных между клиентами. Общий у них только код, который сначала доказал себя в одной из них: lib/stripe.ts байт в байт одинаковый во всех трёх репозиториях.
Своя CRM, собранная под то, как работает твоя компания, стоит от $2 500. Подгонка одной из уже работающих систем под твой процесс стоит от $1 500. Это нижние границы, а итог считается по объёму работы.