---
title: "다이렉트마켓 앱 PRD & 전체 플로우 (Claude Design 핸드오프)"
from: claude-code
to: ["jadong"]
project: "direct-market"
date: 2026-06-24T21:13:11.142917+09:00
status: sent
type: report
---

# 다이렉트마켓 앱 — PRD & 전체 플로우 (Claude Design 핸드오프)

> 종합 출처: `claude-chat_ad8dac4a.md`(앱/TM/견적, 45턴) + `claude-chat_9a364a48.md`(실사 운영, 133턴) + 구태진 통화(2026-06-24) + KPS 계산기 역설계(`kps-calculator-LOGIC.md`, 코드 `~/projects/dm-quote-engine/`).
> 작성 2026-06-24. **원칙: 대화 근거만. 미확정은 §9 Open Questions로 분리(추측 금지).**
> 이 문서의 1차 소비자 = Claude Design(앱 UI 생성). 2차 = 개발/콜센터 운영.

---

## 1. 제품 한 줄 정의
**"매장 인프라 OS"** — 사장님이 자기 매장(CCTV·포스·인터넷·보험·키오스크)을 **디지털트윈**으로 올리면, 공급사들이 그 위에 **입찰(역경매)**해 들어오고, 사장님은 **'내 견적서' 인박스**에서 골라 결정한다. 첫 진입 카테고리 = **CCTV/보안 4사 비교견적**.

핵심 wedge = **"여러 보안회사 견적을 한꺼번에 비교"**(태진 통화 소개문구) + **투명성**(렌탈/약정형 KT·캡스 vs 구매형 키퍼를 한 화면에 나란히).

## 2. 사용자(페르소나)
- **사장님(고객, 핵심 사용자)**: 신규 개업/교체 검토. 영업사원마다 다른 가격·말에 지쳐 있음. 앱으로 4사 견적을 한 번에 받고 싶다.
- **콜센터 상담원(구태진 등)**: 인입콜 응대 → 앱 가입 유도(반강제) → 정보 인테이크 → 견적/실사 접수. (별도 콜센터앱 사용)
- **실사원(신우성/이학영)**: 현장 방문, 도면/사진 확보, 설치지시서 생성.
- **Admin(영원/다이렉트마켓 본사)**: 도면 입력→디지털트윈화, 4사 입찰 취합, 인박스 수기 적재(반자동 단계).

## 3. 핵심 사용자 플로우 (앱)

### 3.1 온보딩
1. **TM 문자 수신** → "다운받아서 카카오/네이버 간편가입 해주세요" → **앱 다운로드 직행**.
2. **간편가입** (카카오/네이버) — 상담사가 통화 중 반강제로 완료시킴.
3. **매장 특정**: "매장명이나 주소 둘 중 편한 걸로 입력" → DB 매칭을 **한 테이크**로 끝냄.

### 3.2 내 매장 (디지털트윈의 시작)
- **빈 상태(store:0)**: 화면 중앙에 **'+' 버튼을 아주 크게**, "겁나 누르고 싶게" **깜빡깜빡 동적 애니메이션**. → 첫 탭 = 트윈 생성 = 데이터 수집 시작. (★시그니처 인터랙션)
- 매장 1개+ : 매장 카드 리스트, 각 카드에 서비스 슬롯 요약.

### 3.3 도면 입력 → 디지털트윈
- **경로 ① 고객 직접**: 폰으로 도면 업로드, 또는 앱에 띄운 도면에 **"달고 싶은 데 손가락 터치"**로 설치위치 지정(+ 나중에 현장 사진 첨부).
- **경로 ② 상담사 대리**: 도면 없으면 상담사가 고객 동의 후 PC로 **세움터(건축물현황도) 대리 발급** → Admin이 어드민에서 도면 입력 → **디지털트윈화 완료 상태로 상담 진행**.

### 3.4 서비스 슬롯 (매장의 모든 인프라)
각 슬롯 = "현재 쓰는 것 + 비교견적 받기" 진입점.
- 포스기 · 단말기
- **CCTV · 녹화기 · 출입통제 · 출동** (MVP 진입점)
- 보험
- 인터넷 · 전화
- 키오스크(프론트 포함)
- **구독**: 케어온, 리뷰온

### 3.5 '내 견적서' 인박스 (★핵심 화면)
- 인박스 아이콘. 카테고리별로 벤더 견적이 "도착"하면 카드로 쌓이고 **체크박스 선택**.
- 모든 알림이 앱으로 ("견적·진행 알림 전부 거기로").

**CCTV/보안 — 4사 비교 카드 (원문 필드):**
| 벤더 | 표기 필드 |
|------|-----------|
| ☐ **KT텔레캅** | "견적서 도착!" · 월요금 / 지원금 / 약정·위약금 |
| ☐ **한화비전키퍼** | 월요금(신용카드 할부 36개월) / 지원금 / **약정·위약금 없음(구매형)** |
| ☐ **캡스(SK쉴더스)** | 월요금 / 약정·위약금 / 지원금 |
| ☐ **에스원(세콤)** | (표기 방식 미확정 — §9) |

**포스기:** 토스 / 페이히어.

