티스토리 뷰

문제 1)

프로세스는 장바구니 -> 결제화면 -> (PG) → 결제완료/결제취소/결제실패 이렇게 화면 3개.

이 때 '재고 소진'이 발생했다고 하면, 어떻게 처리해야 하는지를 따져봅시다.

  • Case 1. 각각의 페이지에 진입 시
  • Case 2. 각각의 페이지에서 다음 페이지로 넘어갈 때,
  • Case 3. 각각 페이지에 머무르고 있을 때 발생한 경우
  • Case 4. 페이지에 전체 다 넘어왔을 때

 

[적절한 해결 방안]

프로세스는 다음과 같은 흐름으로 진행된다.

장바구니 → 결제화면 → (PG사) → 결제완료 / 결제취소 / 결제실패

- 즉, 화면 기준으로는 총 3단계로 나뉜다.

- 이때 ‘재고 소진’이 발생했다고 가정할 때, 어느 지점에서 발생했는가에 따라 처리 방식이 달라져야 한다. 

 

Case 1. 각 페이지에 진입 시

  • 사용자가 장바구니에 a, b, c 상품을 담은 상태이다. 예: a(1천원)×3개, b(2천원)×2개, c(3천원)×1개
    → 총 주문금액 1만원
  • 이 상태에서 a 상품이 소진되었을 경우, 해당 상품을 유저가 인지하지 못한 채 삭제하는 것은 적절하지 않다.
  • 일반적으로는 해당 상품을 비활성화하거나 UI상에서 구분된 표시로 대체하고,
    ‘재고 부족’ 안내 문구와 함께 ‘재입고 알림 신청’ 기능 등을 제공한다.
  • 이와 같은 처리는 장바구니 뿐 아니라 결제 화면에도 동일하게 적용 가능하다.

 

Case 2. 각 페이지에서 다음 페이지로 넘어갈 때

  • 사용자가 다음 단계로 이동하기 위해 CTA(결제하기) 버튼을 클릭하면, 서버 통신을 통해 재고를 다시 확인한다.
    • 이 때, 재고가 부족하면 다이얼로그 팝업을 띄워 재고 부족 상품을 안내하고, “부족한 상품을 제외하고 결제할 것인지” 또는 “다시 확인하여 장바구니로 돌아갈 것인지” 선택지를 제공한다.
  • 또한 이 시점에 재입고 알림 버튼 등을 함께 노출하는 것이 일반적이다.

 

Case 3. 페이지에 머무르고 있는 동안 발생한 경우

  • 사용자가 결제 페이지에 머무르면서 아무런 행동도 하지 않은 상태에서도 재고가 변동될 수 있다.
  • 이를 대비해 대부분의 서비스는 오토 리프레시(auto-refresh) 기능을 적용한다.
    • 일반적으로 10~15분 단위로 자동 새로고침을 설정하고,
    • 헤더에 서버 통신 명령을 주어 최신 정보를 받아오는 방식이다.
  • 오토 리프레시 외에도 CTA 버튼 클릭 시점에 재확인을 병행하여 처리 안정성을 높인다.

 

Case 4. PG사 결제 화면 이후, 즉 결제가 끝난 뒤에 발생한 경우

  • 사용자가 PG사 화면에서 결제를 완료하고 돌아왔는데, 재고가 소진되었다면 심각한 문제로 이어질 수 있다.
  • 최악의 경우는 결제가 되었는데 주문이 취소되며, 고객센터에 연락까지 해야 하는 상황이다.
    • 이는 고객 불만은 물론, 인건비 손실로까지 이어진다.
  • 따라서 이 상황에서는 차악의 대응이라도 필요하다. 예를 들면,
    1. 주문을 자동 취소하고
    2. “재고 부족으로 주문이 취소되었음”을 안내하며
    3. 보상 쿠폰 등을 함께 제공하여 사용자의 불쾌감을 완화해야 한다.

정리하자면,

  • 가장 좋은 설계는 아예 결제 이후 재고 부족이 발생하지 않도록 미연에 방지하는 것이다.
  • 이를 위해 가재고, 오토 리프레시, CTA 재확인, 판매중지 상태, 다이얼로그 경고 등 다양한 기능을 복합적으로 설계해야 한다.
  • 특히 결제 완료 후 재고 부족으로 인해 사용자의 주문을 취소하는 일은 브랜드 신뢰에 큰 타격을 줄 수 있으므로, 반드시 예방 로직이 필요하다.
728x90
반응형
Comments
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
250x250