캐시바이
캐시바이18h ago

React SPA 으로 개발 했을떼 결제 완료 후 리다이렉트

checkout -> 결제 모듈 -> 결제 완료 페이지 결제모듈 -> 결제 완료 페이지를 이동하는 과정에서 리액트 같이 SPA으로 개발하면 리다이렉트가 발생하면 state(redux store) 정보가 다 날아가고 포퍼먼스 비효율이 발생한다고 생각 되는데 어떻게 생각하는지 궁금합니다.
리다이렉트가 강제화 되어 있어서 조금 불편하네요. (리다이렉트 모바일은 강제화 막혀있음)
No description
7 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Kimoon Lee
Kimoon Lee17h ago
카드사나 간편결제 사들이 저런 방식으로만 제공하기 때문에 어쩔수가 없습니다.
캐시바이
캐시바이OP17h ago
흠. 아임포트 - 나이스페이 세팅할때는 리다이렉션 방법을 개발자에게 제공해줬었거든요. 그리고 토스에서 강제로 데스크탑에서는 가능한데 모바일에서는 할수 있는 방법이 없더라구요. 그래서 모바일에서만 가능하도록 세팅해주면 될듯도 한데. 아쉽네요.
캐시바이
캐시바이OP17h ago
Promise로 처리하기 ✔️ PC 환경에서만 사용하세요. 모바일 환경에서 Promise를 사용하면 결제가 안 됩니다. ✔️ requestPayment()의 successUrl, failUrl 파라미터를 설정하지 마세요. ✔️ 응답 데이터를 then, catch로 확인하세요. 예시 paymentWidget .requestPayment({ // 결제 정보 파라미터 // successUrl, failUrl 파라미터를 넘기지 마세요. }) .then(function (data) { // 성공 처리: 서버 측에서 결제 승인 API를 호출하세요 }) .catch(function (error) { // 에러 처리: 에러 목록을 확인하세요 // https://docs.tosspayments.com/sdk/v2/error-codes#failurl로-전달되는-에러 if (error.code === "USER_CANCEL") { // 구매자가 결제창을 닫았을 때 에러 처리 } else if (error.code === "INVALID_CARD_COMPANY") { // 유효하지 않은 카드 코드에 대한 에러 처리 } });
토스페이먼츠 SDK 에러 코드 | 토스페이먼츠 개발자...
토스페이먼츠 SDK를 사용할 때 발생할 수 있는 모든 에러를 살펴보세요.
Minsu Kim
Minsu Kim17h ago
포트원 나이스페이쪽은 어떻게 되어있는지 한번 알아봐야 겠는데 아이프레임 안에서 결제 창이 로드되면 이슈가 자주 발생해서 토스는 강제하고 있습니다.
캐시바이
캐시바이OP17h ago
그렇군요. 다양한 이슈들의 방어 로직이라 생각하면 되겠네요. 답변 감사합니다.
Minsu Kim
Minsu Kim16h ago
네 이게 프레임이면 브라우저 보안때문에 CORS 등 충돌이 나는 경우가 있고 모바일에서는 새션 유실 등 결제 실패 이슈가 있습니다.

Did you find this page helpful?