Как работает К16 — клининг «Очарование города»
Как работает К16 — клининговая служба «Очарование города»
Экземпляр SMB: 13 таблиц, 13 автоматизаций, 2 публичные формы, портал клиента, агент разбора быстрого ввода. Всё ниже проверено живыми прогонами 24.09.2026 (runs 1083–1094).
Точки входа
Вход | Что это | Куда пишет |
|---|---|---|
Публичная форма «Заявка на уборку» | smb.farhome.ru/public/k16-kliningovaya-sluzhba-oc/zayavka-na-uborku | Лиды (дубль-submit → 409) |
Публичная форма «Оценка выезда» | …/otsenka-vyezda | Оценки после письма-запроса |
Быстрый ввод | Одна строка «нужна генеральная уборка 65 м² на Кутузовском, тел…» | Агент (rule 329) сам создаёт лид из фразы |
Портал клиента | Личные заявки клиента, чек-лист, фото | Заявки (с колонками, закрытыми от внешнего чтения) |
Основной конвейер (проверен сквозным прогоном)
Лид из формы → письмо координатору (rule 325).
Координатор квалифицирует → сделка создаётся автоматически (rule 320), цена считается формулой PRICE_FOR (тип уборки × м² × район;wildcard-регион).
Сделка «Выиграна» → заявка (WO) в статус-машине: Заявка → Запланирована → Назначена → В работе → Выполнена. Переход в «Выполнена» требует фото после + чек-лист (гейт requiredFields).
За 2 часа до выезда подрядчик получает напоминание в портал (rule 324, cron */15).
«Выполнена» → счёт автоматически (rule 326) + заявка уходит в «Выставлен счёт»; позиции работ копируются в счёт fan-out’ом (rule 322, дедуп по invoice+work_order).
Клиенту — письмо с просьбой оценить выезд (rule 330) со ссылкой на публичную форму.
Оплата (rule 323) → проводка в финансовый реестр с правильным parent_ref и суммой.
Абонементный контур
Абонемент MEM-2026-0001 (Мария Иванова, «Квартира — ежемесячно», 12 000 ₽/мес).
Правило 317 (cron 02:00): в день списания выставляет счёт, двигает next_billing_date, пишет last_invoice. Живой прогон: run 1092 → INV-2026-0003 на 12 000 ₽.
Правило 328 (cron 10:00, за 14 дней): письмо клиенту о продлении + плановая заявка на выезд (run 1091; повтор запуска корректно скипнут дедупом — run 1094).
Правила 318/319: смена тарифа кнопкой (остаток переносится, дата пересчитывается). Кнопка скрыта, пока есть неоплаченный счёт — сейчас outstanding 12 000 ₽, так и задумано.
Защита данных
Публичный API таблиц отдаёт ровно 3 некритичные колонки (columnVisibility: externalDefault=closed) — проверено curl без авторизации.
ПДн (телефоны, email, адреса) внешнему читателю недоступны.
Демо-аккаунты
Координатор/менеджеры: delivered+{olga.smirnova, anna.kovaleva, ivan.petrov, sergey.volkov, mariya.ivanova}@farhome.ru (пароль админский).
Прошедшие письма для показа в ящике: 4 письма (координатору, оценка, продление ×2) — runs 1083, 1086, 1091, 1094.
Известные ограничения (честно)
Форма лида не заполняет service-reference → price_calc у «сырого» лида = null до квалификации (дизайн-разрыв: сервис проставляет координатор).
Факт попадания писем в конкретный ящик показывает человек при демо (у нас подтверждён только accept провайдером).