Flutter SDK 카드사 선택 버튼 오류
테스트ID를 이용해서 Flutter SDK 결제위젯을 테스트 하고 있는데요
신용/체크카드를 선택하고, 카드사 선택버튼을 누르면 오류가 발생하면서 Device와의 연결이 끊어집니다.
카드사 선택 Select리스트는 표시되지않구 에러가 발생하구요
다른 결제수단은 결제 직전까지는 정상적으로 가는것을 확인했습니다.
환경은 아래와 같이 사용하고 있습니다.
Flutter : 3.29.0
Dart : 3.7.0
tosspayments_widget_sdk_flutter : 2.1.1
아래는 에러메시지 입니다.
51 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
GitHub
tosspayments-sample-v1/payment-widget/flutter at main · tosspaymen...
토스페이먼츠 SDK v1 샘플 프로젝트입니다. . Contribute to tosspayments/tosspayments-sample-v1 development by creating an account on GitHub.
이샘플로 동일 현상 발생하는지 확인부탁드립니다.
아이폰에서 확인 중이신가요?
안드로이드에서 확인주엥 있습니다.
일단 위 샘플 한번 확인해주시고, 정확한 에러는 영상으로도 제공해주세요
위 샘플에서 표시되는 카드사 선택과
제가 사용하고 있는 카드사 버튼이 다르고
네 그럼 영상으로 제공해주세요
네 알겠습니다.
일단 제가 사용한 코드는
토스 SDK 중 Flutter SDK 문서중 나와있는 예시샘플 코드를 사용한것입니다.
이렇게 올려드리면 될까요?
카드사 선택 버튼을 클릭하면 위에 작성한 에러와 함께 개발중인 앱이 종료됩니다.
위 샘플에서 표시되는 카드사 선택과 제가 사용하고 있는 카드사 버튼이 다르고라고 하셨는데 저 샘플에서는 어떻게 보이시나요?

이렇게 선택하게 보여집니다.
셀렉트 박스가 아닌 항목 선택 형태로 보여지게 되고 있습니다.
Github에 있는 flutter샘플은 위와같은 형태로 표시가 되지 않고, 해당 이미지처럼 나오는데 맞는건가요?


여기서 일반결제 선택 후 > 카드로 선택하고 하단 버튼을 누르면

요렇게 나옵니다.
샘플을 돌리려면 Flutter버전과 Dart버전을 낮춰서 테스트 해야하더라구요
거기서 아래 결제위젯을 눌러야 지금 과동일하게 나올거에요
일반결제말고요
저희랑 계약된 mid는 어덯게되세요
아직 계약되지 않았습니다. 테스트 중에 있습니다.
샘플을 테스트하는데 테스트 클라이언트 ID로 진행하는데 에러가 발생하네요
dev 말고 live로 해보세요
라이브도 에러가 발생해요
4000 에러코드 발생합니다.

여기 라이브로 하셨어요?
네
3가지 옵션 다 해봤습니다.
live일때는 어떤에러가 발생하나요
4000 에러가 발생하고
인증되지 않은 시크릿 키 혹은 클라이언트 키라고 나옵니다.
clientKey를 default박혀있는 것 말고, 이때 테스트한걸로 교체해보시겠어요

추가로
- 결제위젯을 사용하실 계획신가요 일반결제를 사용하실 계획이신가요?
- pg신규연동이신가요? 아니면 기존에 다른 pg사용 중이셨나요
아 아이디가 다르네요
위젯을 이용하려고 합니다.
pg신규연동을 할예정이구요
심사를 하려면 앱 서비스 SDK가 필요하고 샘플연동 모듈을 넣어서 달라고 하셔서 진행하고 잇습니다.
아 서비스 SDK가 아니라 APK요
아이디 바꿔넣으니 되나요?
아뇨
다른 에러가 발생합니다.
4015
존재하지 않는 위젯이라고 나옵니다.
test_gck_docs_Ovk5rk1EwkEbP0W43n07xlzm
variantKey: "DEFAULT",
이거 2개 쓰신거 맞나요?
live로 하셔야하고요
라이브에는 variantKEy옵션이 없네요
다시 넣고 확인해보겠습니다.
그럴리가 없을텐데요 prefill이 없다는 말씀이시죠?
네

입력을 하고 해보겠ㅆ브니다.
errorCode에 UNAUTHORIZED_KEY
messge에 인증되지 않은 시크릿 키 혹은 클라이언트 키라고 나오면서 실패되었습니다.
ㅎㅎㅎ 뭔가 키가 계속 잘못 들어가는 것 같네요
일단 웹뷰위에 웹서버 연동하려는게 아니라
flutter component이용해서
앱개발하실건가요?
네
messge에 인증되지 않은 시크릿 키 혹은 클라이언트 키라고 나오면서 실패되었습니다.
에러받을 때 사용한 clientKEy랑 customerKEy남겨주시고, 영상도 부탁드려요.
customerKey는 로그 확인을 위해 aaaa말고 조금 unique한값으로 부탁드립니다.
점심 마치고 확인해보렉요
클라이언트 키는 test_gck_docs_Ovk5rk1EwkEbP0W43n07xlzm
사용했구요
커스터머 키는 따로 넣지 않았는데 CUSTOMER_KEY로 기본 설정되어 있었습니다.
네 customerKey 기본설정말고
새로 조금 Unique한값으로 넣어서
에러 재현후 공유해주세요
로그 확인하려고요
넵
customerkey : kakaasdfg78
그리고 참고로, 깃헙 샘플에 있는 tosspayments_widget_sdk_flutter 버전과, 제가 사용하고 있는 버전이 다릅니다.
샘플에는 2.0.0, 제가 사용하고 있는건 2.1.1버전입니다.
버전 2.1.1로 하니까 정상적으로 표시됩니다.
다시하니까 결제 실패로 나오고 아무메시지가 없네요
2.1.1 버전으로 하니까 정상적으로 나오네요
샘플로 주신걸로 했더니 카드사 선택을 눌러도 문제가 발생하지 않습니다.
넵 양쪽 버전이나 코드로 한번 비교해주셔야할 것 같아요.
아마 기존에 문제 발생했던게 dart나 flutter webview lib에서 뭔가 문제가 있었을 것 같네요
일단 문제가 발생한 부분은 flutter_naver_map과 같이 사용하면 발생하는 문제였습니다.
정확한 원인은 모르겠는데 GPT를 통해서 gladle파일 수정 후 오류 해결하였습니다.
웹뷰간 충돌하는 것 같네요
네 그랬던것 같습니다.
하나하나 체크할 수있게 도와주셔서 감사합니다.
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.