¿Cómo puedo enviar una cantidad variable en mi línea de pedido, ya que solo acepta números enteros, descanse, todo funciona, pero esta cantidad variable no funciona?
<?php require_once('vendor/autoload.php'); \Stripe\Stripe::setApiKey('sk_test_key'); $session = \Stripe\Checkout\Session::create([ 'payment_method_types' => ['card'], 'line_items' => [[ 'price_data' => [ 'currency' => 'usd', 'product_data' => [ 'name' => 'T-shirt', ], 'unit_amount' => 2000, ], 'quantity' => 1, ]], 'mode' => 'payment', 'success_url' => 'https://example.com/success', 'cancel_url' => 'https://example.com/cancel', ]); ?> <html> <head> <title>Buy cool new product</title> <script src="https://js.stripe.com/v3/"></script> </head> <body> <div class="field"> <label for="amount">Amount to pay</label> <input type="number" id="amount" step="0.01" value="5.00"> </div> <button id="checkout-button">Checkout</button> <script> var stripe = Stripe('pk_test_51JWkHLK7X12cK8Ptf5y5DQn6Ugf6miu3AqSuhH9wdLsyTB9ouf0TY31vDQxq19xIt6YH76uMTEX1kU9HMyrcEb6w00MTxHnGxc'); var amount = document.getElementById('amount'); const btn = document.getElementById("checkout-button") btn.addEventListener('click', function(e) { e.preventDefault(); stripe.redirectToCheckout({ sessionId: "<?php echo $session->id; ?>" }); }) </script> </body> </html>¿Cómo puedo enviar una cantidad variable en mi línea de pedido, ya que solo acepta números enteros, descanse, todo funciona, pero esta cantidad variable no funciona?
El código para crear la intención de pago con su clave secreta debe ejecutarse en el lado del servidor; no debe usar su clave secreta en el código del lado del cliente.
Debe seguir la guía aquí para ver cómo puede generar una intención de pago y proporcionar la clave secreta en una plantilla procesada por el servidor, o puede realizar una solicitud asíncrona a su servidor desde un SPA para obtener un secreto de cliente de intención de pago. La guía pasa por ambas opciones.