웹 모바일 결제 문의드립니다.
PC화면에서는 결제하기 버튼 클릭 시 결제창이 뜨고 성공 시 성공 화면으로 넘어가는데 모바일에서 결제하기 버튼 클릭 시 결제창이 뜨지 않고 성공 화면으로 넘어가서 문의드립니다.
11 Replies
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) :
- 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요.
* 주말/공휴일에는 답변이 늦을 수 있어요.
<script src="https://js.tosspayments.com/v1/payment-widget"> function tos_payment() {
paymentWidget.requestPayment({
orderId: generateRandomString(),
orderName: "운수",
customerEmail: "",
customerName: "게스트",
}).then(function (data) {
console.log(data);
if (data) {
// 동적으로 필드 추가
var paymentKeyInput = document.createElement('input');
paymentKeyInput.setAttribute('type', 'hidden');
paymentKeyInput.setAttribute('name', 'paymentKey');
paymentKeyInput.setAttribute('value', data.paymentKey ?? '');
document.frm.appendChild(paymentKeyInput);
var orderIdInput = document.createElement('input');
orderIdInput.setAttribute('type', 'hidden');
orderIdInput.setAttribute('name', 'orderId');
orderIdInput.setAttribute('value', data.orderId ?? '');
document.frm.appendChild(orderIdInput);
var amountInput = document.createElement('input');
amountInput.setAttribute('type', 'hidden');
amountInput.setAttribute('name', 'amount');
amountInput.setAttribute('value', data.amount ?? '');
document.frm.appendChild(amountInput);
}
document.frm.submit();
}).catch(function (error) {
console.log(error);
if (error.code === 'USER_CANCEL') {
alert('결제가 취소되었습니다');
location.reload();
} else if (error.code === 'INVALID_CARD_COMPANY') {
alert('유효하지 않은 카드 정보입니다.');
location.reload();
}
});
}
결제하기 버튼 실행 시 tos_payment() 을 실행하는데 PC에서는 카드사 선택 후 결제하기 버튼 클릭 시 카드사 결제 팝업이 뜨는데 모바일에서는 뜨지 않는데 따로 화면을 만들어야하나요?
성공페이지로 넘어가는게 아니라, promise response 로 에러가 내려갔을것 같은데
콘솔에 확인되는 에러 없으신가요?
모바일에서는 promise 사용이 불가 합니다.
Promise 실전에서 사용해보기 | 토스페이먼츠 개발자센터
토스페이먼츠 결제위젯 예제로 Promise가 무엇이고 어떻게 사용해야 되는지 알아볼게요.
콘솔에 에러는 없어요 모바일로도 사용하려고하면 어떻게 해야하는지와 키를 새로 발급받아야하나요?
링크 확인해보시겠어요?
모바일은 promise 사용이 불가 합니다.
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.
promise 라서 사용불가는 알겠습니다 모바일은 리다이렉트 방식을 사용하라고 되어있던데 참고할만한게 있을까요?
제품을 새로 구매해야하는지도 알고 싶습니다
일반적인 연동방식에 사용되는 successUrl, failUrl 을 구성해서 파라미터로 보내시면 됩니다. 아래 링크 2번 ~ 3번 ~ 4번 부분을 참고 하세요
https://docs.tosspayments.com/guides/v2/payment-widget/integration#%EA%B2%B0%EC%A0%9C-%EC%9A%94%EC%B2%AD%ED%95%98%EA%B8%B0
전에 제품을 구매 하셨나요? 계약 등을 제외하고 "제품" 을 구매하실 필요는 없습니다.
연동하기 | 토스페이먼츠 개발자센터
토스페이먼츠의 간편한 결제 연동 과정을 한눈에 볼 수 있습니다. 각 단계별 설명과 함께 달라지는 UI와 코드를 확인해보세요.
지금 결제 사용 버전이 v1 으로 되어 있는데 보내주신 링크는 버전이 v2 로 보여지는데 혹시 마이그레이션을 해야 가능한 부분일까요?
양쪽 기능은 동일해요