박정민
박정민12mo ago

ALREADY_PROCESSED_PAYMENT 관련 문의

안녕하세요. 현재 심사승인 후, 결제위젯등을 이용하여 일반결제 연동을 하여 결제 서비스를 운영중입니다. 서비스에 적용된 연동 과정은 requestPayment -> success url redirect(프론트엔드 react로 리다이렉트) -> 리다이렉트 된 front-end에서 승인 관련 백엔드 api 호출 -> 백엔드에서 토스페이먼츠 승인 api호출 간단하게 이런식으로 개발했는데, 번번히 토스페이먼츠 승인 api를 몇분 간격으로 총 2번 호출되어 마지막 호출 시에는 ALREADY_PROCESSED_PAYMENT 해당 에러가 발생하고 있습니다. 저희쪽에 쌓이는 로그나, 구조등을 통해 유추해봤을 때, success url로 redirect가 두번 이뤄져서 그렇다고밖에 생각이 들지 않는데, 지금 개발된 연동 과정이 잘못된것일까요? 아니면 ALREADY_PROCESSED_PAYMENT 에러가 발생할 수 있는 경우에는 어떤것들이 있을까요? 해당 에러 발생 주문id: 533baa390ab3471db877f72a74dd4974
6 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
김차장
김차장12mo ago
안녕하세요, successUrl 로 redirect 인증응답은 1번 나갔습니다. {"mId":"esened****","orderId":"533baa390ab3471db877f72a74dd4974","status":"READY","amount":20000,"currency":"KRW"} ALREADY_PROCESSED_PAYMENT 에러는 예상하시듯이 승인요청이 두번 발생해서인데요. 인증응답 수신 후 승인요청을 하는 로직이 반복되게 되어있는지를 점검 하셔야 할거같아요 WAS 와 통신구간이 있다면 async 로 설정하면 이런 현상이 발생할 수 있구요. 결제관련 통신은 sync 방식 사용을 권장드려요
박정민
박정민12mo ago
네, 답변 감사합니다
김차장
김차장12mo ago
좋은 서비스로 가꿔가시길 바랍니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
Kimoon Lee
Kimoon Lee12mo ago
번번히 토스페이먼츠 승인 api를 몇분 간격으로 총 2번 호출되어 마지막 호출
이렇다고 하셨는데요. successURL 이 실제로 고객의 브라우저에 표시 되다 보니 고객이 reload 를 한다거나, 아니면 넘어간 페이지에서 back 을 하는경우 다시 successURL 이 호출될수 있습니다. 이부분에 대해 방어코드를 넣어주시는 것도 좋을것 같아요.