Day 9 Task 02 예외 시나리오

Task 02. 결제 실패 시나리오 검토하기

한도초과, 지연 등의 오류 코드들을 유저 안심 안내로 번역하고 중복 결제 연타 락을 구축합니다.

Task 02 Task 02 결제 실패 시나리오 검토하기 실습 가이드

📥 실습 입력 (Input)

  • day9_raw_payment_errors.json

💾 실습 출력 (Output)

  • day9_error_mitigation_guide.md

1. 스토리 및 실습 배경

주문 결제 페이지를 배포한 직후 고객센터에 항의글이 폭주했습니다. 한 고객은 카드가 한도초과였을 뿐인데 화면에 뜬금없이 'Error 1042: Transaction Declined by Carrier'라는 영문 에러 메시지가 표시되자, 돈은 이미 계좌에서 빠져나갔고 가입 승인만 누락된 게 아닌지 공포에 떨어 결제를 거부했습니다. 또한 통신 지연 에러 상황에서 유저가 결제하기 버튼을 조급하게 연타하자 데이터베이스에 동일 주문 승인 쿼리가 세 번이나 연달아 날아가 이중 과금이 체결되는 중대 데이터 결함이 연출되었습니다.

2. 학습 목표

  • 카드 한도초과, 잔액부족, 통신 지연 등 결제 트랜잭션 도중 발생하는 대표적 오류 4종을 나열할 수 있다.
  • 기술성 원시 코드를 고객의 불안감을 지우고 후속 행동을 처방하는 친근한 안내 텍스트로 치환할 수 있다.
  • 버튼 무력화(disabled) 및 멱등성 주문 키 등 이중 과금 승인 시도를 통제하는 예방 룰을 설계할 수 있다.

3. 실습 기초 코드 다운로드

아래 자바스크립트/JSON 뼈대 소스를 복사하거나 다운로드받아 로컬 실습 경로(day9_raw_payment_errors.json)에 저장하세요.

json{
  "errors": [
    {
      "code": "ERR_CARD_LIMIT_EXCEEDED",
      "carrier": "PG_KCP",
      "description": "System transaction declined by external carrier due to lack of balance or limit exceeded on card"
    },
    {
      "code": "ERR_NETWORK_TIMEOUT",
      "carrier": "PG_TOSS",
      "description": "Network timeout occurred while communicating with toss payments gateway api"
    },
    {
      "code": "ERR_DUPLICATE_REQUEST",
      "carrier": "INTERNAL_GATEWAY",
      "description": "Idempotency validation failed. Multiple execution request of order id from same client detected"
    }
  ]
}

4. Codex AI 프롬프트 카드

아래의 프롬프트를 복사하여 Codex Client의 AI 질의 응답 창에 붙여넣고 가이드를 받으세요.

제공된 PG사 원시 오류 로그 명세 `day9_raw_payment_errors.json`를 기반으로, 사용자에게 절대로 불안감을 주지 않는 친절한 \'오류 상황별 한글 안내 문구집\'과 중복 결제 시도를 차단하는 \'이중 승인 예방 대응 가이드라인(Mitigation Playbook)\'을 작성해 주세요.
← 이전 단계 다음 단계 →