전체 프로젝트 기획서 진승B2B 구축 기획서
초안 · 검수 대기 문서 버전 v0.1

진승B2B 구축 기획서

B2B이지만 B2C 수준의 쇼핑 경험을 지향하는 진승B2B를 어떻게 설계하고 어떤 순서로 구축할지에 대한 기획입니다. 기존 통합 인증·이카운트·통합 허브를 재사용하고, 온라인 결제 없이 발주 중심으로 설계합니다.

문서 유형 기획서 (설계 개요)
대상 시스템 진승B2B (JS-B2B)
담당 단계 기획 · 설계
최종 갱신 2026-07-10
수정 요청
01

기획 목적 · 접근 방식

본 기획서는 진승 진승B2B(이하 진승B2B)을 어떻게 짓고 어떤 순서로 구축할지를 정의합니다. 요구사항정의서가 "무엇을"이라면, 본 문서는 "어떻게·언제"입니다.

설계는 세 가지 원칙 위에 섭니다.

B2C 수준 경험전화 · 팩스 · 오프라인 발주의 마찰을 소비자몰 수준으로 낮춥니다. 진열 · 탐색 · 할인 경험을 B2C 품질로 설계합니다.
발주 중심 모델온라인 결제를 두지 않습니다. 주문은 발주요청으로 처리하고, 정산은 기존 오프라인 방식을 유지합니다.
기존 시스템 재사용통합 인증 · 이카운트 · 통합 허브를 새로 만들지 않고 연동합니다. 진승B2B는 진열 · 발주 경험에 집중합니다.
02

사업 컨셉 — B2B지만 B2C처럼

대상은 프로샵 · 볼링장 · 스텝 · 직원이며, 각자 다른 가격을 봅니다. 이들이 지금 전화 · 팩스 · 오프라인으로 하는 발주를 소비자몰 수준의 경험으로 대체합니다.

차별점은 진열 · 탐색 · 할인 표현을 B2C 품질로 끌어올리는 것입니다. 구매자는 자기 가격을 명확히 보고, 재고를 확인하고, 몇 번의 클릭으로 발주합니다. "B2B는 투박하다"는 통념을 깨는 것이 이 프로젝트의 지향점입니다.

03

시스템 아키텍처 개요

진승B2B는 FrontEnd · BackEnd · BackOffice 세 계층으로 구성되고, 인증 · 단가/재고 · 사업자검증은 기존 외부 시스템에 연동합니다. 새로 만드는 것은 진열과 발주 경험이고, ID · 가격 · 재고는 이미 있는 시스템이 소유합니다.

진승B2B FrontEnd · BackEnd · BackOffice 연동 통합 인증 JS-AUTH 통합 허브 JS-HUB 이카운트 단가 · 재고 국세청 사업자 진위확인

개념 구성도 — 실제 인프라 구성이 아닙니다.

통합 인증 (JS-AUTH)로그인과 B2B 컨텍스트(거래처 · 구매자 유형 · 가격그룹) 수신. 표준 인증 프로토콜(OAuth 2.0 인가 코드 + PKCE)로 연동합니다.
통합 허브 (JS-HUB)이카운트의 재고 · 단가를 중계하고, 진승B2B의 발주를 전달하는 연동 창구입니다.
이카운트단가 · 재고의 주관리 주체(마스터). 진승B2B는 통합 허브를 통해 이를 실시간으로 반영합니다.
국세청사업자(프로샵 · 볼링장) 등록 시 사업자등록번호 진위확인.

운영(BackOffice)은 독립된 모듈이지만, 여러 사이트를 오가는 관리자 편의를 위해 통합 관리자 포털에서 SSO 단일 로그인으로 진입합니다. 대시보드는 운영 현황과 함께 거래처 · 상품 · 영업사원 실적 등 영업 통계 · 분석을 제공합니다. 상세 통계는 기간 지정 · 필터 · CSV/Excel 내보내기가 가능한 리포트로 제공하며, 거래처도 자기 발주 통계를 조회합니다.

04

사용자 · 권한 모델

사용자는 하나의 진승 ID를 가집니다. B2B와 B2C를 위한 별도 계정은 없으며, 같은 계정이 서비스에 따라 다른 컨텍스트로 동작합니다.

