const clientKey = "test_gck_DpexMgkW36xRWW6aqDeMrGbR5ozO"; const customerKey = "AylGnOoRxU_JZb6F6sqRG"; const button = document.getElementById("payment-button"); // ------ 결제위젯 초기화 ------ // 비회원 결제에는 customerKey 대신 ANONYMOUS를 사용하세요. const paymentWidget = PaymentWidget(clientKey, customerKey); // 회원 결제 // const paymentWidget = PaymentWidget(clientKey, PaymentWidget.ANONYMOUS) // 비회원 결제 // ------ 결제 UI 렌더링 ------ // 결제위젯 UI를 렌더링할 위치를 지정합니다. `#payment-method`와 같은 CSS 선택자와 결제 금액 객체를 추가하세요. // 해외 결제에는 currency, country 정보가 필수입니다. // https://docs.tosspayments.com/sdk/widget-js#renderpaymentmethods선택자-결제-금액-옵션 const paymentMethods = paymentWidget.renderPaymentMethods( "#payment-method", { value: totalAmount, currency: "USD", // USD 통화만 지원 country: "US", // ISO-3166의 두 자리 국가 코드 모두 지원 }, // 렌더링하고 싶은 결제 UI의 variantKey // 아래 variantKey는 문서용 테스트키와 연동되어 있습니다. 멀티 UI를 직접 만들고 싶다면 계약이 필요해요. // https://docs.tosspayments.com/guides/payment-widget/admin#새로운-결제-ui-추가하기 //{ variantKey: "PAYPAL" } // PayPal이 추가된 결제 UI의 variantKey { variantKey: "DEFAULT" } ); // Tunggu widget siap paymentMethods.on("ready", () => { console.log("Toss PaymentWidget siap"); document.getElementById("checkout").style.display = "block"; // tombol bayar aktif }); // ------ 이용약관 UI 렌더링 ------ // 이용약관 UI를 렌더링할 위치를 지정합니다. `#agree`와 같은 CSS 선택자를 추가하세요. // https://docs.tosspayments.com/sdk/widget-js#renderagreement선택자-옵션 paymentWidget.renderAgreement( "#agreement", { variantKey: "AGREEMENT-EN" } // 영문 이용약관 UI 렌더링 ); const selectedMethod = paymentMethods.getSelectedPaymentMethod(); console.log(selectedMethod); paymentWidget.requestPayment({ orderId: order_id, orderName: "토스 티셔츠 외 2건", successUrl: "http://cellating-mall.kowebpro.co.kr/contents/payment/proc.php", failUrl: "http://cellating-mall.kowebpro.co.kr/contents/payment/failed.php", customerEmail: email, customerName: name, products: products, shipping: { fullName: name, address: { country: "US", line1: address, line2: "", // bisa diisi address2 area1: "CA", area2: "San Jose", postalCode: "16328", }, }, }