import { createCheckoutSession } from 'backend/stripe.web'; $w.onReady(() => { $w("#button1").onClick(async () => { try { console.log("Waiting for Stripe to load..."); await waitForStripe(); // Load Stripe.js dynamically console.log("Stripe.js loaded successfully"); // Initialize Stripe with your publishable key const stripe = Stripe('pk_test_51PtNPMGrrAH3r7zCpD534COeir7roOWmjxp8kyvQIPQ0sISZILgMkprlH3G8ucV8Zb6u1ErsBBMiyY2K5I3V2Vdr00UOZoE4IP'); console.log("Stripe initialized:", stripe); // Session details const sessionDetails = { successUrl: "https://your-site.com/payment-success", cancelUrl: "https://your-site.com/payment-cancel", currency: "eur", productName: "Test Product", amount: 70000, // Amount in cents }; // Call your backend to create a Stripe session const sessionId = await createCheckoutSession(sessionDetails); console.log("Session ID:", sessionId); if (!sessionId) { throw new Error("Failed to create Stripe session."); } // Redirect the user to Stripe Checkout const { error } = await stripe.redirectToCheckout({ sessionId }); if (error) { console.error("Stripe Checkout error:", error.message); } } catch (err) { console.error("Error in Stripe flow:", err); console.error("Payment failed. Check your session or Stripe setup."); } }); });