진승B2B에 로그인할 때, 소속 거래처가 여럿이면 어느 거래처로 발주할지 선택하고(하나면 자동 선택), 선택된 거래처의 구매자 유형 · 가격그룹이 그 세션에 적용됩니다. 이 정보는 소비자 서비스 로그인에는 나타나지 않습니다.

사업자(프로샵 · 볼링장)는 국세청 사업자 진위확인과 운영자 승인을 거쳐 활성화되고, 스텝 · 직원은 소속 승인으로 활성화됩니다. 미승인 상태에서는 가격 · 발주가 제한됩니다.

진승B2B 진입은 주로 진승몰에서 링크로 넘어오는 경로이며, 로그인 상태이면 통합 인증(SSO) 세션으로 계정을 이어받고 아니면 통합 인증 로그인을 거칩니다. B2B는 자가 회원가입이 없고, 거래처 관계가 성립 · 승인된 뒤 담당자의 진승ID와 거래처를 매핑해 발주 권한을 활성화합니다.

승인은 운영(BackOffice)의 회원가입 승인 화면에서 이뤄집니다. 사업자 진위확인 결과를 확인하고 구매자 유형 · 가격그룹을 지정해 승인하면 통합 허브(JS-HUB) 원장에 정본으로 기록되고, 통합 인증에는 로그인 claim(원장에서 동기화된 값)으로 활성 상태 반영되며, 승인 · 반려 결과는 신청자에게 알림으로 통지합니다.

구매자 계정 화면(마이페이지)에서는 현재 거래처 컨텍스트 · 주문내역 · 배송지 · 알림 설정을 관리하고, 여러 거래처 소속 시 컨텍스트를 전환합니다. 이름 · 연락처 · 비밀번호 등 계정 · 신원 정보는 통합 인증(SSO)이 소유하므로 마이페이지는 조회만 하고 변경은 통합 인증으로 위임합니다.

거래처는 발주 실적 기반 등급(가격그룹과 독립된 별도 tier)을 자동 산정해 마이페이지에 표시하며, 등급별 혜택의 실제 적용은 후속(확정 대기)입니다.

05

카탈로그 진열 전략

상품 성격에 맞춰 진열 형태를 달리합니다. 하나의 그리드에 모든 상품을 똑같이 늘어놓지 않고, 상품이 가진 이야기에 맞는 형식을 씁니다.

신제품 — 브로셔형브로셔 · 팜플렛 형태로 크게, 스토리 있게 진열합니다. 신제품의 가치를 소비자몰 수준으로 전달합니다.
일반 제품 — 갤러리형갤러리(그리드) 형태로 탐색 · 비교하기 쉽게 진열합니다.
할인 제품 — 강조 진열더 돋보이게 진열하고, 할인 조건(대상 · 기간 · 수량 등)을 명확히 표기합니다.

원칙: 할인가에는 언제나 적용 조건을 함께 노출합니다. 가격만 크게 보이고 조건이 숨겨지는 진열은 만들지 않습니다.

상품 상세 화면

상품 상세는 소비자몰(B2C) 수준의 상세 페이지 형태로 구성합니다. 좌측 이미지 갤러리와 우측 고정 구매 패널(상품명 · 가격 · 옵션 · 수량 · 재고 상태(구매가능/품절) · 담기)을 두고, 하단에 상품 특징 · 스펙 표 · 상세 이미지를 배치합니다.

상품 카테고리는 볼링 상품군(볼링공 · 가방 · 의류 · 가드 · 신발 · 액세서리)을 따르며, 상품군마다 옵션 축이 다릅니다(공=무게, 신발=사이즈 등). 볼링공의 커버스톡 · 코어 등 핵심 스펙은 이미지가 아닌 정규화된 표로 제공해 비교 · 검색이 가능하게 합니다.

기존 볼링 커머스는 상품별 단일 판매가만 사용했으나, 진승B2B는 거래처 가격그룹 단가를 실제로 적용하고(이카운트 · 통합 허브 실시간), 재고도 통합 허브 실시간으로 확인합니다. 결제 · 포인트 · 즉시구매는 두지 않고 발주요청으로 잇습니다. 단체 · 커스텀 주문(유니폼 프린팅 등)은 별도 주문 플로우로 후속 정의합니다.

