에러 핸들링 관련 질문 드립니다.
현재 flutter로 토스페이먼츠 결제 과정을 구현중에 있습니다.
이와 관련하여 몇 가지 궁금증이 있어 질문드립니다.
1. AgreementWidget을 사용 중인데 해당 UI는 페이먼츠측에서 제공하는 필수 약관으로 위젯이 구성 되어있습니다.
만약 이 약관을 체크하지 않았다면 결제 하기 과정으로 넘어가기 전 사용자에게 고지하기 위한 모달 같은 UI가 토스페이먼츠 측에 준비되어 있는지 그리고 만약 없다면 왜 없는지 궁금합니다.
2. paymentResult.success를 전달 받았다면 결제 승인 요청을 API를 통해 진행 하고 있습니다.
이때 200 [OK], 400 [Bad Request], 403 [Forbidden], 404 [Not Found], 429 [Too Many Requests], 500 [Server Error] 등의 statusCode를 전달 받을 수 있고 이에 따른 statusMessage도 다양한걸로 공식 문서에서 확인 하였습니다. 200을 제외한 나머지의 경우 즉, PG사가 여러 결제 기관과 결제 데이터를 주고 받는 과정에서 에러 객체가 넘어왔다면 토스측에서 제공하는 UI가 있는지 궁금하고 없다면 왜 없는지도 궁금합니다.
감사합니다.
9 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
1. 에러를 thrown 해드리고 있어, catch 하셔서 띄우시면 됩니다.
2. 귀사 서버에서 토스 서버로의 API 통신에 대한 오류에 대하여 토스에서 UI를 제공해드린다는 것이 기술적으로 가능한지요?
이에 오류 객체를 받으시면 귀사 앱 단에서 에러를 띄워줘야함에 UI가 별도 마련이 되어있지않습니다:
1번에 대한 답변은 토스 측에서 준비된 UI가 없고 에러를 던져주고 있기때문에 자체적으로 핸들링 하면 된다라고 이해되는데 추가적으로 토스측에서 제공하는 필수 약관 동의에 대해 체크를 안하고 결제를 진행했을 경우 문제 발생시 책임은 누구에게 있는지 궁금합니다.
2번에 대한 답변은 맞습니다.
기술적으로 UI를 제공해 주실 수는 없죠. 제가 지식이 부족하여 질문을 제대로 못한것 같습니다.
혹시 리다이렉트URL로 이동 하는 것처럼 (토스는 failURL이 존재하는것으로 알고 있습니다.) 결제 승인 요청시에도 에러객체를 전달 받았다면 리다이렉트가 가능한지 여쭤본겁니다.
결제 승인 요청은 지금 HTTP로만 구현되어 있어서 안되는 건지 아니면 제가 모르는게 있는지 확인하고 싶어서 그렇습니다.
토스 측에서는 해당 동의가 이루어지지 않으면 에러 thrown 하고 아예 결제창 호출이 안되도록 조치를 해둔 상황으로,
해당 부분에 대하여 문제 책임을 다루긴 어렵습니다.

지금 flutter에서 아래와 같이 구성후 진행시 약관 동의 안했어도 설명하신 thrown 없이 진행이 되는데 제가 잘못 이해 한 걸까요?
tosspayments_widget_sdk_flutter: ^2.1.1 을 사용하고 있습니다.

2번도 답변 부탁드리겠습니다!
그리고 만약 해당 과정 영상이 궁금하시다면 개인 디스코드로 보내드릴 수 있습니다.
그리고 https://discord.com/channels/864296203746803753/1438088266103525458 이 글에서는 정상이라고 하셨는데 지금 thrown이 있다고 하니 제가 많이 당황 스럽습니다.
아 flutter군요... flutter에서 동작 방식은 잘 몰라서 월요일에 토스팀에 담당자분이 체크해주셔야 합니다.
JS 기준으로는 진행이 안되거든요.
그리고 2번은.... 에러객체를 받으시면 귀사에서 적당히 페이지를 넘기시면 될거같고 SDK가 관여할 부분은 아닐거같아요
네! 감사합니다!