휴베이스
휴베이스2mo ago

브랜드페이 문의

테스트로 일반결제는 연동 확인이 되어서 부여받은 MID로 브랜드페이 추가했는데 "오류가 발생했습니다. 등록할 수 있는 결제수단이 존재하지 않습니다" 라고 노출됩니다
111 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
today.lastday
today.lastday2mo ago
테스트한 mid나 주문번호 공유해주세요.
휴베이스
휴베이스OP2mo ago
브랜드페이 MID : cp_hubasezil3
today.lastday
today.lastday2mo ago
다시 확인해보시겠어요? 그리고 브랜드페이 연동을 위해서는 아래 가이드 참고 부탁드려요. https://docs.tosspayments.com/guides/v2/payment-widget/integration-brandpay
브랜드페이 연동하기 | 토스페이먼츠 개발자센터
결제위젯으로 편리하게 브랜드페이를 연동하세요. 브랜드페이는 자체 간편결제 시스템을 구축하는 결제 서비스예요.
휴베이스
휴베이스OP2mo ago
정상작동 확인했습니다. 감사합니다. 위에 MID 말고 3개 더 있는대 이것도 확인부탁드립니다. cp_hubase01, cp_hubase02, cp_hubase03
today.lastday
today.lastday2mo ago
모두 확인 부타귿려요.
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
휴베이스
휴베이스OP2mo ago
카드등록이 안되네요... 카드정보 넣어서 진행하면 'customerToken이 존재하지 않습니다' 라고 나옵니다
이실장
이실장2mo ago
- redirectUrl이 등록되었는지 - redirectUrl에서 token발급 api는 호출하고 있는지 확이냏주세요
휴베이스
휴베이스OP2mo ago
redirectUrl 등록 되어있고 이미지에 redirectUrl에 등록되어있는 url 넣어줬습니다. customerKey는 예시에 있는대로 넣어줬습니다
No description
휴베이스
휴베이스OP2mo ago
현재도 'customerToken이 존재하지 않습니다' 라고 나오네요
유부장
유부장2mo ago
redirectUrl 어떻게 구현하셨는지도 보여주시겠어요 access token 발급 부분.
휴베이스
휴베이스OP2mo ago
No description
유부장
유부장2mo ago
Authorization Base64 인코딩 어떤 키로 하셨어요?
휴베이스
휴베이스OP2mo ago
브랜드페이 MID에 있는 시크릿키로 해야되는건가요?
휴베이스
휴베이스OP2mo ago
No description
이실장
이실장2mo ago
아니요
이실장
이실장2mo ago
No description
이실장
이실장2mo ago
지금 clinetKey가 docs에 공개된 키인데요 이걸로 브랜드페이 사용이 안될텐데요? clinetKey사용한 위젯키랑 매핑된 위젯시크릿키 사용해주시면되요
휴베이스
휴베이스OP2mo ago
const clientKey = "test_gck_Poxy1XQL8Rg0YjegPBgk37nO5Wml"; 키 이거 쓰고있습니다
today.lastday
today.lastday2mo ago
{"code":"NOT_REGISTERED_REDIRECT_URL","message":"리다이렉트 URL이 등록되지 않았습니다. 개발정보 페이지에서 등록해주세요."} 에러 발생중인데 상점관리자-개발자 센터에서 리다이렉트 URL 등록 하셨을까요? 리다이렉트 URL 등록하셨군요. 아직 에러 발생중인가요?
휴베이스
휴베이스OP2mo ago
네 등록은 정상으로 되었고 10분후에 테스트 하니 정상적으로 되는데 다른 오류가 발생했습니다 오류가 발생했습니다 [BRIDGE] Request Timeout. id: X0u2Qlkkm92RxEJgTvSrQ, type: TOSSPAYMENTSREQUEST_RESPONSE, body: {"step":"TOSSPAYMENTSREQUEST","requestName":"GET_PARAMETER","payload":{"name":"customerToken"}}
today.lastday
today.lastday2mo ago
등록한 리다이렉트URL(/shop/brandpay) 페이지는 로그인이 필수로 걸려있는데 이 부분 확인 부탁드려요.
휴베이스
휴베이스OP2mo ago
로그인 부분 제거 해도 같은 오류상태입니다
Kimoon Lee
Kimoon Lee2mo ago
Request Timeout 이 되는 것으로 보아 콘솔에 에러가 있을것 같은데요. 캡쳐해서 공유해주실수 있을까요?
휴베이스
휴베이스OP2mo ago
code: JXmgo28eEZ7eGW1Ggj8LAnGK<br>customerKey: MC4wOTI2OTUzNDY1NTM5실패: {code: "INVALID_REQUEST", message: "잘못된 요청입니다."} code : "INVALID_REQUEST" message : "잘못된 요청입니다."
Kimoon Lee
Kimoon Lee2mo ago
token 요청하실때 "{"grantType":"AuthorizationCode","customerKey":"MC4wOTI2OTUzNDY1NTM5" 이런식으로 json 을 " 로 감싸시는것으로 보이는데 이거 빼보세요. body 가 { 으로 시작해야 합니다.
휴베이스
휴베이스OP2mo ago
오네! 진행됩니다 감사합니다
Kimoon Lee
Kimoon Lee2mo ago
네 감사합니다.
휴베이스
휴베이스OP2mo ago
브랜드페이에 카드를 추가한 후 바로는 추가된 카드가 보이고 결제 테스트가 가능한대요 새로고침을 하면 등록된 카드가 없어지는데 추가된 카드를 유지하려면 어떻게 해야되는걸까요?
Kimoon Lee
Kimoon Lee2mo ago
영상으로 찍어서 올려주실수 있을까요?
휴베이스
휴베이스OP2mo ago
카드 추가된 화면입니다. 비번까지 완료된 화면
No description
휴베이스
휴베이스OP2mo ago
페이지에서 새로고침을 하면 추가된 카드가 없어져버립니다
휴베이스
휴베이스OP2mo ago
No description
Ayaan이안
Ayaan이안2mo ago
customerKey는 동일하시죠?
Kimoon Lee
Kimoon Lee2mo ago
영상으로 올려주시고 customerkey 도 공유 부탁드립니다.
휴베이스
휴베이스OP3w ago
안녕하세요! 테스트서버에서 테스트키로 테스트완료후 live로 키 바꿔서 실서버에 업로드 했는데 customerToken이 존재하지 않습니다 오류발생해서 문의드립니다
Kimoon Lee
Kimoon Lee3w ago
라이브로 바꾸실때 - 상점관리자 내에 라이브쪽 redirectURL 설정하셨는지 확인한후 - 변경된 redirectURL 에서 라이브키 이용해서 token 발행요청하는지 확인해주세요.
휴베이스
휴베이스OP3w ago
redirectURL 설정 url 부탁드려도 될까요? 못찾겠네요 아 찾았습니다
휴베이스
휴베이스OP3w ago
등록되어있습니다
No description
No description
유부장
유부장3w ago
운영하시는 모든 MID 에 다 등록 하셨나요? 어떤 것으로 하시는지 우선 모르겠지만, 혹시 몰라 모든 브랜드페이 MID 에 다 등록해서 해보시면 좋을것 같아요.
휴베이스
휴베이스OP3w ago
미리 다른결제마다 MID를 지정해주신거라 현재는 이 cp_hubasezil3 MID로 오류가 없어야 되는거 같습니다 일단은 등록가능한 MID는 전부 등록했습니다 현재도 같은 리다이렉트 URL 이 등록되지 않았습니다 오류네요 ㅠ test키로는 정상으로 보이는데 live 키로 수정하면 리다이렉트 오류입니다
유부장
유부장3w ago
보니까 라이브랑 테스트랑 도메인, URL 이 다른데 https://hubase.kr 에서 시작된 요청이 맞지요? 라이브에서 요청할때 명시한 redirectUrl 도 알려주시겠어요? (코드에 명시된 부분)
HUBASE
휴베이스가 운영하는 공식 쇼핑몰입니다
휴베이스
휴베이스OP3w ago
네맞습니다. 라이브 에선 https://hubase.kr/shop/order/brandpay
HUBASE
휴베이스가 운영하는 공식 쇼핑몰입니다
유부장
유부장3w ago
라이브에서 요청할때 명시한 redirectUrl 도 알려주시겠어요? (코드에 명시된 부분) SDK 호출할때 명시한 부분
휴베이스
휴베이스OP3w ago
brandpay:{ // 개발자센터의 브랜드페이 > 리다이렉트 URL에 아래 URL을 추가하세요. redirectUrl: window.location.origin + "/shop/order/brandpay" } 이렇게 되어있습니다
유부장
유부장3w ago
지금 어떤 MID 의 키로 요청 하고 계신가요?
휴베이스
휴베이스OP3w ago
variantKey 이거 얘기신걸까요? variantKey: "hubasebxfm",
휴베이스
휴베이스OP3w ago
No description
No description
유부장
유부장3w ago
https://hubase.kr/ 여기 어디로 들어가면 브랜드페이 진행 해볼수 있나요?
HUBASE
휴베이스가 운영하는 공식 쇼핑몰입니다
휴베이스
휴베이스OP3w ago
id: hilink1, pw:1234 로그인후 장바구니 아무상품이나 주문하기 누르시면 하단부에 있습니다
유부장
유부장3w ago
referer 가 https://www.hubase.kr/ 네요. www 포함해서 등록 해보시겠어요?
HUBASE
휴베이스가 운영하는 공식 쇼핑몰입니다
휴베이스
휴베이스OP3w ago
일단 재등록했습니다
No description
유부장
유부장3w ago
네 넉넉잡아 10분 정도 후에 다시 시도해주세요.
휴베이스
휴베이스OP3w ago
유부장
유부장3w ago
아 혹시나 referer 두개 다 운영하시는 거면 www 있는것 하고 없는것, 둘다 등록해서 운영하셔도 될것 같아요.
휴베이스
휴베이스OP3w ago
다른 페이지에서 variantKey: "hubasebxfm", 이걸로 똑같은 ui를 호출 할수 없는건가요? 같은 소스로 다른페이지에선 ui가 노출되지 않습니다
today.lastday
today.lastday3w ago
다른페이지에서도 호출 가능한데 어떤 에러가 발생하는지 console 로그등 확인해주세요.
휴베이스
휴베이스OP3w ago
variantKey 에 해당하는 위젯을 찾을 수 없습니다. variantKey 값을 다시 확인해주세요. 이렇게 확인됩니다
유부장
유부장3w ago
키는 어떤키 쓰고 계신가요?
Kimoon Lee
Kimoon Lee3w ago
그럼 혹시 위젯키도 동일하게 쓰시는지 확인부탁드립니다.
이실장
이실장3w ago
라이브키라 지웁니다
휴베이스
휴베이스OP3w ago
위젯키는 어떻게 확인할수 있죠?
Kimoon Lee
Kimoon Lee3w ago
variantKey: "hubasebxfm", 를 설정한 상점관리자에가서 개발자 센터로 이동하면 확인가능합니다.
휴베이스
휴베이스OP3w ago
개발자센터 페이지 보고있는데 위젯키는 안보이는데 어느 메뉴로 가야할까요?
Kimoon Lee
Kimoon Lee3w ago
여기 안보이시나요?
Kimoon Lee
Kimoon Lee3w ago
No description
휴베이스
휴베이스OP3w ago
이전에 보내드린 클라이언트키 라이브키 말고 뭐 보내드리면 될까요? 테스트 클라이언트키 입니다 test_gck_Poxy1XQL8Rg0YjegPBgk37nO5Wml 이전 결제페이지와 다른 페이지에서 키는 같은키입니다
Kimoon Lee
Kimoon Lee3w ago
variantKey 에 해당하는 위젯을 찾을 수 없습니다. variantKey 값을 다시 확인해주세요. 이렇게 확인됩니다
이 에러 받으실때 라이브키 사용하셨고 variantKey: "hubasebxfm", 를 쓰셨다는 거죠?
휴베이스
휴베이스OP3w ago
네 맞습니다
Kimoon Lee
Kimoon Lee3w ago
아 잠시만요. 동일한 라이브키 동일한 variantkey 로 특정 사이트에서는 잘되시는 거구요?
휴베이스
휴베이스OP3w ago
네 잘되고 있습니다. 기존 페이지에선 정상적으로 잘되고요 다른페이지에선 같은소스로 ui가 보이지 않습니다 결제 버튼만 보입니다
유부장
유부장3w ago
그 다른 페이지는 저희도 접속 할 수 있나요? 직접 보고 싶어요
Kimoon Lee
Kimoon Lee3w ago
저희쪽에서 variant 키 오류 받은 케이스에 보내신 키를 확인해 보면 test_gck_docs_Ovk5rk1EwkEbP0W43n07xlzm 이 것으로 확인됩니다. 위젯키를 정상적으로넣으셨는지 확인해보세요.
유부장
유부장3w ago
customer token 이 없다는 건 이제 어떤 상황인지 이해하실 것 같아요 redirectUrl 등록 안된거요
휴베이스
휴베이스OP3w ago
네네
유부장
유부장3w ago
newbase.whitesoft.net 이 도메인으로 등록된 케이스가 테스트 키에서만 등록 하셨어서, 라이브 키로 테스트 하시는 거면 라이브 쪽에도 등록 하셔야 해요. 이 부분도 봐주시고 저 사이트에 어떤키 쓰고 계시는지 볼게요 잠시만요
유부장
유부장3w ago
지금은 잘 뜨는것 같은데, 뭔가 작업 하셨어요?
No description
휴베이스
휴베이스OP3w ago
redirectUrl 넣어줬습니다 모바일 화면에서 ui안보이는 부분에 콘솔로그 보내드려요 Uncaught (in promise) r: customerKey 필수 파라미터가 누락되었습니다.
유부장
유부장3w ago
아까 문의주신 내용이랑 달라지셨어요 에러 상황마다 저희 가이드가 달라지거든요 customerKey 는 비회원이면 ANONYMOUS 를 사용하시면 되요
휴베이스
휴베이스OP3w ago
정리해서 전달드리겠습니다 url -> http://newbase.whitesoft.net/shop/order/order view/shop/order/order.php view/mobile/shop/order/order.php 이 파일들에서 토스 결제를 이용하고 싶습니다. 현재 같은 소스이고 위 파일에서는 정상적으로 토스 ui가 보이고 아래 파일에서는 토스 ui가 보이지 않습니다
HUBASE
휴베이스가 운영하는 공식 쇼핑몰입니다
휴베이스
휴베이스OP3w ago
이 두 페이지에서 같은키의 토스결제를 이용하고싶습니다
유부장
유부장3w ago
mobile 에서, customerKey 를 설정하는 member_seq 라는 값이 정상적으로 값 지정이 되었는지 확인 해주세요.
휴베이스
휴베이스OP2w ago
헛... 감사합니다 지정을 안해놨네요 고맙습니다 main(); async function main() { const button = document.getElementById("payment-button"); //const coupon = document.getElementById("coupon-box"); let priceText = document.querySelector('.settle_amount_disp').innerText; let total_toss_price = parseInt(priceText.replace(/[^0-9]/g, ''), 10); member_seq = $("input[name='member_seq']").val(); //alert(member_seq); const amount = { currency: "KRW", value: total_toss_price, }; amount value 값이 결제 페이지에서 수정이 (적립금이나 예치금 사용 스크립트) 가능한대 변경이 되었을때(함수에서 total_toss_price = 수정된값 ) amount value 값이 변경되어 넘어가지 않고 처음 페이지에서 정의된 값이 넘어갑니다 변경된 가격으로 토스에 전달드릴 방법이 있을까요?
Kimoon Lee
Kimoon Lee2w ago
updateamount 쓰시면 됩니다.
휴베이스
휴베이스OP2w ago
관련 설명페이지가 있을까요? v2에서도 사용이 가능한건가요?
Kimoon Lee
Kimoon Lee2w ago
v2 는 이거 쓰시면 될겁니다.
Kimoon Lee
Kimoon Lee2w ago
토스페이먼츠 JavaScript SDK | 토스페이먼츠 개발자센터
토스페이먼츠 JavaScript SDK를 추가하고 메서드를 사용하는 방법을 알아봅니다.
휴베이스
휴베이스OP2w ago
결제버튼 click 이벤트 이후에도 사용이 가능한가요? 토스 프로세스중 어디에서 수정이 가능한까요? coupon.addEventListener("change", async function () { if (coupon.checked) { await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); return; } await widgets.setAmount({ currency: "KRW", value: total_toss_price, }); }); 여기서만 가능한건가요?
유부장
유부장2w ago
결제하기 버튼은 무조건 가장 마지막에 수행 되어야 하는 액션입니다. 결제위젯 setAmount 는, 해당 금액으로 위젯을 다시 렌더링 하는 기능 입니다. 고로, 금액 변경 로직이 있거나, 고객이 할인을 적용했을때 돌리는 등 해당 액션이 수행될때 해야 겠죠.
휴베이스
휴베이스OP2w ago
변경 함수에서 widgets.setAmount({ currency: 'KRW', value: amount, }); amount에 변경된 값을 넣어줘도 변경이 되지 않아 문의드립니다 coupon.addEventListener("change", async function () { if (coupon.checked) { await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); return; } await widgets.setAmount({ currency: "KRW", value: total_toss_price, }); }); 여기서만 수정이 가능한건가요?
Kimoon Lee
Kimoon Lee2w ago
아뇨 원하시는 곳에서 수정하시면되고 await widgets.setAmount({ 하신후 promise 받으신후에 결제하기 진행하셔야 합니다.
휴베이스
휴베이스OP2w ago
promise 어느부분에서 진행되어야 되는건가요? 예제 코드나 다른 설명페이지가 없나요?
Kimoon Lee
Kimoon Lee2w ago
setAmount 를 하시고 바로 requestpayment 를 호출하시나요?
휴베이스
휴베이스OP2w ago
라디오 박스가 있어서 체크시 settleAmount() 함수로 페이지에서 보이는 가격이 변경됩니다. 첫 setAmount requestpayment 이전에 호출되고 변경된 가격을 settleAmount()에서 해주려고 하고있습니다. let priceText = document.querySelector('.settle_amount').innerText; let total_toss_price = parseInt(priceText.replace(/[^0-9]/g, ''), 10); main(); async function main() { const button = document.getElementById("payment-button"); //const coupon = document.getElementById("coupon-box"); member_seq = $("input[name='member_seq']").val(); amount = { currency: "KRW", value: total_toss_price, }; settleAmount() 호출하면 priceText 가격이 수정됩니다. 이 함수 안에서 amount = { currency: "KRW", value: 변경된값, }; 이후 결제 요청을 드리면 return 에 amount값이 변경전 값입니다.
today.lastday
today.lastday2w ago
여기 샘플코드가 있고 해당 코드 동작하는 부분을 보시면 이해될거에요. https://github.com/tosspayments/tosspayments-sample/blob/main/express-javascript/public/widget/checkout.html
GitHub
tosspayments-sample/express-javascript/public/widget/checkout.html ...
토스페이먼츠 결제연동 샘플 프로젝트입니다. Contribute to tosspayments/tosspayments-sample development by creating an account on GitHub.
today.lastday
today.lastday2w ago
해당 코드는 할인적용을 통해 금액 변경되도록 checkbox를 만들고 checkbox 변화가 있을때 금액 변경하도록 해둔 것이거든요. 위에 계속 설명 드렸던 코드의 전체부분입니다.
휴베이스
휴베이스OP2w ago
보내주신 샘플그대로면 체크박스 체크후에 결제 진행하면 5000원 깍인 가격으로 토스로 전달되야하죠? success 페이지에서 amount 확인할때요/ 그리고 변경된값은 coupon.addEventListener("change", async function () { if (coupon.checked) { await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); return; } await widgets.setAmount({ currency: "KRW", value: total_toss_price, }); }); 여기서 처리 해야한다는 말씀이신거죠? coupon.addEventListener("change", async function () { if (coupon.checked) { await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); return; } await widgets.setAmount({ currency: "KRW", value: amount.value -4000, }); }); 쿠폰 체크하지 않고 테스트로 -4000 이부분이 적용되지 않습니다 amount = { currency: "KRW", value: 10000, }; 쿠폰체크시 success 페이지 amount 는 5000 확인했습니다. 쿠폰 비체크시 success 페이지 amount 는 10000 이네요...
Kimoon Lee
Kimoon Lee2w ago
await widgets.setAmount({ currency: "KRW", value: amount.value -4000, }); 여기 코드가 실제로 실행되는지를 확인해 주세요.
휴베이스
휴베이스OP2w ago
샘플코드 그대로인데 실행이 되지 않아 질문드렸습니다 amount = { currency: "KRW", value: 10000, }; coupon.addEventListener("change", async function () { alert('33434'); if (coupon.checked) { alert('coupon'); await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); console.log(amount); return; } alert('change'); await widgets.setAmount({ currency: "KRW", value: 20000, }); console.log(amount); }); // ------ '결제하기' 버튼 누르면 결제 alert, log는 잘 찍힙니다 하지만 log에 amount 값은 계산되지 않고 위에 초기값 10000 만 찍힙니다
유부장
유부장2w ago
amount 라는 값을 계산 하셨어요..? value 라는 걸로 대체 하신것 같은데
휴베이스
휴베이스OP2w ago
예제 그대로 value: amount.value - 5000, 진행이 되는지 확인하려고 해봤습니다 예제 그대로면 log에 체크박스 체크하면 5000 이 나와야 되는거 아닌가요?
유부장
유부장2w ago
console.log 를 amount 로 찍으시는데요?
휴베이스
휴베이스OP2w ago
그럼 setAmount 값은 어떻게 확인할수 있을까요? 체크박스 체크후
유부장
유부장2w ago
function 수행 할때 value 가 필요 한 거니까, value 값을 미리 계산해서 amount 가 아닌 다른 객체에 넣어두고 그 객체를 console log 로 찍어보면 되지 않을까요? 뭐 이건 구현하는 개발자 마음이라서
휴베이스
휴베이스OP2w ago
if (coupon.checked) { alert('coupon'); await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); console.log(amount); 이렇게 로그를 찍으면 value: amount.value - 5000 {currency: 'KRW', value: 5000} 이렇게 결과값이 나올꺼라 예상했습니다
유부장
유부장2w ago
그니까 여기에 value: amount.value - 5000, 이렇게 넣으셨으니까 콘솔에 원하는 값을 보려면 console.log(amount.value - 5000) 이렇게 찍어야 하는거 아니냐는 말씀을 드리고 있는겁니다 amount 객체 에 -5000 계산해서 넣은적이 없으신 거잖아요?
휴베이스
휴베이스OP2w ago
amount = { currency: "KRW", value: 10000, }; await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, });
amount currentcy: "KRW", value: : 5000 setAmount가 다시 값을 넣어주는거 아닌가요?
유부장
유부장2w ago
이건 토스페이먼츠 method 인거고 보고 싶으신건 그 값을 보고 싶으신 거니까 별개로 보셔야 할것 같아요 그 값을 관리하는건 가맹점 이니까요 amount 라는 객체에 값을 지정하고 그 값을 활용하는건 가맹점 인거고 토스페이먼츠 js method 는 그 파람 값을 쓰는 거고요
휴베이스
휴베이스OP2w ago
await widgets.setAmount({ currency: "KRW", value: amount.value - 5000, }); 이후 결제를 진행하면 success 파라미터 amount에선 5000이 되겠네요?
유부장
유부장2w ago
그러니까 그 계산값을 보려면 amount 라는 값에 계산을 해서 다시 넣던가 아니면 새롭게 계산되는 객체를 만들던가요 그렇겠죠?

Did you find this page helpful?