상품 목록(카탈로그) 화면

상품 목록은 그리드형 카탈로그로, 카테고리 내비게이션 · 상품 카드 · 정렬 · 필터로 구성합니다. 카테고리는 볼링 상품군과 브랜드 축으로 나뉘고, 카드에는 가격(로그인 시 거래처 가격그룹 단가)과 배지([신제품]/[할인]/[품절])를 노출합니다. 필터에 규격(무게 · 사이즈)을 포함해 B2B 발주에 필요한 상품을 빠르게 좁힙니다.

담기는 옵션 선택이 필요해 상세 화면에서 이뤄지며, 목록은 탐색 · 진열에 집중합니다.

검색은 상품명 · 코드 · 브랜드에 더해 무게 · 커버스톡 등 스펙까지 대상으로 하며(예: "15파운드 펄"), 자동완성 · 인기 검색어를 제공합니다. 검색 결과는 목록 화면(카드 · 필터 · 정렬)을 재사용합니다.

이벤트 · 프로모션은 테마별 기획전 · 할인 · 수량 혜택 · 신제품 런칭으로 구성하며, 전체 또는 특정 거래처 유형 · 가격그룹을 대상으로 노출합니다. 할인 단가의 소스(이카운트 / 몰 자체 프로모션)는 확정 대기 항목을 따릅니다.

홈(메인)은 소비자몰 수준의 랜딩 구조(고정 GNB · 히어로 배너 · 카테고리 퀵링크 · 신제품/베스트 그리드 · 푸터)를 따르되 감성 모듈을 B2B 실용 모듈(신규·재입고 · 대량주문/견적 진입)로 치환합니다. 비로그인 홈은 가격 대신 로그인 유도 · 수량 미표시, 로그인 홈은 거래처 맞춤(재주문 · 큐레이션)을 더합니다. 세부 모듈 · 순서는 디자인 단계 참조 기준입니다. 홈 배너 · 팝업은 운영이 위치 · 기간 · 대상 · 노출(체크박스)로 관리합니다.

품절 상품은 재입고 알림을 규격(SKU) 단위로 신청받아, 통합 허브(이카운트)의 입고를 감지해 카카오 알림톡 · 이메일로 알립니다. 관심상품(위시리스트)은 담당자 개인 단위로 저장 · 관리합니다. 선택 상품의 스펙 비교는 가외(향후) 기능으로 둡니다.

영업 · 홍보 도구 · 재고 표시

재고는 화면 어디에서도 구매가능 / 품절만 표시하고 수량(숫자)은 노출하지 않습니다(발주 시 내부 재고 확인은 유지). 또한 판매중 상품으로 거래처 홍보용 브로셔(웹링크 · PDF, 가격 · 재고 비노출)를 만들어 전송하고 — 웹링크는 페이지를 넘겨보는 flipbook 뷰어로, 상품 데이터에서 동적으로 생성합니다 — 영업사원 카탈로그에서 거래처를 선택해 그 거래처 가격으로 상담 · 견적을 지원합니다.

06

발주 · 정산 흐름

진승B2B의 주문은 소비자몰의 "결제"가 아니라 발주요청입니다. 흐름은 다음과 같습니다.

1 · 담기 (재고 확인)장바구니에 담을 때 통합 허브(JS-HUB)에 재고를 확인하고, 재고가 있을 때만 담깁니다.
2 · 주문 확정 (재고 재확인 · 차감)결제가 없으므로 주문 확정이 곧 발주 확정입니다. 확정 시 재고를 다시 확인하고, 통합 허브 주문 API로 재고를 차감합니다.
3 · 확정 후 변경 불가확정 후 구매자는 수정 · 취소할 수 없습니다. 본사 · 영업사원 전화 요청 안내를 노출하며, 확정 주문 변경은 관리자만 가능합니다.
4 · 접수 · 처리운영(BackOffice)에서 확정된 발주를 접수하고 처리합니다.
5 · 정산 (오프라인)세금계산서 발행 · 수납 · 정산은 기존 오프라인 / 이카운트 프로세스를 따릅니다.

