Перейти к основному содержимому

UC-OVR-005. От лида до сделки (4 фазы)

Назначение

Под-воронка внутри crm (матрица «От Лида до Сделки»): как активный лид проходит фиксацию клиента у застройщика и превращается в сделку. Оркеструет модули crm (lead → fixation → deal) и застройщика (одобрение фиксации); события потребляют rewards/notifications. Является фазами 3–5 сквозной воронки UC-OVR-004.

Metadata

ПолеЗначение
Статусdraft
Owning teamcrm
Primary capabilitylead-to-deal-conversion
Risk levelmedium

Scope И Участники

УчастникРоль
АгентВедёт лид, отправляет фиксацию, создаёт сделку
Менеджер застройщикаОдобряет/отклоняет фиксацию
crm/leadАктивный лид пары агент↔инвестор
crm/fixationЗапрос фиксации клиента у застройщика (record-level)
crm/dealСделка после одобрения/решения
rewards / notificationsUser-centric метрики агента, уведомления

Preconditions

  • Есть активный лид (один активный на пару агент↔инвестор) — из UC-OVR-001/003.
  • Объект/проект застройщика опубликован; у агента есть право фиксации в scope.

Основной Сценарий

  1. Фаза 1 — квалификация. Агент уточняет пожелания (update-lead-wishes), фиксирует события ленты лида.
  2. Фаза 2 — фиксация. Агент отправляет фиксацию клиента застройщику (create-fixation.md, UC-FIX-001); видимость — record-level (агент + руководитель/группа).
  3. Фаза 3 — решение застройщика. Менеджер застройщика одобряет (UC-FIX-002) → pin.crm.fixation-approved.v1, либо отклоняет (UC-FIX-003) → pin.crm.fixation-rejected.v1. rewards инкрементит FixationsApprovedCount по AgentUserId.
  4. Фаза 4 — сделка. По одобренной фиксации/лиду создаётся сделка (UC-CRM-002) → pin.crm.deal-created.v1; лид помечается сконвертированным. Дальше — бронь/этапы (UC-OVR-006).

Sequence

Постусловие

После успешного прохода (одобрение) гарантированно:

  • активный Lead пары агент↔инвестор квалифицирован (уточнены Wishes, зафиксированы события ленты);
  • создан FixationRequest (record-level: владелец-агент + группа/руководитель), одобренный застройщиком; опубликовано pin.crm.fixation-approved.v1;
  • rewards инкрементил user-centric метрику FixationsApprovedCount по AgentUserId;
  • создана Deal из лида/одобренной фиксации с иммутабельными снапшотами компании/агента; лид помечен сконвертированным; опубликовано pin.crm.deal-created.v1.

При отклонении: сделка не создаётся; публикуется pin.crm.fixation-rejected.v1; лид остаётся активным, агент может уточнить и повторить в рамках окна фиксации. Право на комиссию в этом сценарии не возникает (только при deal-completed, см. UC-OVR-004).

Альтернативные Сценарии И Отказы

СитуацияПоведение
Фиксация отклоненаСделка не создаётся; pin.crm.fixation-rejected.v1; агент может уточнить и повторить (правила окна фиксации)
Лид истёк до фиксацииpin.crm.lead-expired.v1; требуется новый лид (реактивация Expired → Active возможна по правилам лида)
Конкурирующая фиксация того же клиента другим агентомРазрешается правилами фиксации застройщика (первичность/окно); проигравший видит отказ по правилу первичности
Нет права фиксации в scope / просрочен доступОтправка фиксации запрещена (доступ проверяется на момент операции)
fixation-approved доставлен rewards повторноИдемпотентно — метрика FixationsApprovedCount не инкрементится дважды
Право на комиссиюВозникает не здесь, а при завершении сделки (deal-completed), см. UC-OVR-004

Согласованность И Идемпотентность

  • Видимость фиксации. FixationRequest защищён record-level (владелец-агент + группа/руководитель); застройщик видит фиксацию как адресат решения. Смена видимости при развязке агента не переписывает снапшот AgentUserId.
  • Событийная последовательность. fixation-approved/fixation-rejected публикуются атомарно с решением застройщика; rewards применяет метрику с задержкой (< 5 мин). Создание сделки — отдельный шаг агента уже по одобренной фиксации/лиду (не автоматический эффект события).
  • Идемпотентность. Потребители дедуплицируют по MessageId; инкремент FixationsApprovedCount — first-seen по факту одобрения, повтор доставки не удваивает метрику.
  • Разделение фиксации и права на комиссию. Одобрение фиксации даёт метрику/основание, но не начисление; комиссия материализуется только при deal-completed.

Acceptance Criteria (Given/When/Then)

  • Happy (лид → сделка). Дано: активный лид, у агента есть право фиксации в scope. Когда: агент отправляет фиксацию, застройщик одобряет, агент создаёт сделку. Тогда: fixation-approved и deal-created опубликованы, FixationsApprovedCount агента увеличен, лид помечен сконвертированным.
  • Отклонение. Дано: отправленная фиксация. Когда: застройщик отклоняет. Тогда: fixation-rejected, сделка не создаётся, лид остаётся активным.
  • Лид истёк. Дано: активный лид без фиксации. Когда: истекает срок лида. Тогда: lead-expired, для фиксации нужен новый/реактивированный лид.
  • Нет права фиксации. Дано: у агента нет/просрочено право в scope. Когда: агент отправляет фиксацию. Тогда: операция запрещена, фиксация не создаётся.
  • Комиссия не здесь. Дано: фиксация одобрена и сделка создана. Когда: сценарий завершён. Тогда: комиссия не начислена — право возникает только при deal-completed.

Source Of Truth И Данные

ДанныеВладелецConsistency rule
Lead / LeadEventcrm/leadАктивная пара уникальна
FixationRequestcrm/fixationRecord-level (владелец + группа); снапшот AgentUserId
Dealcrm/dealСоздаётся из лида/фиксации; иммутабельные снапшоты компании/агента

Контракты И Зависимости

Наблюдаемость

  • critical metrics: конверсия лид→фиксация→сделка; доля отклонённых фиксаций; time-to-fixation.
  • trace path: crm (lead → fixation → deal) → шина событий → rewards/notifications.
  • alerts: рост отклонений фиксаций; лиды, застрявшие в квалификации.

Риски И Guardrails

  • Риск: двойная фиксация клиента. Control: правила окна/первичности фиксации застройщика.
  • Риск: преждевременное начисление комиссии. Control: право на комиссию — только по deal-completed.

Обратные ссылки

Автоссылки: где используется этот документ.