결제 후 리포트 안 뜨는 prod 사고
토스 v2 webhook 이 signature 헤더 검증이 아니라 raw_response 안 secret 매칭이라는 것. 단순 SDK 박았다고 끝이 아니라는 것.
사용자가 결제 완료 후 리포트 페이지로 redirect 됐는데 unlock 상태가 안 됨. DB 의 payment row 는 정상 PAID 인데 access_until 이 미반영. webhook 자체는 도착했는데 secret 매칭 실패로 skip 됐다.
결제 사고는 단일 축으로 진단하면 못 잡는다. DB row 상태 + UX flow (사용자 시점) + webhook secret 매칭 — 3축 동시에 봐야 진짜 root cause 발견.
결제 사고 진단 표준 3축: (1) DB row 정상 여부 확인, (2) UX flow 사용자 시점 재현, (3) webhook raw_response secret 매칭 검증. 단일 축으로 'DB 정상이니 OK' 결론 X.