Configurar una suscripción con débito directo SEPA
Obtén información sobre cómo crear y cobrar una suscripción con débito directo SEPA.
Una sesión de Checkout representa los datos de la intención de compra de tu cliente. Creas una sesión de Checkout cuando el cliente quiere iniciar una suscripción. Después de redirigir a tu cliente a una sesión de Checkout, Stripe le presentará un formulario de pago en el que podrá completar su compra. Una vez completada, el cliente será redirigido de nuevo a tu sitio.
Configurar StripeLado del servidor
Instala el cliente de Stripe que prefieras:
Instala la CLI de Stripe (opcional). La CLI te permite hacer pruebas de webhooks y puedes ejecutarla para crear productos y precios.
Para obtener más opciones de instalación, consulta Empezar a usar la CLI de Stripe.
Crear el modelo de tarifasDashboardCLI de Stripe
Crea los productos con sus precios en el Dashboard o con la CLI de Stripe.
Este ejemplo utiliza un servicio de precio fijo con dos niveles de servicio diferentes: básico y prémium. Para cada opción de nivel de servicio, debes crear un producto y un precio recurrente. (Si quieres agregar un cargo puntual, como el costo de instalación, crea un tercer producto con un precio puntual. Para simplificar, este ejemplo no incluye un cargo puntual).
En este ejemplo, cada producto se factura mensualmente. El precio del producto básico es del 5 EUR. El precio del producto prémium es del 15 EUR.
Para ver otros modelos de tarifas, consulta los ejemplos de Billing.
Crear una sesión de CheckoutLado del clienteLado del servidor
Agrega un botón para finalizar la compra en tu sitio web que llame a un punto de conexión del lado del servidor para crear una sesión de Checkout.
<html> <head> <title>Checkout</title> </head> <body> <form action="/create-checkout-session" method="POST"> <button type="submit">Checkout</button> </form> </body> </html>
Crea una sesión de Checkout con la ID de un precio existente. Asegúrate de que el modo esté configurado en subscription
y de especificar al menos un precio recurrente. Puedes agregar precios únicos además de los precios recurrentes. Después de crear la sesión de Checkout, redirige a tu cliente a la URL devuelta en la respuesta.
Cuando el cliente completa correctamente su pago, se lo redirige a success_
, una página de tu sitio web que le informa que su pago se realizó correctamente. Haz que el ID de sesión esté disponible en la página de éxito incluyendo la variable de la plantilla {CHECKOUT_
en el success_
como en el ejemplo anterior.
Cuando tu cliente hace click en tu logotipo en una sesión de Checkout sin completar el pago, Checkout lo redirige nuevamente a tu sitio web, a la cancel_
. Por lo general, esta es la página de tu sitio web que el cliente vio antes de ser redirigido a Checkout.
Las sesiones de Checkout vencen 24 horas después de su creación de forma predeterminada.
Desde el Dashboard, habilita los métodos de pago de tus clientes que quieras aceptar. Checkout acepta varios métodos de pago.
Precaución
No te bases solo en el redireccionamiento a la success_
para detectar el inicio del pago, ya que:
- Algunos usuarios maliciosos podrían acceder directamente a la
success_
y tener acceso a los bienes o servicios sin pagar.url - Los clientes no siempre llegan a la
success_
después de un pago correcto, posiblemente porque cierran la pestaña del navegador antes de ser redirigidos.url
Confirmar que el pago se efectuó correctamente
Cuando tu cliente completa correctamente el pago, Stripe lo redirige a la URL que especificaste en el parámetro success_
. Por lo general, esta es una página de tu sitio web que le informa al cliente que su pago se efectuó correctamente.
Sin embargo, SEPA Direct Debit es un método de pago con notificación diferida, lo que significa que los fondos no están disponibles de inmediato. Por ello, demora la gestión logística hasta que los fondos estén disponibles. Después de que el pago se efectúa correctamente, el estado del PaymentIntent subyacente cambia de processing
a succeeded
.
Puedes confirmar que el pago se efectuó correctamente de varias maneras:
Probar la integración
Puedes probar tu integración usando los Códigos Internacionales de Cuenta Bancaria (IBAN) que figuran a continuación. Los detalles del método de pago se recopilan para cada IBAN, pero muestran un comportamiento diferente cuando se cobran.