[플러터] 안드로이드에서 kbpay, 우리카드 결제 클릭 시 (앱 미설치) 아래와 같은 페이지가 뜨는 현상
플러터, inappwebview 사용하고 있고, 웹뷰에서 tosspayments_sdk_flutter 사용해서
shouldOverrideUrlLoading에서 url 체크 후 appScheme.launchApp() 하고 있습니다.
다른 결제수단은 에러 페이지 없이 마켓으로 잘 넘어가는데, kbpay 와 우리카드만 아래와 같이 뜹니다! 이 두개의 결제 수단만 그러는게 이해가 안됩니다..

25 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
웹뷰(WebView) 연동하기 | 토스페이먼츠 개발자센터
브라우저가 아닌 모바일 웹뷰로 결제창을 띄울 때 카드사별 결제수단을 인증하려면 외부 앱(3rd-party 앱)을 연동해야 합니다. 연동에 필요한 외부 앱 스킴(App URL Scheme)목록과 추가 로직을 살펴보세요.
이부분을 참고해주시기 바랍니다.
네엡 androidManifest 에 package 전부 추가 했고, shouldOverrideUrlLoading 에서 해당 url 캐치에서 tossPaymentsWebview 처럼 사용하고 있습니다.
다른 카드사들은 잘 되는데, kbpay, 우리카드에서만 이슈가 나서 문의 드립니다ㅠ
그러면 해당 현상에서 아래 코드를 정상적으로 진입하고있는지 로그를 찍어 보시기 바랍니다.

현상 자체는 intent 링크를 딥링크 형태로 파싱을 못해서 발생하는 에러입니다.
샘플코드중 어떤 부분에서 exception 이 발생해서 intent 가 바로 브라우저까지 이동한 것인지 확인이 필요해 보입니다.
샘플코드가 위에 주신 이미지 말씀하시는걸까요? 플러터 코드는 아닌 것 같아서요!
플러터에서 웹뷰로 연동중이신가요?
넵
그러시면 여기를 참고하시는게 좋겠네요.
Dart packages
tosspayments_sdk_flutter | Flutter Package
This SDK helps you easily link the 'toss payments' payment module on the flutter.
이런 비슷한 이슈가 있어서, 급하게 flutter inappwebview 에서 webview_flutter 사용하니 되네요
토스페이먼츠랑 inappwebview 뭔가 싱크가 안맞는 이슈가 있는 것 같습니다
우선 토스페이먼츠랑 관계없이
해당 원처사에서 제공하는 intent url때문에 발생하는 현상입니다.
inappwebview말고 webview_flutter에서 좀더 확실하게 동작하는게 맞고요
우선 해결되었다니 다행입니ㅏㄷ
카드사 intent url이 잘못되었다는 뜻일까요?
inappwebview -> webview_flutter 를 바꾸지 않고, 오류를 해결할 방법이 필요합니다. 웹뷰 전체를 싹 바꿔야해서 현재 상용앱에 바로 바꾸기엔 리스크가 있습니다
- 귀사 mid가 어떻게되시죠?
- tosspayments_sdk_flutter에서 convertUrl은 사용하셨나요?
- webview 위에 웹서버 호스팅 중이신가요?
- celeshophj
- 넵
- 넵


이거 참고해보세요
마침 저희도 결제위젯 쪽 sdk 준비하면서 inappwebview 도입 중에 동일 현상 마주하여 확인했었습니다.
앗! 이렇게 하니까 오류페이지 안뜨네요ㅠㅠ 감사합니다 🙂
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.