Emmett
Emmett2w ago

flutter 결제위젯 브랜드페이 문의

안녕하세요 현재 tosspayments_widget_sdk_flutter: ^2.0.8 을 사용하고 있습니다. 첨부한 이미지 처럼 브랜드페이 등록 ui가 있고 카드번호를 등록하게 되면 ui에 변화가 없고 페이지를 나갔다 들어오면 무한 로딩중입니다. redirectUrl 쪽에 문제가 있는걸까요?
No description
No description
No description
42 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Kimoon Lee
Kimoon Lee7d ago
네 rediect URL 이 설정되어 있는지. 주문서페이지와 동일 도메인에 있는지 그리고 redirectURL 에서 Accesstoken 발행요청을 하고 있는지 확인부탁드립니다.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
Emmett
EmmettOP7d ago
혹시 flutter 에서 관련 글을 찾아보다가 redirect url에 URL 스키마를 넣어라는말을 본거같은데 url스키마를 안넣어서 그런건 상관이 없을까요??/
유부장
유부장7d ago
브랜드페이의 redirectUrl 은 "access token 발급" API 호출 소스 구현이 되어 있는 페이지 입니다.
Emmett
EmmettOP7d ago
모바일 앱에서 플러터 토스 결제위젯을 보여주는데 혹시 동일 도메인이라는걸 어떤걸 의미할까요?
Kimoon Lee
Kimoon Lee7d ago
그럼 도메인 이슈는 없으실거구요. redirectURL 호출에 문제가 없는지, 그리고 토큰 발행은 하고 계신지 확인해주시면 됩니다.
Emmett
EmmettOP7d ago
넵넵 확인해보겠습니다 답변 감사드립니다! 안녕하세요 테스트를 한번 해봤는데 개발자센터의 브랜드페이에 redirect URL을 등록한 후 플러터 앱에서 결제 위젯에 같은 redirectUrl을 등록해 놓았는데 서버에서는 해당 API가 호출이 되지 않았다고 합니다. 앱에서는 결제연동 키의 클라이언트 키를 사용하고 있습니다.
유부장
유부장7d ago
clientKey 알려주시고 해당 요청의 customerKey 도 알려주세요
Emmett
EmmettOP7d ago
안녕하세요 client_key: test_gck_QbgMGZzorzyXkMYOnNyvVl5E1em4 customerKey: asdfasdf20250217006 혹시 customerKey를 따로 미리 등록 해두고 사용해야하는걸까요?
유부장
유부장7d ago
아니요, 그걸 떠나서 브랜드페이 설정 자체가 문제 이신것 같아서요 customerKey 다시 알려주시겠어요? 뭔가 중간에 값이 꼬인듯 보여요
Emmett
EmmettOP7d ago
asdfasdf20250217006
Emmett
EmmettOP7d ago
입니다
No description
Emmett
EmmettOP7d ago
안드로이드 로 테스트 시 보이는 로그입니다. I/chromium(26048): [INFO:CONSOLE(1)] "Uncaught (in promise) KnownError: customerToken이 존재하지 않습니다.", source: https://connect.tosspayments.com/connect/e5c5eefd08d85b04e33d86fed1910b7aa7e2f3b8/_next/static/chunks/pages/m/register/add-payment-method/card-7d94d8a88ef7a064.js (1) I/chromium(26048): [INFO:CONSOLE(1)] "Uncaught (in promise) Request Error", source: https://js.tosspayments.com/v1/brandpay (1)
유부장
유부장7d ago
http://121.254.254.170:3800/API/brandpay/redirect 지금 이 URL 등록 해주신것 같은데, 여기에서 accessToken 호출 로직 구현하신것 맞으시죠? 여기 web accesslog 확인 가능하신가요? 저희는 http://121.254.254.170:3800/API/brandpay/redirect?code=Yq7GWPVv97WB7xbPWa3NE5vb&customerKey=asdfasdf20250217_006_ 이렇게 web get 호출이력이 보여서요
Emmett
EmmettOP7d ago
백엔드에서 그럼 지금하고있는 형식의 api가 아니면 지금상태에서는 어떻게구현해야하나요? 예시가 필요합니다 현재는 docs에 나와있는대로 구현 한겁니다 플러터에서 사용할때백엔드는 어떻게 api를구현해야하는제 예시를 알려주세요
유부장
유부장7d ago
브랜드페이 연동하기 | 토스페이먼츠 개발자센터
결제위젯으로 편리하게 브랜드페이를 연동하세요. 브랜드페이는 자체 간편결제 시스템을 구축하는 결제 서비스예요.
유부장
유부장7d ago
이 내용인데, 이거 구현했는지를 여쭤보는겁니다
Emmett
EmmettOP7d ago
말씀주신 동일한 내용으로 개발을 진행해서 토큰을 발급받으려 백엔드를 구현했습니다 docs에선 토큰발급다음 바로 결재로 이어지는데 저는 지금 등록을 구현하려하는겁니다
유부장
유부장7d ago
등록때도 마찬가지로 저 토큰 호출이 있어야 해요.. jsSDK 호출이 있으면, 토큰발급이 있어야 합니다 그렇게 구현되어 있는거 맞지요? 그냥 get access 가 있으면 호출을 하는게 좋아요
Emmett
EmmettOP7d ago
api 로직 이전에 아예 redirectURL 에 등록한 api자체가 호출이 되지 않는거 같습니다
Kimoon Lee
Kimoon Lee7d ago
http://121.254.254.170:3800/API/brandpay/redirect? 여기로 요청 들어온게 확인되지 않으시나요?
Emmett
EmmettOP6d ago
넵넵 api 자체가 호출되지 않고 있습니다!
Kimoon Lee
Kimoon Lee6d ago
저희 쪽에서는 호출한 로그가 확인되는데요.그러면 웹뷰내에 JS 콘솔 오류가 있는지 확인부탁드립니다.
Emmett
EmmettOP6d ago
안드로이드 디바이스로 브랜드페이 테스트시 찍히는 로그입니다! 안드로이드 로 테스트 시 보이는 로그입니다. I/chromium(26048): [INFO:CONSOLE(1)] "Uncaught (in promise) KnownError: customerToken이 존재하지 않습니다.", source: https://connect.tosspayments.com/connect/e5c5eefd08d85b04e33d86fed1910b7aa7e2f3b8/_next/static/chunks/pages/m/register/add-payment-method/card-7d94d8a88ef7a064.js (1) I/chromium(26048): [INFO:CONSOLE(1)] "Uncaught (in promise) Request Error", source: https://js.tosspayments.com/v1/brandpay (1)
Kimoon Lee
Kimoon Lee6d ago
customerkey 에 _ 빼고 사용해 보실수 있을까요? 아 지금보니까 내부에 에러가 있는 것 같아 확인하고 공유 드리겠습니다. @Emmett 님 token 발급 호출하실때 secretkey 가아니라 clientkey 를 보내시는것 같습니다. secretkey 로 변경해서 다시 확인부탁드립니다.
Emmett
EmmettOP6d ago
백단에서 말씀하시는걸까요?
Kimoon Lee
Kimoon Lee6d ago
http://121.254.254.170:3800/API/brandpay/redirect 에서 저희 API 호출하실때 secretkey 를 쓰셔야 합니다.
Emmett
EmmettOP6d ago
넵넵 확인해보겠습니다 감사합니다! 백단에서 사용하는 키를 확인해본바 MID cp_dangpro 의 시크릿키를 사용하고있습니다.
Kimoon Lee
Kimoon Lee6d ago
test_sk 로 시작하는 키인가요?
Emmett
EmmettOP6d ago
넵 맞습니다.
Kimoon Lee
Kimoon Lee6d ago
다시한번 asdfasdf20250217006 로 접속해 보시겠어요?
Emmett
EmmettOP6d ago
_ 넣은 상태로 말씀이시죠?? 위젯을 생성하는중 I/chromium(25850): [INFO:CONSOLE(1)] "Mixed Content: The page at 'https://121.254.254.170/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://121.254.254.170:3800/API/brandpay/redirect?code=60RZblrq5jjnjbRK2brwzYWB&customerKey=asdfasdf20250217_006_'. This request has been blocked; the content must be served over HTTPS.", source: https://js.tosspayments.com/v1/brandpay (1) I/chromium(25850): [INFO:CONSOLE(1)] "Uncaught (in promise) Error: Request Error", source: https://js.tosspayments.com/v1/brandpay (1) 웹뷰쪽 에러가 발생했습니다.
Kimoon Lee
Kimoon Lee6d ago
이부분 원래 에러 없으셨던것 아닌가요? 플러터라서 주문서 페이지 웹사이트에서 제공안하신다고 알고 있는데요 일단 해당 에러는 주문서페이에 도메인과 redirectURL 도메인이 달라서 발생하는 에러입니다. 뒤에 port 번호까지 일치 시켜 주셔야 합니다.
Emmett
EmmettOP6d ago
넵넵 flutter sdk로 결제위젯을 사용하고 있어서 브랜드페이 추가 버튼을 누를때 올라오는 웹뷰말고 는 웹뷰에서는 진행하고 있지 않습니다.
Kimoon Lee
Kimoon Lee6d ago
웹뷰내에 https://121.254.254.170/' 에서 로딩하는게 있는지 확인부탁드립니다.
Emmett
EmmettOP6d ago
웹뷰가 저희가 웹뷰를 구현한게 아니라 토스 플러터 패키지 내부에서 불러오는 웹뷰로 보입니다
Kimoon Lee
Kimoon Lee6d ago
기존에는 안나던 에러이신거죠?
Emmett
EmmettOP6d ago
이전에 제가 올렸던 에러로그는 새로운 customerKey로 결제위젯을 생성해 카드를 추가하는 과정에서 추가 완료 버튼을 눌렀을때 발생하는 로그였고
No description
No description
Emmett
EmmettOP6d ago
방금 제가 올린 에러로그는 카드 추가를 했지만 에러로그가 뜨고 반응이 없어 앱 화면에서 뒤로갔다가 다시 해당화면으로와 결제 위젯을 그리다가 생성되는 에러로그입니다!
Kimoon Lee
Kimoon Lee6d ago
아.. 에러가 http 로 redirectURL 을 사용해서 나온것 같습니다. 이거 https 로 변경가능하신가요?
Emmett
EmmettOP6d ago
그럼 저희가 도메인이 나오고 다시 한번 테스트 해보겠습니다. 친절한 답변 감사드립니다!

Did you find this page helpful?