kevinGwon
kevinGwon3mo ago

갤럭시 탭에서 결제 취소 프로세스 문의

안녕하세요. 결제 위젯을 연동하면서 특정 디바이스에서 failUrl 다르게 동작되고 있어 문의 드립니다. 디바이스 - 갤럭시 탭 S9 이상 현상 케이스 - Credit Card > 결제 모달 오픈 > 취소 > 모달이 닫히지 않은 상태로 failUrl 이동 기대 결과 - Credit Card > 결제 모달 오픈 > 취소 > 모달 닫힘 > catch error or failUrl 상황 설명 Credit Card 사용시 Desktop > catch error, Mobile > failUrl 동작되는것으로 확인 했으나 갤럭시 탭에선 모달이 닫히지 않고, 첨부된 이미지와 같이 failUrl 설정된 값으로 이동되고 있습니다 혹시 별도로 설정해야하는 옵션이 있을까요? 사용중인 코드도 같이 공유드립니다.
widgetsRef.current
?.requestPayment({
// skip
successUrl: "https://xxxx.co.kr/en/purchase/302406/order/3254503?success=true&merchantUid=xxx",
failUrl: "https://xxxx.co.kr/en/purchase/302406/order/3254503?success=false&merchantUid=xxx",
})
.catch((error: Record<string, unknown>) => {
if (error.code === USER_CANCEL_ERROR_CODE) {
router.push("/en/purchase/302406/order/3254503?success=false&merchantUid=xxx");
}
});
widgetsRef.current
?.requestPayment({
// skip
successUrl: "https://xxxx.co.kr/en/purchase/302406/order/3254503?success=true&merchantUid=xxx",
failUrl: "https://xxxx.co.kr/en/purchase/302406/order/3254503?success=false&merchantUid=xxx",
})
.catch((error: Record<string, unknown>) => {
if (error.code === USER_CANCEL_ERROR_CODE) {
router.push("/en/purchase/302406/order/3254503?success=false&merchantUid=xxx");
}
});
No description
51 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Kimoon Lee
Kimoon Lee3mo ago
갤럭시 탭에서 PC 결제창을 띄우 신거죠?
kevinGwon
kevinGwonOP3mo ago
넵. 모바일에선 새로운 탭에서 연결이되는데요. 갤럭시 탭에서는 PC 환경과 같이 결제창이 뜨고 있습니다!
Kimoon Lee
Kimoon Lee3mo ago
모바일 앱인가요? 아니면 웹인가요?
kevinGwon
kevinGwonOP3mo ago
모바일 웹으로 봐주시면됩니다. 갤럭시 탭 > 크롬 > 서비스 이렇게 접근했습니다.
Kimoon Lee
Kimoon Lee3mo ago
영상으로 찍어서 보내주시구요. 지금 갤럭시 탭에서 확인되는 UA 도 공유 부탁드립니다.
kevinGwon
kevinGwonOP3mo ago
UA / 영상 공유드립니다. UA - Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/ 133.0.0.0 Safari/537.36 영상 (첨부)
유부장
유부장3mo ago
주문번호도 전달 부탁 드립니다
kevinGwon
kevinGwonOP3mo ago
테스트 환경이고, 테스트 클라이언트 키도 같이 공유드립니다. 테스트 아이디: test_gck_Z1aOwX7K8mBkl1NAd61j3yQxzvNP 주문아이디: 32545294052
유부장
유부장3mo ago
테스트환경에서의 동작 관련해서는 별도 확인 해보도록 하겠습니다. 라이브 환경에서 동일한 현상이 재현되는지 확인 부탁 드리겠습니다.
today.lastday
today.lastday3mo ago
그리고 결제창을 USD말고 KRW를 사용하는 일반 신용카드로도 테스트 해보시겠어요?
kevinGwon
kevinGwonOP3mo ago
답변이 늦어서 죄송합니다. 라이브 환경도 동일합니다. 현재 해외결제 카드만 보유하고있는데요. 테스트용 카드 가이드가 문서에 별도로 있을까요?
Minsu Kim
Minsu Kim3mo ago
국내카드는 없습니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
kevinGwon
kevinGwonOP3mo ago
안녕하세요. 해당 이슈에 대해 현재 상황을 알 수 있을까요? 👨‍🔧
Kimoon Lee
Kimoon Lee3mo ago
라이브 환경에서 동일한 현상이 재현되는지 확인 부탁 드리겠습니다. 라고 요청드렸는데 혹시 확인해 보셨나요?
kevinGwon
kevinGwonOP3mo ago
이 시점에 라이브 환경도 동일한것으로 확인했습니다. 시간이 좀 지났는데 한번더 확인해보겠습니다.
kevinGwon
kevinGwonOP3mo ago
라이브 환경으로 접근했을때도 현상은 동일합니다.
No description
Minsu Kim
Minsu Kim3mo ago
아직도 Chrome 브라우저 이시죠? 우측 상단에 세로로 되어있는 ... -> 데스크탑으로 보기 (버전마다 용어는 다를 수 있으나 비슷할겁니다) 체크박스가 해제되어있는지 확인해 보시고, 체크되어있다면 풀어주세요. Galaxy Tab / iPad에서 기본값은 데스크탑으로 보기가 체크 (혹은 데스크탑 모드로 보기 상태) 로 UA가 일반 Linux 기기로 잡히게 되어있습니다. 이에 PC결제창이 노출되는 케이스가 있어요. 데스크탑 보기를 해제 하거나, 모바일 모드로 보기로 되어있으면 모바일 결제창이 나올겁니다.
Minsu Kim
Minsu Kim3mo ago
[Chrome]
No description
Minsu Kim
Minsu Kim3mo ago
[삼성 브라우저]
No description
kevinGwon
kevinGwonOP3mo ago
이안님 안녕하세요. 말씀 주신 방향으로 액션은 달라졌지만, 취소 클릭시 취소 url 로 돌아오지 못하는 현상도 보이고 있습니다.
Minsu Kim
Minsu Kim3mo ago
일단 결제창이 제대로 열리지 않던 부분은 고쳐진것 같구요. 저건 다른 문제같은데 토스팀에서 한번 확인해보셔야할 것 같습니다. 시간양해 조금만 부탁드려요
kevinGwon
kevinGwonOP3mo ago
넵 감사합니다.
Minsu Kim
Minsu Kim3mo ago
혹시 괜찮으시다면 데스크탑 사이트 꺼진 상태의 UA도 공유주시면 도움이 되지 않을까 싶습니다. -# https://www.whatismyuseragent.com/
What is my User Agent?
A User Agent is a unique identifier for your web browser. This tool will help you identify your user agent and browser.
kevinGwon
kevinGwonOP3mo ago
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit /537.36 (KHTML, 11Ke GecKo) Chrome/ 134.0.0.0 Safari/537.36
kevinGwon
kevinGwonOP3mo ago
사진도 같이 첨부드려요!
No description
Minsu Kim
Minsu Kim3mo ago
일단 결제창 쪽은 제가 예상했던대로 Android 문구가 누락되어서 PC가 떴던게 맞는 것 같구요. (데스크탑사이트 껐더니 생긴상태) 취소안되는건 토스팀에서 한번 확인해보셔야할 것 같습니다. 시간양해 조금만 부탁드려요
Kimoon Lee
Kimoon Lee3mo ago
해당 이슈 발생한 Orderid 공유 부탁드립니다. 그리고 failURL 은 어떻게 보내셨나요?
kevinGwon
kevinGwonOP3mo ago
- failUrl 형태는 본문에 추가해두었습니다. - orderId: 3254713603c 입니다
Kimoon Lee
Kimoon Lee3mo ago
failURL 을 IP 로 넣으셨나요? failURL 이 ip 형태로 들어와있는것같구요. 저 기기에서 해당 failurl 접속이 안되는 상황으로 보입니다.
kevinGwon
kevinGwonOP3mo ago
지금 확인을 해보니. ip 형태와 별개로 결제 모듈(=payment-gateway) 에서도 데스크탑 모드를 바라보고 있어서 액션이 없는것으로 확인이 됩니다. 갤럭시탭을 이용한 유저들에게 데스크탑 모드를 해제해야 한다고 가이드를 할 수 있겠지만.. 매번 할 수 있는 상황인지는 고민이 됩니다. 당장은 아니더라도 해결할 수 있는 방향이 있을까요?
Kimoon Lee
Kimoon Lee3mo ago
이부분은 적절한 UA 를 크롬 브라우저가 보내야 할것 같은데요. 그런데 이 때 캡쳐해 주신거랑 지금 캡쳐 하신거랑 브라우저가 달라보이는데 맞나요?
Kimoon Lee
Kimoon Lee3mo ago
No description
kevinGwon
kevinGwonOP3mo ago
같은 브라우저입니다. 스크롤에 따라서 위 주소창이 숨김처리되고 있어서 다르게 보이실 수 있을겉 같군요..
Kimoon Lee
Kimoon Lee3mo ago
iframe내에서 x 를 누르면 requestpayments 의 catch 로 전달되는데요 catch 에서 어떤 처리를 하고 계신가요? 별도의 처리는 없으신가요? 아니면 저 X 를 누르는 버튼에 핸들러를 걸어두신건 아닌지도 확인부탁드립니다. X 눌렀을때 동작이 저희가 제어하는게 아닌것 같아서요.
kevinGwon
kevinGwonOP3mo ago
iframe 에서 동작하는 방식은 크레딧 카드 취소시 취소페이지로 이동시키는 로직만 담겨있습니다. 네 이동하는 로직은 내부에서 헨들링하고있습니다. 이는 데스크탑에서만 해당이 됩니다. 데스크탑 동작 방식을따르면 모듈이 닫히고 이동해야 하는데 그렇지 않고 있습니다.
kevinGwon
kevinGwonOP3mo ago
No description
Minsu Kim
Minsu Kim3mo ago
타 PG 가이드를 보니 매번 해제하라는 가이드를 하고있네요. 모바일 앱으로 제공하실 수 있는 상황이 아니면 매번 안내부탁드려요.]
Kimoon Lee
Kimoon Lee3mo ago
지금 보면 어떤 사유인지 모르지만 취소 페이지로 이동을 저희가 띄운 iframe 내에서 하는것으로 보입니다. 혹시 취소 페이지 이동하는 로직이 UA 따라 분기되는건 아닌지 확인부탁드립니다.
kevinGwon
kevinGwonOP3mo ago
혹시 어디를 참고하셨는지 공유해주실 수 있을까요? 분기처리는 하고있지 않습니다. 데스크탑 모드이면 데스크탑과 동일하게 이동해야하는데 내부로직과 관계가있을까요? 분기처리는 안하고있습니다 마지막 GIF 캡쳐본을 보면 데스크탑에서 결제모듈이 닫히고 이동을 하고 있습니다. 갤럭시 탭에서 데스크탑 모드 위와 동일하게 실행이 되어야하는게 예상범위라고 생각하고있습니다.
Kimoon Lee
Kimoon Lee3mo ago
네 그러면 닫기 버튼 핸들링하는걸 빼고 재현부탁드립니다 그냥 iframe 만 닫혀야 합니다. 증상을 보면 닫기 버튼 핸들링하는 부분이 잘못 동작하면서 발생하는 문제처럼 보여서요.
kevinGwon
kevinGwonOP3mo ago
닫기 버튼을 직접핸들링하고있지 않아요. catch 절에서 취소 상태 조건일때만 이동을 시키고 있습니다.
Kimoon Lee
Kimoon Lee3mo ago
해당 페이지를 제가 접근해 볼수 있을까요? 그리고 직접 핸들링 안하신다면 catch 절에 코드를 빼고 갤럭시 탭에서 iframe 이 정상적으로 닫히는지 확인부탁드립니다.
Minsu Kim
Minsu Kim3mo ago
No description
No description
No description
Minsu Kim
Minsu Kim3mo ago
첫 두군데는 결제관련된 내용은 아니나 비슷하게 충돌이 나는 케이스 안내이구요. 마지막 3번째는 결제 관련 오류 안내인데 토스페이먼츠 가맹점 중 한군데로 알고 있습니다. (김영평생교육원 FAQ) 대부분의 가맹점에서 저렇게 데스크탑 모드는 끄도록 안내가 되고있어요.
Kimoon Lee
Kimoon Lee3mo ago
아마도 이부분코드에서 갤럭시 탭은 router 를 iframe 으로 잡는게 아닐까 싶은데요. router.push("/en/purchase/302406/order/3254503?success=false&merchantUid=xxx");
Minsu Kim
Minsu Kim3mo ago
router.push -> top.window.location.replace
kevinGwon
kevinGwonOP3mo ago
갤럭시 탭(=desktop mode)에서 catch error 헨들링하지 않고, failUrl 을 바라보고 있네요.
No description
kevinGwon
kevinGwonOP3mo ago
일단 내부에서 가이드 하는 방향으로 검토가 가능한지 확인해보겠습니다. 내부망으로만 접근이 가능해서 공유할수 없는 환경입니다. 답변을 바로 못드렸습니다. 요건은 일단 내부에서 가이드하는 방향으로 정리가 됐습니다. 유저가 많지 않을것으로 예상이되는데 혹시나 중간에 도움이 다시 필요하면 문의 드리겠습니다 답변주셔서 감사합니다 🙇‍♂️
Kimoon Lee
Kimoon Lee3mo ago
네 감사합니다.

Did you find this page helpful?