민재
민재5d ago

결제위젯 테스트

토스 샌드박스에 있는거 제 백엔드에 연동시켜서 테스트 해보려 하는데 실제 라이브 키로 테스트가 가능한가요?? 아니면 테트 gck,gsk 만 가능한가요 ?
26 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(문제가 발생한 이미지나 전체 결제흐름 동영상을 첨부해주시면 빠른 분석을 받으실 수 있습니다.)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Kimoon Lee
Kimoon Lee5d ago
테스트로만 사용해 주시기 바랍니다.
민재
민재OP5d ago
결제위젯은 라이브키로 테스트 안돼나요? 실제로 돈나가는지 보려하는데 {"code":"UNAUTHORIZED_KEY","message":"인증되지 않은 시크릿 키 혹은 클라이언트 키 입니다.","data":null } 2025-12-01T21:40:33.229+09:00 ERROR 44610 --- [nomination] [pool-6-thread-1] g.n.feign.toss.config.TossErrorDecoder : 토스 API 에러 응답 - status: 400, url: https://api.tosspayments.com/v1/payments/confirm, body: <html> <head><title>400 Bad Request</title></head> <body> <center><h1>400 Bad Request</h1></center> </body> </html> 테스트 결제위젯키 , 라이브 결제위젯키 둘다 이 에러가 나오는데 왜그런건가요 ㅜㅜ??
Minsu Kim
Minsu Kim5d ago
live_gck로 위젯 열어서 live_gsk로 결제승인해야합니다.
민재
민재OP5d ago
라이브키로 테스트 해도 괜챃은거죠?
Minsu Kim
Minsu Kim5d ago
두개 짬뽕하신 경우 401이 잘 내려갑니다. 돈이 나가긴하는데 당일 취소 시 문제없습니다.
민재
민재OP5d ago
그런데 마이페이지에 있는 라이브 결제위젯 값 그대로 복사해서 사용하는데 계속 저런 에러가 나는군요 ㅜㅜ 400뜨고 있습니다
Minsu Kim
Minsu Kim5d ago
live gck로 렌더링해서 live gsk쓰신거 맞나요?
민재
민재OP5d ago
잠시만요 live gck로 프론트에서 토스 SDK 초기화에 사용하고 결제창 띄우고 백엔드에서 시크릿키로는 TossAuthInterceptor.java: // Base64 인코딩: "secretKey:" 형태 this.encodedAuthKey = Base64.getEncoder() .encodeToString((secretKey + ":").getBytes(StandardCharsets.UTF_8)); // Authorization 헤더에 추가 template.header("Authorization", "Basic " + encodedAuthKey); 실제 API 호출 시: POST https://api.tosspayments.com/v1/payments/confirm Authorization: Basic weqewqeqwe 이런식으로 사용하고 있습니다!
Minsu Kim
Minsu Kim5d ago
아니면 orderId를 알려주세요 내일 토스팀에서 로그를 확인해볼 수 있도록
민재
민재OP5d ago
잠시만요 ORDER_1764594251930_pmvt5d65p 입니다
Kimoon Lee
Kimoon Lee4d ago
요청자체가 들어오지 않았고 말씀하신 시간대에 400으로 에러가 나간게 없습니다.
Minsu Kim
Minsu Kim4d ago
근데 응답이
Kimoon Lee
Kimoon Lee4d ago
2025-12-01T21:40:33.229+09:00 이시간에 UNAUTHORIZED_KEY 에러 나간로그를 확인해 보면 Authorization: Basic 헤더가 아예 없었어요.
Minsu Kim
Minsu Kim4d ago
nginx 400 format인데 방화벽문제 아니었을지요? 이거 이후에 400 났을땐 nginx나 alb가 400을 뱉을때의 포맷으로 html응답이 왔네요 이거 밑에꺼 보시면 됩니다.
민재
민재OP4d ago
확인해 보겠습니다! 혹시 ORDER_1764639135271_el1pd7qjk 이거 한번만 확인 가능 하실까요!? 혹시 이게 어떤 말씀 이실까요??
Kimoon Lee
Kimoon Lee4d ago
해당 주문번호도 승인요청이 안들어왔어요.
민재
민재OP4d ago
이게 그럼 앞에 프록시에서도 막힐수가 있나요??
Kimoon Lee
Kimoon Lee4d ago
그건 저희가 알수가 없습니다.
민재
민재OP4d ago
아 그럼 request가 어떻게 들어갔는지도 로그 못봐주시는 거죠 ㅠㅠ?
Kimoon Lee
Kimoon Lee4d ago
네 저희 서버까지 오지 못한것 같아요.
민재
민재OP4d ago
제가 sdkv2로 했어야했는데 v1으로 하다가 v2로 바꾸고 있는데 혹시 v1 하고 v2는 차이가 많이나나요 ? v1 백엔드는 결제 구현이 됬는데
Kimoon Lee
Kimoon Lee4d ago
v1이나 v2 나 백엔드는 동일하게 사용합니다.
민재
민재OP4d ago
그럼 아무래도 제 프론트에서 문제가 있나보군요... 넵 감사합니다! v1에서 실제 라이브키로 돈나가는거 까지 확인 가능했는데 v2에서도 라이브 gck 사용해서 테스트 가능한건가요!? FeingConfig 여러개가 있었는데 @Configuration 때문에 헤더 두개가 나갔었네요 ㅜㅜ 그래도 감사합니다 Configuration 이거때문에 하나가 글로벌 적용되고 있어서 ... 하하
Kimoon Lee
Kimoon Lee4d ago
네 다행이네요.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?