발주 시 거래처에 등록된 여러 배송지 중 하나를 선택하며, 신규 배송지 추가 · 기본 배송지 지정이 가능합니다. 배송지는 거래처 단위로 공유합니다. 합배송은 스텝 주문에 한정되며, 대표가 취합그룹을 개설 · 초대하면 스텝이 발주 확인에서 취합 중(마감 전) 그룹에 합류하고(각 발주 독립 · 불변), 대표가 취합 마감하면 그룹 전체가 한 운송장으로 배송됩니다. 마감 전에는 그룹의 어떤 발주도 배송준비로 넘어가지 않습니다.

담기와 확정 사이에 장바구니발주 확인 단계를 둡니다. 장바구니에서 항목 · 수량 · 거래처 가격그룹 단가 · 합계(공급가 · 부가세 구분)를 확인하고, 발주 확인 단계에서 배송지를 선택하고 "확정 후 수정 · 취소 불가" 안내를 확인한 뒤 최종 확정합니다. 확정된 발주는 발주서로 인쇄 · PDF 출력할 수 있으며, 세금계산서 · 거래명세서는 별개(오프라인 · 이카운트)입니다.

쿠폰은 발주 예상금액을 깎는 발주 할인으로만 지원하며(적립금은 후속), 온라인 결제가 없으므로 실제 정산 반영은 이카운트 연동(확정 대기)을 따릅니다. 거래명세서 · 세금계산서 · 미수 잔액은 이카운트에서 조회만 제공하며(정산 · 수납은 오프라인), 미수 관리 · 여신은 범위 밖입니다.

배송 완료 후 하자 · 오배송 등에 대한 반품 · 교환은 사후 요청 · 승인으로 처리하며(확정 후 불변과 별개), 재고 원복과 환불의 정산 반영을 연계합니다.

운영은 배송 · 물류 관리에서 운송장(개별 · 일괄) · 합배송 묶음 · 피킹 · 배송 추적 · 반품 회수를 한 곳에서 처리합니다.

온라인 결제(PG) · 여신 · 미수는 포함하지 않습니다. 기존 거래 · 정산 방식을 그대로 유지하는 것이 거래처와의 관계에 맞고, 시스템의 책임 범위를 명확히 하기 때문입니다.

고객 지원은 전화 · 담당 영업이 우선이며, 온라인 1:1 문의(내역 조회 · 답변 알림) · FAQ · 공지를 보조로 제공합니다. 공지는 전체뿐 아니라 특정 거래처 유형 · 가격그룹 대상으로도 노출할 수 있습니다. 또한 대량주문 · 견적 문의를 구조화해(품목 · 수량 · 납기) 담당 영업이 견적으로 회신합니다. 상품별 문의(Q&A)는 기본 비공개로 받아 운영이 답변합니다.

07

외부 연동

진승B2B가 연동하는 외부 시스템과 그 역할 · 방향입니다.

연동 대상역할방향
통합 인증 (JS-AUTH)로그인 · B2B 컨텍스트(거래처 · 유형 · 가격그룹) 수신읽기
통합 허브 (JS-HUB)재고 · 단가 조회, 발주 전달읽기 · 쓰기
이카운트단가 · 재고 마스터 (통합 허브 경유)읽기
국세청사업자등록번호 진위확인조회
택배 (배송조회)운송장 기반 배송 상태 조회조회
카카오 알림톡발주 상태 전이 알림 발송발송
참고 이카운트는 거래처 조회 Open API를 제공하지 않습니다. 거래처는 기존 이카운트에서 CSV / Excel로 내보내 일괄 업로드하거나 건별 등록 폼으로 추가합니다(운영 기능).
08

구축 단계

위험이 낮은 곳부터 점진적으로 구축하고, 각 단계는 독립적으로 검수할 수 있도록 나눕니다.

