Astronaut
Astronaut4w ago

tosspayments/payment-sdk 라이브러리 질문 드립니다 ㅜㅜ

...
if (paymentMethod === '토스페이') {
const ck = process.env.NEXT_PUBLIC_TOSS_CLIENT_KEY;
const sk = process.env.NEXT_PUBLIC_TOSS_SECRET_KEY;

if (!ck) throw Error('Invalid Client Key');
if (!sk) throw Error('Invalid Secret Key');

const tossPayments = await loadTossPayments(ck);
tossPayments.requestPayment('토스페이', {
amount: price,
orderId: Buffer.from(token + popupId + date + ':').toString('base64'),
orderName: 'POPPY 테스트',
customerName: userInfoData[0].userNickname,
successUrl: `http://localhost:3000/detail/${popupId}/book/completed`,
failUrl: `http://localhost:3000/detail/${popupId}`,
});
}
...
...
if (paymentMethod === '토스페이') {
const ck = process.env.NEXT_PUBLIC_TOSS_CLIENT_KEY;
const sk = process.env.NEXT_PUBLIC_TOSS_SECRET_KEY;

if (!ck) throw Error('Invalid Client Key');
if (!sk) throw Error('Invalid Secret Key');

const tossPayments = await loadTossPayments(ck);
tossPayments.requestPayment('토스페이', {
amount: price,
orderId: Buffer.from(token + popupId + date + ':').toString('base64'),
orderName: 'POPPY 테스트',
customerName: userInfoData[0].userNickname,
successUrl: `http://localhost:3000/detail/${popupId}/book/completed`,
failUrl: `http://localhost:3000/detail/${popupId}`,
});
}
...
토스 페이먼츠 개발자센터에서 테스트용 'API 개별 연동 키'를 받아와 .env.local 환경 변수로 설정하고 불러와서 사용하고 있습니다. 그런데 API 요청 시 401(Unathorized)와 함께 "Uncaught (in promise) p: 인증되지 않은 시크릿 키 혹은 클라이언트 키 입니다." 라는 오류가 콘솔에 출력되네요ㅜㅜ 혹시 API 키를 잘못 넣은 것일까요?
7 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
Astronaut
AstronautOP4w ago
추가로, 해당 토스 페이먼츠 라이브러리가 package.js에서 1.9.1 버전으로 나오는데, 이것이 토스 페이먼츠 V1이라는 뜻인가요?
Ayaan이안
Ayaan이안4w ago
1. TOSS_SECRET_KEY는 프론트엔드에서 필요하지 않으며, 노출되면 안됩니다. 코드에서 삭제 하셔야 합니다. 2. NEXT_PUBLIC_TOSS_CLINET_KEY 값이 잘못 들어가는 것 같은데, 콘솔에 찍어보시거나 해당 값을 여기에 공유주시기 바랍니다. CLIENT KEY값은 노출되어도 무방합니다. package.json에서 @tosspayments/@tosspayments-sdk 가 설치되어있는 경우 v2 이외의 sdk인경우 v1 입니다.
Astronaut
AstronautOP4w ago
헐 그런 거군요 너무 감사합니다 .env.local에는 이렇게 적혀 있습니다 NEXT_PUBLIC_TOSS_CLIENT_KEY = "test_ck_pP2YxJ4K87Z9K4v09z9zrRGZwXLO";
Astronaut
AstronautOP4w ago
콘솔에도 잘 찍히는 거 확인 됐어요
No description
Astronaut
AstronautOP4w ago
제가 v2 버전으로 다시 받아서 시도해보고 잘 안 되면 다시 질문 남기겠습니다 아무래도 낮은 버전을 사용해서 그런 거 같아서요!
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?