NAN
NAN3mo ago

모바일웹에서 질문드립니다.

현재 모바일웹에서 결제를 누르면 결제 모달창이 뜨고 거기서 결제 수단을 고르고 결제하기를 누르면 현재의 창에서 새로운창이 떠서 거기서 결제를 하고 원래의 창으로 돌아가면 결제정보가 유지되게끔 할순없을까요? 현재는 모바일웹에서 같은창에서 각 결제수단의 결제창으로 넘어가져서 혹시나 사용자가 결제를 취소하면 결제를 하려고 가지고 있던 정보가 날라가더라구요..
35 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Ayaan
Ayaan3mo ago
네 불가합니다. 결제 전에 세션같은곳에 저장해 주세요.
NAN
NANOP3mo ago
그거말곤 답이없는거겠죠.. 알겠습니다 감사합니다!
Ayaan
Ayaan3mo ago
네네 아무래도 카드사 화면으로 redirect(iframe 레이어팝업방식 미지원) 해야하다보니 양해 부탁드립니다.
NAN
NANOP3mo ago
넵 알겠습니다.
Kimoon Lee
Kimoon Lee3mo ago
아니면 직접 새창을 띄우신 후에 그안에서 결제창을 열어주셔도 됩니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
NAN
NANOP3mo ago
혹시 직접 새창을 띄워서 하는게 가이드가 따로 있을까요? 현재 새창을 띄우니까 선택한 selector를 찾을수없다고 나와서 문의드립니다!
Kimoon Lee
Kimoon Lee3mo ago
아 위젯을 사용하시는 거군요. 위젯을 사용하시면 새창을 띄우실 방법은 없을겁니다. 통합결제창을 사용하시는 경우는 새창으로 통합결제창을 여는 방식으로 쓰실수 있구요.
NAN
NANOP3mo ago
아하 넵 감사합니다 ㅠ
NAN
NANOP3mo ago
지금 제가 쓰는 방법이 이 위젯창인데 방법이 없다는 말씀이신거죠
No description
Kimoon Lee
Kimoon Lee3mo ago
네 맞습니다. 그런데 이렇게 사용하시면 그냥 이 화면을 새창으로 띄우시는 것은 어떠신가요?
NAN
NANOP3mo ago
네 이 창 자체를 모바일 웹에서만 새창으로 띄우려고 했었는데 selector를 찾을 수 없다고 해서 문의드렸습니다! 새창을 띄울수있는걸까요?
Kimoon Lee
Kimoon Lee3mo ago
이 창은 직접 렌더링 하시는 걸텐데요.. 새창을 여시고 직접 만드신페이지를 띄우시고, 그안에 위젯 렌더링할 selector 를 상성하시고 렌더하시면 됩니다. 지금 iframe 안에 있는 내용을 새창띄워서 해주시면 되요.
NAN
NANOP3mo ago
그런데 궁금한점이 이렇게 하면 제 원래 페이지에서 결제가 바로 넘어갈수있을까요? 일단 지금 새로운 창을 만들고 그곳에서 렌더링을 넣어서 하고 있는중인데 selector를 찾을수없다해서 일단 가이드가 따로 없다면 조금 더 찾아보겠습니다
Kimoon Lee
Kimoon Lee3mo ago
일단 지금 새로운 창을 만들고 그곳에서 렌더링을 넣어서 하실때 그 페이지에 위젯에 렌더링하라고 하신 selector가 없는겁니다. 위젯에 설정한 selector가 페이지에 있는지 확인해 보세요.
NAN
NANOP3mo ago
지금 현재 새로운창으로 결제창을 띄우고 이전창에서 성공하면 그값을 받아서 다음화면으로 넘어갈수있을까요?
이실장
이실장3mo ago
metadata값을 이용해주세요. successUrl에 getParam을 사용ㅎ셔도디고요
NAN
NANOP3mo ago
결제 창을 새로운 화면으로 띄우면 그곳에서 리다레익트가 될거같은데 그럼 이전탭의 화면에서 인식을 할수있을까요?
이실장
이실장3mo ago
metadata파라미터로 보내면 승인응답으로 돌아올거에요 정확히 하고 싶으신 내용을 한번 남겨주세요 그림등으로 남겨주시면 이해가 쉽습니다. '
NAN
NANOP3mo ago
일단 제가 하기로 한 방식은 새로운 창을 띄우는거말고 모바일 웹에서 현재 창을 기준으로 세션에 값을 넣고 이전 값으로 돌리는거로 하려고 하는데 제가 강제로 취소 오류를 낼수있는방법이 있을까요?
이실장
이실장3mo ago
세션에 값을 넣고 이전 값으로 돌리는거로 하려고 하는데
이부분을 이해 못했ㅅ브니다.
NAN
NANOP3mo ago
웹에선는 결제를 할때 새로운창을 띄어서 현재의 창과는 무관하게 값을 받는데 모바일웹은 무조건 같은 창에서 다른페이지로 이동을 하더라구요 그래서 사용자가 뒤로가기를 하면 이전에 사용자가 입력했던 값이 다 날라가서 그걸 살리려고 세션에 저장하고 세션값으로 판단을 하려고 하는데 사용자가 취소나 다른 결제 오류를 냈을때 다시 원래 결제페이지로 돌아와서 모달창으로 안내만 하려고 합니다. 근데 현재 사용자가 직접 취소하는거 말고 다른 오류는 어떻게 강제로 낼 수 있는지 문의드립니다!
이실장
이실장3mo ago
참고해보시겠어요?
NAN
NANOP3mo ago
아하 감사합니다! 현재 모바일 웹에서 결제 실패를하면 redirect로 받을수있는 방법이 없을까요?
이실장
이실장3mo ago
결제 실패하면 api응답으로 드리는데 redirect로 받을수 있냐는 질문에 대해 추가 설명 바랍니다.
NAN
NANOP3mo ago
네 지금 제가 결제 취소를 하면 다시 결제페이지로 가려고 하는데 뒤로가기를 누르면 토스페이먼츠 페이지가 나오더라구요
이실장
이실장3mo ago
successUrl에서 브라우저 뒤로가기를 했다는 말씀이시죠?
NAN
NANOP3mo ago
아뇨 failurl입니다
이실장
이실장3mo ago
뒤로가기는 브라우저에서 history 스택에 따라 동작하는거기 떄문에 저희가 제어할 수 없습니다. 뒤로가기를 막거나, 뒤로가기로 접근할 때 에러를 주거나 하셔야해요
NAN
NANOP3mo ago
처음에 총 2단계가 있는거 같은데 모바일웹에서는 웹이랑 다르게 그화면에서 바로 주소를 이동 하는것 같은데 그 부분을 리다이렉트로 못하나요?
이실장
이실장3mo ago
NAN
NANOP3mo ago
그러면 뒤로가기를 하면 무조건 토스페이먼츠 창을 거쳐야 하는걸까요
이실장
이실장3mo ago
history back 이벤트를 받아서 스택을 여러개 돌려볼 수도 있습니다. -1이 아니라 -2,-3이렇게요