1단계 · 카탈로그 + 통합 로그인상품 진열(브로셔 · 갤러리 · 할인)과 통합 인증 로그인의 씬 슬라이스를 먼저 세웁니다.
2단계 · 가격 · 재고 연동이카운트 단가와 통합 허브 재고를 실시간으로 반영합니다.
3단계 · 발주 + 운영(BackOffice)발주요청 · 접수 · 처리와 상품 · 발주 관리 화면을 구축합니다.
4단계 · 사업자 진위확인 · 거래처 승인국세청 진위확인과 거래처 승인 · 권한 반영(provisioning)을 완성합니다.
09

정보구조(IA) · 사이트맵

지금까지 정의한 화면을 구매자 몰(FrontEnd)과 운영(BackOffice) 두 영역으로 종합한 정보구조입니다. 세부 명칭 · 계층은 상세 설계(와이어프레임)에서 조정될 수 있습니다.

FrontEnd — 구매자 몰
로그인 · 온보딩진승몰 링크 · SSO 진입, 거래처 매핑 승인
홈(메인)히어로 배너 · 카테고리 · 신제품 · 베스트 · 프로모션 · 재입고 · 공지
상품상품 카테고리(상품군 대·중·소 + 브랜드 메가메뉴) · 카탈로그(목록 · 검색) · 상품 상세(옵션/규격 · 스펙 · Q&A · 재입고 알림) · 이벤트/기획전 · 프로모션 · 상품 비교(향후)
발주장바구니 → 발주 확인 → 주문 확정
마이페이지계정요약 · 거래처 전환 · 주문내역(상세 · 발주서 · 반품/교환 · 발주 리포트) · 배송지 · 합배송 취합그룹 관리(대표 · 스텝) · 위시리스트 · 쿠폰 · 재입고 알림 · 정산/거래명세 조회 · 거래처 등급 · 알림 설정
고객센터연락처 · 담당 영업 · 1:1 문의 · FAQ · 공지 · 대량주문/견적
BackOffice — 통합 관리자 포털 · JS-B2B 모듈
대시보드영업 분석(거래처 · 상품 · 영업사원 · 재고회전)
발주 관리상태 · 확정주문 통제 · 배송/물류 · 합배송
재입고 알림 관리신청 현황(대기자 수) · 재입고 후보 · [재입고 알림 발송] 관리자 게이트(발송 시에만 알림·"재입고" 노출) · 발송 이력
상품 관리등록 · 진열 · 옵션/SKU · 스펙
거래처 · 스텝회원가입 승인 · 스텝 조회(소속 · 가격그룹, 조회 전용) · 배송지 · 등급 — 스텝 계정 관리(매핑 · 승인 · 가격그룹 · 대표)와 거래처 원장은 JS-HUB(+통합 인증) 소관
가격 · 재고이카운트 · JS-HUB 조회
영업 · 홍보브로셔 · 영업 카탈로그 · 프로모션 · 배너/팝업 · 공지
문의 · CS1:1 · 상품 Q&A · 견적 · 반품/교환 처리
통계 · 리포트주문 통계 · 리포트(CSV/Excel)
권한 · 감사관리자/영업 역할 · 감사 로그
10

확정 대기 · 다음 단계

아래 항목은 현시점에서 확정되지 않았으며, 외부 회신 또는 후속 검토로 확정합니다.

이카운트 연동 상세
거래처는 CSV / Excel 업로드 · 건별 폼으로 적재(Open API 미제공). 거래처 ↔ 가격그룹 매핑 방식은 확정 대기.
통합 허브(JS-HUB) 재고 · 발주 인터페이스
재고 조회 · 발주 전달 규격 확정 대기.
국세청 사업자 진위확인 연동
진위확인 서비스 이용 조건 확정 대기.
할인 정책 소스
이카운트 단가 기반인지 몰 자체 프로모션인지 확정 대기.
택배 · 카카오 알림톡 연동
배송조회 연동 방식과 알림톡 발신프로필 · 템플릿 승인 확정 대기.
다음 단계 산출물

정보구조(IA) → 와이어프레임 → 디자인 시안 → 퍼블리싱 가이드 → 개발 설계(DB/API) 순으로 상세 설계를 산출하고 단계별로 검수합니다.

본 문서는 초안(v0.1)이며 검수 대기 상태입니다. 내용 확인 · 수정 요청은 상단의 수정 요청을, 검수 완료 시 검수 승인을 이용해 주세요.