테스트 결제시 에러 생성
await paymentWidget?.requestPayment({
orderId: orderId,
orderName: orderName,
customerName: myName,
// customerEmail: 'test@test.com',
successUrl: window.location.origin + '/successPurchase',
failUrl: window.location.origin + '/failPurchase',
});
}
} catch (error) {
// 결제 모듈 띄우고 진행하다가 취소한 경우
const orderCancelRes = await request({
url:
/api/order/${orderId}
,
method: 'DELETE',
});
if (orderCancelRes) {
console.log('cancel success');
}
결제 진행을 위한 코드의 일부분입니다.
이부분을 진행하면서
POST https://api.tosspayments.com/v1/payments/sdk 400
에러가 나면서 결제가 진행이 되지 않는데, 어떤 문제가 있는 것일까요?18 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
또한 결제 위젯을 띄울 때마다 DevTools failed to load source map: Could not load content for https://static.toss.im/tds/43.3.2/css/tds.min.css.map: HTTP error: status code 403, net::ERR_HTTP_RESPONSE_CODE_FAILURE 이런 경고창이 나오는데, 어떤 것이 문제일까요? 위젯이 안뜨는건 아닙니다.
위젯 뜨고,
위에 400 에러가 뜨는 콘솔 로그를 스크린샷으로 공유 해주세요.

이거면 될까요?
위에 노란 부분이 위젯 뜰 때이고, 아래가 실행했을 때 입니다.
widget 생성하신 clientkey 가 잘들어 갔는지 확인부탁드립니다.
아니면 에러난 주문번호를 알려주세요
일단 테스트키는 복사해서 .env.local에 잘 넣었구요
convertTime(new Date(), 'yymmdd') + nanoid(6);
주문번호는 위 코드로 날짜를 포함해 랜덤생성하고 있습니다
그럼 사용하신 test 키를 알수 있을까요?
convertTime은 직접 구축한 함수입니다
test_ck_ADpexMgkW360M5zpywBrGbR5ozO0
클라이언트키
test_sk_oeqRGgYO1r50k54WdmOVQnN2Eyaz
시크릿키
입니다
widget 초기화 할때 amount 설정을 하셨나요?
저희로그상으로 결제금액이 0으로 확인됩니다.
const paymentMethodWidget = paymentWidget.renderPaymentMethods(
'#payment-widget',
{ value: finalPrice, currency: 'KRW', country: 'KR' },
);
이부분에서 value 말씀하시는거 맞나요?
네 맞습니다.
next.js를 사용중인데 useState를 이용하여 기입하였습니다.
지금 다시 실행해봤는데 작동을 합니다만, 그렇다면 value가 0이거나 null 일 때 작동을 안하는건가요?
결제이기 때문에 결제금액이 없으면 오류가 발생합니다.
네 감사합니다. 그러면 노란 경고 부분은 왜 뜨는거죠?
저희쪽에 특정 리소스에 접속되지 않아 발생하는 부분인데 동작에는 전혀 이슈 없으므로 무시하시면 됩니다
예 알겠습니다. 감사합니다!
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.