원가 입력부터 일일정산·푸시 미션까지의 앱 화면과, API 문서·스키마·배포 인계 화면을 실제에 가깝게 그렸습니다.
스토리보드란?
스토리보드는 서비스의 화면을 실제 모습에 가깝게 미리 그려 보는 문서입니다. 카페 운영자가 쓰는 앱 화면과 대표·발주처 개발자가 받는 인계 화면으로 나눠 여정 순서대로 배치했습니다.
마지막까지 보시면 발표에서 시연할 앱이 서버와 어떻게 이어져 동작하는지 그려지실 것입니다.
로그인 상태를 유지한 채 원가를 확인하고, 하루 판매를 정산한 뒤 예약 알림으로 미션을 끝내는 흐름입니다.
토큰 자동 갱신
다시 로그인 없음
원재료·중간재·레시피
서버 저장
서버 계산 마진율
메뉴별 표시
판매량 입력
끊기면 자동 재시도
마감 예약 알림
미션 완료 전송
레시피를 원재료·중간재·부재료로 나눠 잔당 원가와 마진율을 보여주는 대표 화면입니다. 기존에 만든 원가·레시피 화면에 서버 저장과 계산 결과를 연결합니다.
원가와 마진율은 서버가 계산해 내려주고 앱은 표시만 합니다. 바닐라 시럽 같은 중간재는 자기 레시피로 단가를 먼저 구해 다시 들어갑니다. 저장 상태를 메뉴마다 표시해 아직 전송되지 않은 값을 구분합니다.
하루 판매량으로 매출·재료 원가·고정비 일할을 계산해 순이익을 보여주고, 서버 전송 상태를 함께 표시하는 정산 화면입니다.
전송에 실패한 입력은 앱에 보관하고 간격을 늘려가며 자동 재시도합니다. 요청마다 고유 번호를 붙여 두 번 도착해도 서버에는 한 건만 저장됩니다. 전송이 끝나야 정산 확정 버튼이 열립니다. 데모 Step 1~2에서 확인합니다.
매장 영업시간에 맞춰 도착한 마감 알림을 누르면 오늘의 고정 미션 화면으로 이동하고, 수행 결과를 서버로 보냅니다.
로그인 후 FCM 기기 토큰을 서버에 등록합니다. 서버 스케줄러가 매장별 오픈·마감 시각을 한국 시간 기준으로 계산해 발송하고 발송 이력을 남깁니다. 알림 데이터에 이동할 화면을 담아 탭하면 미션 화면이 열립니다. 데모 Step 3~4에서 확인합니다.
결과물을 받아 직접 확인하고, 이후 개발을 혼자서도 이어갈 수 있게 전달되는 흐름입니다.
기존 구조 확인
실행 재현
추가형 마이그레이션
롤백 스크립트
Swagger 문서
요청·응답 예시
Docker 서버
상태 확인
Android·iOS 테스트
베타 빌드 전달
/v1/ingredients원재료·부재료·중간재 목록신규/v1/recipes/{menuId}레시피 저장신규/v1/menus/{id}/margin메뉴 원가·마진율신규/v1/fixed-costs/{id}고정비 수정신규/v1/auth/refresh토큰 재발급기존/v1/devices/fcm-token기기 토큰 등록신규/v1/missions/{id}/complete미션 완료 처리신규/v1/settlements/daily신규storeIdst_7Qm2businessDate2026-09-16sales[0].qty61잔clientRequestIda3f1-0916-2130revenue1,282,500원ingredientCost282,220원fixedCostDaily82,667원netProfit917,613원원가·판매·정산·푸시·미션 전체 API를 기존 인증 API와 한 문서로 정리한 화면입니다. 기존 API와 이번에 추가한 API를 표시로 구분합니다.
코드의 요청·응답 형식에서 문서를 자동 생성해 문서와 실제가 어긋나지 않습니다. 오류 응답 예시와 재요청 규칙까지 적어 발주처 개발자가 바로 호출해 볼 수 있습니다.
id · kind RAW | SUB | INTERMEDIATEunit g · ml · eapurchasePrice · purchaseQtymenuId → MenuingredientId → Ingredientamount · unitprice+ costCached · marginRate+ updatedAtstoreId · businessDatemenuId · qtyclientRequestId uniquestoreId · type OPEN | CLOSEoffsetMin · timezone Asia/SeoullastSentAttitle · repeat DAILYstoreId · missionId · datecompletedAt2026_09_21_add_cost_tables적용됨2026_09_23_add_sales_settlement적용됨2026_09_26_add_push_mission대기기존 사용자·매장 테이블은 그대로 두고, 원가·판매·정산·푸시·미션에 필요한 테이블을 어떻게 더했는지 보여주는 화면입니다.
원재료·부재료·중간재를 한 테이블의 종류 값으로 구분하고 단위를 함께 저장합니다. 변경은 기존 데이터를 지우지 않는 추가형 마이그레이션으로만 적용하고, 되돌리는 스크립트를 함께 전달합니다.
api (nestjs)healthy · 2일 3시간postgres:16healthyscheduler다음 발송 08:50베타 서버 상태와 Android·iOS 실기기 테스트 결과, 베타 빌드 전달 상황을 한눈에 확인하는 검수 화면입니다.
서버·DB·스케줄러를 Docker로 묶어 같은 설정으로 다시 띄울 수 있습니다. 기기별 확인 범위와 결과를 기록해 검수 근거로 남기고, iOS 푸시는 범위 밖임을 명시합니다.