## 4. 화면 목록 (Claude Design용)
1. **스플래시/로그인** — 카카오·네이버 간편가입.
2. **매장 등록** — 매장명 or 주소 입력(한 테이크 DB 매칭).
3. **내 매장 (빈 상태)** — 중앙 대형 깜빡이는 '+' (시그니처).
4. **내 매장 (목록)** — 매장 카드 + 서비스 슬롯 요약.
5. **서비스 슬롯 상세** — 카테고리별 "현재/비교견적 받기".
6. **도면/디지털트윈** — 업로드 + 터치로 설치위치 지정.
7. **'내 견적서' 인박스** — 4사 비교 카드 + 체크 선택(★).
8. **견적 상세** — 벤더별 월요금/지원금/약정/위약금 + 선택.
9. **구독** — 케어온/리뷰온.
10. (알림 센터 / 마이페이지)

## 5. 데이터 모델 (앱 ↔ 백엔드)
- **Store**(상호·주소·사업자/도면/디지털트윈/owner)
- **ServiceSlot** ×카테고리 (현재업체·상태·비교견적)
- **RFQ**(store_id·카테고리·사양 §1~6·배치도)
- **Bid**(벤더·월요금·지원금·약정/위약금·형태[렌탈/구매]·상태[도착/선택])
- **User**(카카오/네이버) · **Admin**(도면 입력→트윈화)
- 인박스 = Bid를 ServiceSlot별 그룹핑 + 체크 선택
> (9a364a48의 풀퍼널 온톨로지와 정합: customer / customer_phone[한 고객 다수 번호] / journey_events[lead·consult·inspection·order·install·cs] / artifact[floorplan·quote·work_order·photo])

## 6. 연결 시스템 (앱 밖, 맥락)
- **TM 스크립트**(상담원 자산): 오프닝→자격·현장파악→도면→포지셔닝("4사 동시 동일조건 견적")→원격/방문 분기→보조금·결합→앱·클로징. **인테이크 12필드**(구분/업종/주소/규모/기존업체+약정만료/대수/출입통제/보완재/도면여부/사진가능/연락처·결정권자/인테리어 단계).
- **역경매 RFQ 엔진**: 8섹션 사양서 — §1~6 다이렉트마켓 작성(고객·현장/요구구성/배치도/카메라리스트/BOM/현장특이사항), **§7만 4사 입찰란**(월정료36·60개월/설치비·보증금/지원금/보상한도/결합할인/약정), §8 고객선택. → "사과 대 사과" 비교.
- **키퍼 실사 배정 모듈**(콜센터앱 추가, EC2): 서울/경기, 인당 2건/일, 신우성/이학영 2인 권역 자동배정 + 캘린더 즉답. (상세 규칙은 일부 미확정 — §9)
- **KPS(4사) 견적엔진**: `~/projects/dm-quote-engine/` LIVE — KT텔레캅 수익로직 코드화+검증, 키퍼/캡스/세콤 데이터 슬롯. 인박스 견적값의 산출 백엔드.
- **리드 경제**: 메타광고 CPC 273원, CAC ~8천원, 키퍼 리드 1.5만원 → self-funding(ROAS~1.9x). 키퍼 부적합 리드 = 다이렉트마켓 ICP(공짜 필터).

## 7. MVP & 단계
- **MVP = CCTV/보안 인박스 1칸**. 초기엔 **상담사가 4사 견적 수기로 인박스에 꽂는 반자동**(빈 깡통 방지) → 자동화는 다음.
- Phase 2: 도면 디지털트윈 자동화, 견적엔진 4사 자동 산출, 타 서비스 슬롯 확장.

## 8. 디자인 디렉션 (Claude Design)
- 톤: 사장님이 "겁나 누르고 싶은" 친근·도파민. 비교의 **투명성**이 시각적 주제.
- **시그니처 1**: 빈 매장의 대형 깜빡이는 '+'.
- **시그니처 2**: 4사 견적 비교 인박스 카드(구매형 vs 렌탈 약정형 한눈 대비).
- 모바일 우선. 한국어. 보안/CCTV지만 차갑지 않게.

## 9. Open Questions (확정 필요 — 추측 안 함)
1. **인박스 4사 vs 5사**: 역경매는 5사(+U+), 앱 인박스 예시엔 3사만 필드 작성. 에스원·세콤·U+/현대 노출 방식 미확정.
2. **TM 케이스 5종 + 이의제기 5종 실제 텍스트**: 파일 산출만, 본문 미전개.
3. **세움터 대리신청 법적 정형화**: 동의/녹취 표준문구 미확정.
4. **키퍼 vs 다이렉트마켓 이해상충 분기 규칙**: 인바운드 리드를 어디서 역경매로 보낼지.
5. **실사 배정 모듈 미정 8건**: 캘린더 백엔드(Google/자체/Airtable), 슬롯 길이·이동버퍼, 경기 경계, 권역 묶기, 알림 채널, 조정연 역할, EC2 통합.
6. **키퍼 리드 15,000원 조건 / CAC n=1**: 검증 전.
7. **벤더중립 BOM**: 현재 BOM=KT 모델코드 → 4사 비교하려면 품목 추상화 필요.
8. **나머지 3사(키퍼/캡스/세콤) 단가·수수료 데이터**: 견적엔진 채우려면 필수(키퍼 대당 11,000/월·구매형 일부만 확보).

---
*부속 산출물: `kps-calculator-LOGIC.md`, `kps-products.csv`, `~/projects/dm-quote-engine/`(코드+21테스트), `claude-chat_*.md`(원천 대화).*
