Toss payments 개발자 커뮤니티Tp개커Toss payments 개발자 커뮤니티
Powered by
LynkyL
Toss payments 개발자 커뮤니티•5mo ago•
4 replies
Lynky

카카오페이, 네이버페이 테스트 관련

async function requestTossPayment(site, keyword, payMethod) {
  console.log("requestTossPayment 호출됨", site, keyword, payMethod);
  let method = "CARD"; // 기본값

  if (payMethod === "카드") method = "CARD";
  else if (payMethod === "가상계좌") method = "VIRTUAL_ACCOUNT";
  else if (payMethod === "계좌이체") method = "TRANSFER";

  let baseUrl = window.location.origin; // 현재 도메인 자동 사용

  let options = {
    amount: {
      currency: "KRW",
      value: finalPrice   // 최종 결제 금액 사용
    },
    orderId: generateRandomString(),
    orderName: "고정 URL 구매",
    successUrl: baseUrl + "/buy-success",
    failUrl: baseUrl + "/buy-cancel",
    method: method,
    metadata: {
      keyword: keyword,
      site: site
    }
  };

  // :white_check_mark: 결제 방식별 옵션 분리
  if (payMethod === "카드") {
    options.method = "CARD";
    options.card = {
      useEscrow: false,
      flowMode: "DEFAULT",
      useCardPoint: false,
      useAppCardOnly: false
    };
  } else if (payMethod === "가상계좌") {
    options.method = "VIRTUAL_ACCOUNT";
  } else if (payMethod === "계좌이체") {
    options.method = "TRANSFER";
  } else if (payMethod === "카카오페이") {
    options.method = "KAKAOPAY";
  } else if (payMethod === "네이버페이") {
    options.method = "NAVERPAY";
  }

  const optionsJson = JSON.stringify(options, null, 2);
  // alert(optionsJson);  // 결제 옵션을 JSON 문자열로 변환하여 alert로 표시
  // console.log("결제 옵션(JSON):", optionsJson);

  await payment.requestPayment(options);
}
async function requestTossPayment(site, keyword, payMethod) {
  console.log("requestTossPayment 호출됨", site, keyword, payMethod);
  let method = "CARD"; // 기본값

  if (payMethod === "카드") method = "CARD";
  else if (payMethod === "가상계좌") method = "VIRTUAL_ACCOUNT";
  else if (payMethod === "계좌이체") method = "TRANSFER";

  let baseUrl = window.location.origin; // 현재 도메인 자동 사용

  let options = {
    amount: {
      currency: "KRW",
      value: finalPrice   // 최종 결제 금액 사용
    },
    orderId: generateRandomString(),
    orderName: "고정 URL 구매",
    successUrl: baseUrl + "/buy-success",
    failUrl: baseUrl + "/buy-cancel",
    method: method,
    metadata: {
      keyword: keyword,
      site: site
    }
  };

  // :white_check_mark: 결제 방식별 옵션 분리
  if (payMethod === "카드") {
    options.method = "CARD";
    options.card = {
      useEscrow: false,
      flowMode: "DEFAULT",
      useCardPoint: false,
      useAppCardOnly: false
    };
  } else if (payMethod === "가상계좌") {
    options.method = "VIRTUAL_ACCOUNT";
  } else if (payMethod === "계좌이체") {
    options.method = "TRANSFER";
  } else if (payMethod === "카카오페이") {
    options.method = "KAKAOPAY";
  } else if (payMethod === "네이버페이") {
    options.method = "NAVERPAY";
  }

  const optionsJson = JSON.stringify(options, null, 2);
  // alert(optionsJson);  // 결제 옵션을 JSON 문자열로 변환하여 alert로 표시
  // console.log("결제 옵션(JSON):", optionsJson);

  await payment.requestPayment(options);
}


이렇게 했는데 buy:890 Uncaught (in promise) r: method 파라미터에 사용할 수 없는 enum 값입니다.
at Proxy.<anonymous> (standard:7:478725)
at Object.apply (standard:7:74711)
at n.value (standard:7:79247)
at Object.apply (standard:7:72012)
at requestTossPayment (buy:758:17)
at HTMLButtonElement.<anonymous> (buy:888:11)
라고 나오는데 어떤 식으로 추가해야 될까요?
Toss payments 개발자 커뮤니티 banner
Toss payments 개발자 커뮤니티Join
Toss payments 개발자 커뮤니티입니다. 결제 연동하며 겪는 기술 문의부터, 결제 시장에 대한 다양한 정보까지 얻어가세요~
15,588Members
Resources
Was this page helpful?

Similar Threads

Recent Announcements

Similar Threads

네이버페이, 카카오페이 테스트 관련
hwlimHhwlim / ❓┃연동개발-문의
4mo ago
네이버페이, 카카오페이 연동 관련 문의
shparkSshpark / ❓┃연동개발-문의
10mo ago
결제 위젯 네이버페이, 카카오페이 직연동 관련
JinhoJJinho / ❓┃연동개발-문의
2y ago
브랜드페이 및 카카오페이 테스트 관련
정훈영정정훈영 / ❓┃연동개발-문의
2y ago