[결론] 약나루(藥나루)는 환자(앱) – 플랫폼(서울랩스 운영) – 약국(관리자웹)을 잇는
처방약 조제·배송 서비스임. 부산 규제자유특구 실증용으로
사용자 앱 36화면 · 관리자웹 20화면 · API 127개가 구현 완료(2026.08 기준)됐고, 전국 확장(요양원 B2B2C → 도서산간·재가 B2C)은
사업계획서(2026.09.13 · 서울랩스 · 29장)가 정의함.
🎯 지금 가장 큰 변수는 기술이 아니라 규제 — 의료법 제34조의5(2025.12.23 신설 ·
2026.12.24 시행)의 복지부령(허용 지역·인도 방법)과 2026.8.20 약사법 개정의 플랫폼 도매 겸영 해석이 사업 구조(플랫폼–공급사 분리)에 그대로 적용될지 여부임 →
시장 조사 §3.
127
API 오퍼레이션 (앱 53 · 관리자 74)
3
수익 축 (대행 수수료 · 커머스 · B2B)
이 문서는 아래 4개 원자료를 하나로 묶은 통합 SoT 임: ① 약나루 플랫폼 사업계획서(2026.09.13 · 서울랩스 · 29장 — 2026.06 구판 22장은 이력 보존) ② 사용자 앱·관리자웹 화면기획서(2026.08.20) ③ 약나루 API Swagger(2026.09.14 스냅샷) ④ 부산TP 블록체인 공모 신청서(2025.03). 원자료 간 상충은 §10 에 모았고, 비자명한 판단에는 신뢰도 태그를 붙였음.
1사업 정의 — 무엇을 하는가
환자(요양원·도서산간·재가 만성질환자)가 처방전을 앱으로 보내면, 플랫폼이 약국에 조제를 의뢰하고 조제된 약을 자택·요양원으로 배송(또는 약국 방문 수령)하는 서비스임. 의약품 공급은 별도 공급사(루다)가 약국에 하는 3자 연결 + 공급 분리 구조임.
환자 · 요양원
처방전 등록 · 결제 · 수령
앱 촬영(OCR) 또는 방문 · 무료배송 (사업계획서: 포인트 적립 → 건기식)
플랫폼 (약나루 / 서울랩스 운영)
접수 · 진위 확인 · 배송 · CS
관리자웹 운영 · 자격 심사 · 건강샵 · 푸시
약국 (약사)
처방 검토 · (대체)조제 · 복약지도
관리자웹 약사 계정 · 자기 약국 데이터만
공급사 (루다)
제네릭 의약품 공급
약국에 직공급. 개정판(2026.09)에서 플랫폼의 약 판매 마진은 삭제됨 — 조제약 유통 마진 무(無)
환자 · 보호자
- 무료 배송 — 자택·요양원 수령
- 약값은 동일(가격 경쟁 아님)
- 도서산간 접근성 해소
약국
- 방문 부담 없는 신규 환자군
- 대체조제·복약지도 본업 집중
- 배송·CS 는 플랫폼이 대행
플랫폼
- 대행 수수료 + 건기식 커머스 + B2B 구독
- 데이터·물류 인프라 자산화
- 제도 변화 선제 대응 선점
타겟과 진입 순서
| 세그먼트 | 정의 | 순서 |
| 요양 시설 | 장기요양 수급자가 입소한 노인요양시설·공동생활가정 — 정기 처방 수요 집중, 촉탁의(월 2회 진찰) 처방전을 시설 단위로 집적 | 1차 (B2B2C) |
| 도서·산간 | 약국 접근이 어려운 섬·벽지 거주자 — 배송이 필수재 | 2차 (B2C) |
| 재가 만성질환자 | 거동 불편 고령·만성질환·등록장애인 — 반복 처방 자택 수령 | 2차 (B2C) |
문서 계보 — 제안 → 계획 → 구현
2025.03
공모 제안
블록체인 스마트오더 — 비헬씨 연계, 4사 컨소시엄(서울랩스 = 블록체인) ·
요약
2026.06
사업계획서 (구판)
전국 약 배송 — 요양원 B2B2C · 루다 공급 · 건기식·포인트 ·
HTML 판
2026.08
실증 구현
약나루 앱 36 · 관리자웹 20 · API 127 —
앱 ·
관리자 ·
API
2026.08.24
시장 조사
규제(8.20 약사법)·TAM/SAM/SOM·경쟁 ·
보고서
2026.09.13
사업계획서 개정판
의료법 제34조의5 근거 · 조제약 마진 무(無) · 채널 A/B · 용마로지스 ·
HTML 판
2규제 환경과 허용 대상
2025.12.23
의료법 제34조의5 신설·공포
비대면진료 제도화 + 약국 외 인도의 약사법 제50조① 예외 근거
2026.08.20
약사법 개정 통과
약국 외 장소 약 전달 허용 + 플랫폼 도매 겸영 금지 (사업계획서는 "2026.06 예정"으로 기재)
2026.12.24
의료법 제34조의5 시행
섬·벽지 · 장기요양 · 장애인 · 감염병 · 희귀질환 5개 환자군 → 복지부령(지역·방법) 확정 후 전국 적용
법적 허용 대상 ↔ 앱 자격 유형 매핑
| 법적 재택수령 허용 대상 (사업계획서 §04) | 앱 자격 유형 코드 | 구현 방식 |
| 65세 이상 장기요양등급자 | ltc65plus | D-001 서류 첨부 → 관리자 승인(S) 후 택배 수령 가능 |
| 등록 장애인 | disabled | 등록증·증명서 첨부 → 동일 |
| 감염병 확진자 | infectiousDisease | 격리통지서 등 첨부 → 동일 |
| 희귀질환자 | rareDisease | 병원급 의료기관 발급 서류만 인정 |
| 섬·벽지 거주자 | — | 자격 유형 없음. 배송지 저장 시 POST /pharmacies/check-delivery 로 우편번호·도로명이 '비배송(산간·도서) 지역'이면 택배 불가 판정 — 즉 도서산간은 허용 대상이 아니라 배송 제외 지역으로 취급됨 신뢰도 90 · 근거: 직접확인(API 설명) |
⚠ 구조적 리스크 — 플랫폼 도매 겸영 금지 사업계획서는 플랫폼(서울랩스)과 공급(루다)을 분리해 대응한다고 했으나, 8.20 통과 조항이 특수관계 공급사까지 겸영으로 볼지는 하위법령·해석에 달림. 시장 조사 보고서 결론과 동일하게 법률 검토가 선행 조건임. 또 사업계획서의 '도서산간 = 핵심 타겟'과 앱의 '도서산간 = 비배송 지역' 은 방향이 반대라 정책 확인이 필요함.
3시스템 구성
📱 사용자 앱 (회원)
- React Native · 하단 5탭(홈/처방전 등록/처방 이력/건강샵/더보기)
- 36 화면 · Android 에뮬레이터 캡처 기준
- PIN 6자리 / 생체 인증 간편 로그인 · 강제 업데이트·점검 플래그 부팅 모달
🖥 관리자 웹 (약사·운영자)
- Chrome 1440px · 좌측 사이드 메뉴 = 기능 지도
- 20 화면 · SYSTEM_ADMIN 전체 / PHARMACY_ADMIN 자기 약국만
- 처방전·주문·정산·자격·회원·약국·건강샵·게시판·계정·약품 마스터
🔌 백엔드 API
- 단일 REST 서버
/api/v1 · 읽기 GET / 쓰기 POST - JWT 2종(회원·관리자) · access 30분 / refresh 14일
- Spring Boot 계열 신뢰도 70 · 근거: 추론(Spring Data Page·actuator 언급)
외부 연동
| 서비스 | 용도 | 상태 |
| CLOVA OCR (네이버) | 처방전 촬영본 인식 — 주민번호 자동 마스킹 + 교부번호·병원·의사·교부일·약품코드 파싱 → POST /prescriptions/qr-callback | 구현 (OCR 전환) |
| 네이버맵 | 약국 선택 화면 지도 보기 · 마커 | 구현 |
| Kakao(다음) 우편번호 | 배송지·건강샵 주소 검색 (WebView) | 구현 |
| 토스페이먼츠 | 건강샵 결제창 SDK v1 (WebView) — 간편결제·카드 | 테스트 키 · 승인 API 미연동 |
| FCM (Firebase) | 푸시 — 처방전 상태 변경·자격 심사·공지·문의 답변 자동 발송, 알림함 이력 | 구현 |
| NICE 본인인증 | 회원가입 DI 중복 확인 (POST /members/check-di) | 구현 |
| 심평원 약가파일 | 약품 마스터 — 월 1회 엑셀 업로드 전체 교체(2만여 건) → 약품코드 9자리 자동 조회 | 구현 (수동 적재) |
| 이메일 | 임시 비밀번호 발송 (회원·관리자) | 구현 |
| 택배사 | 송장번호·택배사명 약사 수기 입력 — 추적 API 연동 없음 | 수기 |
핵심 데이터 (Swagger 스키마 설명에서 확인된 테이블)
| 테이블 | 내용 |
| member_info | 앱 회원 — 상태 ACTIVE/DORMANT/SUSPENDED/WITHDRAWN · 푸시 동의 · 추천인 |
| admin_user | 관리자 계정 — 역할 SYSTEM_ADMIN / PHARMACY_ADMIN · 상태 PENDING/ACTIVE/… · 약국 매핑 |
| pharmacy | 약국 — 코드 PH-### · 좌표 · 요일별 영업시간 → 실효 영업상태 · 배송 지원 Y/N · 정산 계좌 · 중개 수수료율 · 검토 메모 |
| order_info | 처방전 = 주문 — 상태 01~010 · 수령 방식 · 약제비/배송비 · 배송지 스냅샷 · 송장 · 단계별 진입 시각 |
| issue_info · issue_drug | OCR/QR 로 인식한 발급 정보(병원·의사·환자·진단코드·교부일) · 약품 라인(코드·용법·일수) |
| eligibility_info · eligibility_file | 약 배송 자격 신청(I/S/R · 유형 4종 · 반려 사유) · 첨부 서류 |
| delivery_address | 회원 배송지 — 기본 배송지 1건 자동 관리 · 도로명(비배송 판정용) |
| shop product / order | 건강샵 상품 HP-### · 주문 SO-YYYYMMDD-### (PAID→SHIPPING→DELIVERED) · 배송비 정책 |
| bbs / push message | 공지·FAQ·QnA(카테고리) · 푸시 메시지 이력(읽음·딥링크 payload) |
| drug_master · drug_substitute | 약가파일 마스터 · 대체약품 자료(원처방 ↔ 동일 주성분 대체약, 3개월 사용량, 수수료율) |
4핵심 프로세스 — 처방전 접수부터 수령까지
① 앱
수령 방법 선택
O-001 집으로 배송 / 방문수령 · 배송은 자격 승인 회원만
② 앱
배송지 · 약국 선택
O-010 배송지(비배송 지역 체크) → P-001 약국(거리순·영업·배송가능 배지) → P-001-1 동의 2건
③ 앱
촬영 · OCR · 전송
P-020 촬영 → 주민번호 마스킹·필드 파싱 → P-025 확인 → 이미지 업로드 → 접수 01 발송
④ 약사
검토 · 약제비 입력
AW-110/111 발급정보 보정 · 약품코드 자동조회 · 대체약품 → 02 조제가능(약제비) / 03 조제불가(사유)
⑤ 앱
결제
O-040 [결제하기] → 04 결제완료
⑥ 약사
조제 · 발송
05 조제완료(방문) 또는 06 배송중(송장·택배사) → 07 배송완료
⑦ 앱
수령 확인
010 수령완료 → 매출 정산 집계 기준
상태 코드 (order_info.status)
| 코드 | 의미 | 전이 주체 | 비고 |
| 01 | 발송(접수) | 회원 | 앱 등록 직후 · 관리자 대시보드 '오늘 신규' |
| 02 | 조제가능 | 약사 | 약제비 입력 → 회원 결제 대기 · 푸시 '조제 가능' |
| 03 | 조제불가 | 약사 | 사유 회원 노출 → 앱 [다른 약국 선택] |
| 04 | 결제완료 | 회원 | 결제 화면 후 상태 전이 (서버 결제 검증 없음 — §10) |
| 05 | 조제완료 | 약사 | 방문수령(offLine) 경로 |
| 06 | 배송중 | 약사 | 택배(onLine) 경로 · 송장번호+택배사 입력 · 앱 [배송 조회하기] |
| 07 | 배송완료 | 약사/운영 | 택배 경로 |
| 08 | 미방문 | 약사 | 방문수령 미수령 |
| 09 | 오류 | 운영 | 예외 |
| 010 | 수령완료 | 회원 | 매출 정산·대시보드 매출 집계 기준 (기본값) |
약 배송 자격 심사
앱 D-001
자격 신청
유형 4종 중 1개 + 서류 다중 첨부(jpg/png/gif/pdf, 각 20MB) → I 심사중
관리자 AW-140
서류 확인 · 심사
승인 → S (택배 수령 가능) / 반려 → R (사유 필수, 재신청 가능)
앱
결과 푸시 · 택배 활성화
배송지 관리·수령 방법 선택에서 최신 자격 1건 조회
사업계획서의 5중 통제 ↔ 구현 매핑
| 통제 | 구현 상태 |
| 본인확인 | 구현 가입 시 NICE 본인인증 DI 중복 확인 · 관리자 승인 자격 서류 |
| 처방전 진위 | 부분 OCR 파싱 + 약사 육안 검수(크게보기) · 앱에 '원본 지참 안내' — 발급기관 전자 검증(QR 원문 링크 linkUrl)은 미연동 시 null |
| 콜드체인 | 운영 영역 시스템 지원 없음 (사업계획서: 자체 물류·용마로지스) |
| 배송 추적 | 부분 송장번호·택배사 수기 입력 → 앱에서 외부 조회 |
| 수령 확인 | 구현 회원이 010 수령완료로 전이 · 단계별 시각 기록 |
5권한·인증 체계
| 역할 | 발급 경로 | 접근 범위 | 상태값 |
| USER 앱 회원 | POST /auth/login (userType=USER) | 앱 회원 API 만 — 처방전·주문·배송지·자격·건강샵·푸시·게시판 | ACTIVE / DORMANT / SUSPENDED / WITHDRAWN(90일 재가입 제한) |
| PHARMACY_ADMIN 약사 | POST /admin/auth/login (userType=ADMIN) | 처방전·주문·매출·자격·대시보드·약국정보 — 매핑된 약국 데이터만(scope 자동). 매핑 없으면 빈 목록 | PENDING(로그인 차단) → ACTIVE / SUSPENDED / WITHDRAWN |
| SYSTEM_ADMIN 운영자 | 동일 | 전체 메뉴 + 관리자 전용 오퍼레이션(앱 설정 갱신·푸시 발송·회원/약국/계정/건강샵/게시판 관리) — 본인 권한·상태 변경은 차단(락아웃 방지) | ACTIVE 등 |
약사 온보딩 ①
회원가입 (/signup)
약국 정보 + 사업자등록증 첨부 → 계정 PENDING + 약국 코드 PH-### 자동 발급
②
운영자 검토
AW-160 약국 관리 — 서류·영업시간·배송 가능·수수료율 · 승인 → ACTIVE / 반려 → SUSPENDED(사유 메일)
③
약사 로그인
헤더 뱃지 '가입 대기 약사 수'(60초 캐시)
6화면 지도
사용자 앱 36화면 — 화면기획서
관리자 웹 20화면 — 화면기획서
7건강샵 — 수익 다각화 라인
SH-001
카탈로그
카테고리 칩 · 2열 그리드 · BEST/NEW · 할인율 · 찜 — 관리자 등록분 실시간 동기화
SH-003
장바구니
선택 항목만 주문 · 배송비 정책(기본 3,000원 · 3만원 이상 무료, 관리자 설정)
SH-004 → SH-005
주문 확인 · 결제
배송지 공유(처방전 배송지와 동일 목록) · 토스 결제창 또는 테스트 즉시 결제
서버
주문 생성 PAID
상품 단가·배송비 재계산 후 저장 — 결제 자체는 검증하지 않음
AW-210 → SH-007
상태 관리 · 구매목록
PAID → SHIPPING → DELIVERED 즉시 앱 반영
| 사업계획서 (§15–17) | 현 구현 | 비고 |
| 약 배송 고객에 건기식 교차판매 (동일 고객·동일 물류) | 구현 | 건강샵 탭 · 배송지 공유 |
| AI 처방전 분석 기반 추천 + 약사 검수 | 없음 | 추천 API 없음 · 카테고리 필터만 |
| 포인트 적립 → 포인트로 건기식 결제 (선순환) | 없음 | 포인트 엔티티·API 없음 |
| 정기배송 번들 · 구독 | 없음 | 단건 주문만 |
8수익 모델 · 정산
개정판(2026.09.13) 기준 — 3축 수익은 의약품 유통 마진이 아니라 서비스 대가에서 나옴. 조제수익은 약국에 귀속됨.
① 조제·배송 대행 수수료
약국이 지불하는 배송·CS 물류 용역료. 건별 정액·실비 기준으로 처방 규모와 무관. 조제수익 자체는 약국 귀속(무정산 원칙).
② 건기식·생활 커머스
제휴 제약사 협약 공급 라인업을 건강샵(건기식+일반식품+생필품)에서 판매. 정기배송 번들·포인트 재구매는 커머스 내에서만 순환.
③ B2B 구독 · 공공 수탁
요양시설 복약관리·수령대행 SaaS 구독료 + 지자체·공단 도서벽지 배송 위탁(B2G). 의약품 거래와 분리된 안정 매출.
구판(2026.06)에서 삭제된 축 구판은
루다 약 판매 마진 + 건기식 2축이었고 조제약 구매 포인트 적립도 있었음. 개정판은
조제약 유통 마진 무(無) · 포인트는 건강샵 전용 으로 바꿔 의료법 제34조의9(유인·알선)와 약사법 시행규칙 제44조(경품)를 원천 회피함 —
개정 요약표. 구판 수치를 인용하지 말 것.
| 3개년 추정 (억원, 가정 기반) | 1년차 | 2년차 | 3년차 |
| 거래액 GMV | 12 | 48 | 140 |
| 매출 | 2 | 8 | 22 |
현 시스템의 정산 기능
- 약국별 매출 정산(AW-130) — 기간·상태(기본 010 수령완료) 기준 주문 수·총액·약제비 합·배송비 합, Excel 다운로드. 약사는 자기 약국 1행.
- 약국 중개 수수료율
pharmacyCharge(%) — SYSTEM_ADMIN 이 약국별 설정. 대체약품 수수료율·금액 feeRate / feeAmount — 원처방·대체약 각각 보유.
상충 (개정판에서 일부 해소) 개정판이 "약국이 지불하는 배송·CS 대행 수수료" 를 1축으로 명시하면서, 시스템의 pharmacyCharge 는 약국→플랫폼 대행료로 읽는 것이 자연스러워졌음. 다만 대체약품 수수료(feeRate/feeAmount)는 여전히 미정의 — 대체조제 건에 수수료가 붙으면 "조제약 유통 마진 무(無)" 원칙과 충돌하므로 용도 확정이 필요함. 신뢰도 70 · 근거: 직접확인(필드 존재 + 개정판 문구) + 추론(대체약 수수료 용도 미정)
9로드맵 · 운영 전환 체크리스트
완료 · 2026.08
실증 구현
앱 36 · 관리자 20 · API 127 (부산 규제자유특구)
1단계 · 2026 H2
기반 구축
루다 공급 계약 · 제네릭 소싱 · 요양원 1~2곳 시범 · 주문·배송 시스템
2단계 · 2027
지역 확장
권역 요양원 다수 제휴 · AI 건기식 추천 · 단위 경제성 검증
3단계 · 2028~
전국 확대
전국 물류망 · 재가 B2C · 복약·데이터 부가서비스 · 흑자 전환
실증 → 운영 전환 체크리스트 (구현 문서에서 도출)
| # | 항목 | 근거 |
| 1 | 토스페이먼츠 라이브 키 교체 + 백엔드 결제 승인(confirm) API 연동 | SH-005 화면기획서 "운영 전환 시" 명시 |
| 2 | 서버 측 결제 검증 도입 (건강샵 주문 생성 · 처방약 04 전이) | API: "서버는 결제를 검증하지 않으며" · 회원이 상태 04 를 직접 전이 |
| 3 | 앱 설정 플래그 운영 절차 (강제 업데이트 up_* · 점검 server_* · 약관 재동의 agree_* · 팝업) | POST /app/setting/update SYSTEM_ADMIN 전용 |
| 4 | 약품 마스터 월 1회 적재 담당·일정 (심평원 약가파일) | AW-410 |
| 5 | dev API(/dev/reset-*) 운영 프로파일 부재 확인 | Swagger "운영(prod)에는 존재하지 않는다" |
| 6 | 처방전·서류 이미지 저장소 정책 (현재 로컬 /uploads/… 경로 · 예시에 C:/DEV/…) + 보관 기간·마스킹 원본 처리 | 스키마 prescriptionImagePath 예시값 |
| 7 | 서비스 이용안내 동의(민감정보 수집·대체조제) 약관 본문 확정 — 앱은 자사 서버 /terms/** 서빙 | P-001-1 · A-010 |
| 8 | 택배사 연동(추적 API) 또는 수기 운영 SOP · 콜드체인 운영 절차 | §4 5중 통제 매핑 |
10리스크 · 미결 사항
| # | 항목 | 내용 | 등급 |
| 1 | 약사법 하위법령 | 허용 대상·조건이 시행령에서 축소될 수 있음. 2026.12 시행 전까지 대상 범위 미확정 | Critical |
| 2 | 플랫폼 도매 겸영 해석 | 플랫폼(서울랩스)–공급(루다) 분리가 특수관계 해석에서 겸영으로 판단될 소지 → 법률 검토 선행 | Critical |
| 3 | 결제 검증 부재 | 건강샵 주문·처방약 04 전이 모두 클라이언트 신뢰. 운영 전 서버 검증 필수 | Critical (운영 전) |
| 4 | 제안·계획 대비 미구현 축 | 포인트 · AI 추천 · 실손청구 · 블록체인 원장 · 요양원 관계자 일괄 업로드 — 범위·시점 재확정 필요 | Major |
| 5 | 도서산간 정책 방향 | 사업계획서 '핵심 타겟' vs 앱 '비배송 지역' — 어느 쪽이 맞는지 확인 | Major |
| 6 | 수수료 필드 vs 무정산 원칙 | §8 상충 — 정산 정의 확정 | Major |
| 7 | 문서 일정 상충 해소 | 구판의 "2026.06 약사법 개정 예정" 오류는 2026.09.13 개정판이 의료법 제34조의5(2025.12.23 공포 · 2026.12.24 시행)로 정정함. 잔여 과제는 복지부령(허용 지역·인도 방법) 미확정 — 리스크 1 과 동일 축 | Minor |
| 8 | 콜드체인·배송 추적 | 시스템 미지원, 운영 SOP 로 보완 | Minor |
🔴 이 결론을 깨는 증거 가장 약한 가정은 "구현 완료 = 실증 투입 가능" 임. 화면기획서는 Android 에뮬레이터·데모 계정·토스 테스트 키 기준이고, 실기기(iOS 포함)·실결제·운영 서버·실증 약국 계정으로 돌린 기록은 본 자료 어디에도 없음. 실증 결과보고서 또는 운영 배포 로그가 나오면 §3·§9 는 그 기준으로 다시 써야 함. 신뢰도 70 · 근거: 직접확인(문서 4종) + 추론
11문서 지도
| 문서 | 언제 보나 | 원자료 · 기준일 |
| 사업계획서 최신 | 사업 구조·수익 3축·채널 A/B·타겟·로드맵·리스크 — 투자·제휴 대화의 근거 | 2026.09.13 · 29장 |
| 사업계획서 (2026.06 구판) | 이력 보존용 — 수익·규제 서술이 개정판과 다름. 인용 금지 | 2026.06 · 22장 |
| 사용자 앱 화면기획서 | 앱 36화면의 구성요소·액션 · QA 시나리오 작성 · 디자인 리뷰 | 2026.08.20 |
| 관리자 웹 화면기획서 | 약사·운영자 업무 흐름 · 권한별 메뉴 · 운영 매뉴얼 초안 | 2026.08.20 |
| API 명세 | 127 오퍼레이션 · 상태 머신 · 인증 · 화면↔API 매핑 · 스키마 | 2026.09.14 스냅샷 |
| 시장 조사 보고서 | 규제 타임라인 · TAM/SAM/SOM · 경쟁 · SWOT · 골든타임 제언 | 2026.08.24 |
| 블록체인 스마트오더 공모 제안서 | 사업의 출발점 · 컨소시엄 역할(서울랩스) · 규제 특례 · 현 구현과의 갭 | 2025.03.31 |