콘텐츠로 이동

[공통] 결제 취소 내역 · 취소 상세

Screen ID Screen Title Screen Path
ORD-CXL-LIST-01 결제 취소 내역 /mypage/order/cancel
ORD-CXL-DETAIL-01 취소 상세 /mypage/order/cancel/{orderNumber}

취소(CANCELED) 또는 환불 완료(RETURNED) 상태 주문만 노출하는 결제 취소 내역 목록과 취소 상세 화면. 목록 레이아웃은 전체 주문 내역(ORD-LIST-01)과 동일한 구조.


결제 취소 내역 (ORD-CXL-LIST-01)
├── 헤더 ← 뒤로가기 / "결제 취소 내역" / 검색 버튼
├── 탭 영역 ← 전체 / 온라인 매장 / 오프라인 매장 / 라플 매장
├── 취소 주문 카드 목록 ← 무한 스크롤, 최신순
└── 빈 상태 / 오류 상태
필터 기준
전체 매장 취소/환불 상태 전체 조회
온라인 매장 isOffline = false
오프라인 매장 isOffline = true
라플 매장 라플 유형 주문

store 코드 값 및 탭 포함 여부는 스토어별 문서에서 정의한다.

상태 코드 표시 문구
CANCELED 주문 취소
RETURNED 환불 완료
항목 기준
상품 이미지 thumbnailUrl (실패 시 플레이스홀더)
브랜드명 brandName
상품명 productName
가격 orderProduct.totalPrice
매장 정보 전체 주문 내역과 동일 기준
주문번호 클릭 취소 상세(ORD-CXL-DETAIL-01)로 이동
조건 표시
visible == false 상품명 뒤에 “(판매중단)” 표시
상품 클릭 시 “현재 판매하지 않는 상품입니다” 안내
항목 기준
검색 UI 검색 버튼 클릭 → 상단 노출 + 배경 dimmed 처리
검색 대상 주문번호 (orderNumber) · 상품명 (productName)
검색 방식 부분 일치
탭 전환 시 검색어 조건 유지
닫기 배경 터치 또는 X 클릭 (결과 유지)

검색 결과 없음 처리

상황 표시 문구
취소 내역 자체 없음 “취소 내역이 없습니다”
검색 결과 없음 “’{검색어}’에 대한 검색 결과가 없습니다”
탭별 결과 없음 “해당 매장의 취소 내역이 없습니다”

조회 전용: 취소 철회·재주문 등 액션 버튼 없음. 모든 정보는 취소 확정된 값으로 수정 불가.

취소 상세 (ORD-CXL-DETAIL-01)
├── 헤더 ← 뒤로가기 / "주문 상세"
├── 기본 정보 ← 매장명 / 주문번호 / 주문일 / 주문 상태
├── 취소 상품 정보 ← 이미지 / 브랜드 / 상품명 / 사이즈 / 수량 / 가격
│ └── 취소 사유 ← 상품 정보 바로 아래 표시
├── 주문자 정보
├── 배송 정보
└── 취소 상세 정보 ← 총 주문 / 할인 / 결제 / 환불 금액
표시
“단순변심” / “배송 지연” / “제품정보 상이” / “서비스 불만족” 그대로 표시
“기타 사유” 사용자가 입력한 텍스트 표시
값 없음 “취소 사유 정보 없음”
  • 다중 상품 취소 시 상품별로 개별 취소 사유 표시
항목 필드
총 주문 금액 productPrice + deliveryPrice
상품 금액 productPrice
배송비 deliveryPrice
총 할인 금액 discountPrice
쿠폰 할인 couponDiscount
마일리지 사용 usedMileage
총 결제 금액 paidPrice
결제 수단 payMethod → 아래 변환표 적용

결제 수단 변환표

코드 표시 문구 환불 처리 안내
BRAND_PAY 브랜드페이 브랜드페이로 환불
CREDIT_CARD 신용카드 신용카드 승인 취소
VIRTUAL_ACCOUNT 가상계좌 환불 계좌로 입금
REAL_TIME_TRANSFER 실시간 계좌이체 원거래 계좌로 환불
항목 필드 비고
총 환불 금액 canceledBalance 노란색 강조 표시
반환 예치금 canceledUsedMoney
반환 적립금 canceledUsedMileage
카드 환불 금액 canceledBalance - canceledUsedMoney

엔드포인트: GET /v1/orders/histories/cancel

파라미터 설명
page 페이지 번호
size 페이지 크기 (기본 20)
store 매장 필터 (WORKSOUT / RAFFLE)
isOffline 온라인/오프라인 구분
keyword 검색어
응답 필드 활용
orderNumber 카드 식별 / 상세 이동 파라미터
orderedAt 주문일, DESC 정렬 기준
store, isOffline, offlineStoreName 매장 분류
products[].productStatus CANCELED / RETURNED 상태 표시
products[].visible false이면 “(판매중단)”
products[].brandName, productName, thumbnailUrl, totalPrice 상품 정보

엔드포인트: GET /v1/orders/histories/{orderNumber}

주문 상세와 동일한 엔드포인트. status == CANCELED인 주문을 조회.

응답 필드 활용
status CANCELED 확인
products[].cancelReason 상품별 취소 사유
payMethod 결제 수단 변환
paidPrice, usedMileage, usedMoney 결제 정보
canceledBalance 총 환불 금액
canceledUsedMoney 반환 예치금
canceledUsedMileage 반환 적립금

증상 예상 원인 1차 조치
목록 전체 미로드 API 실패 / 세션 만료 네트워크 → API 응답 → 로그인 상태 확인
특정 탭에서만 미노출 store / isOffline 필터 불일치 요청 파라미터와 주문 데이터 비교
검색 결과 없음 keyword 미전달 요청 URL 확인
취소 상세 미로드 orderNumber 미전달 또는 API 실패 파라미터 및 응답 확인
취소 사유 미표시 cancelReason 필드 없음 “취소 사유 정보 없음” 폴백 처리 확인
환불 금액 불일치 canceledBalance 계산 오류 API 응답값과 화면 표시값 비교
취소 아닌 주문이 상세 진입 status 검증 누락 진입 시 status == CANCELED 확인 후 리다이렉트

버전 날짜 변경 내용
v1.0 2026-07-06 최초 작성