Tengo un plan de suscripción diferente en la banda a partir de cero. Cuando el cliente se registra, creo una suscripción con un plan gratuito de forma predeterminada.
En el futuro, el cliente desea actualizar el plan a través de la sesión de pago, ¿cómo puedo pasar los detalles de mi suscripción existente a la sesión de pago para actualizar el plan etiquetado con el ID de suscripción en lugar de crear varias suscripciones?
Pasé por la sesión de pago de creación de franjas Doc, pero no pude encontrar una manera de pasar la ID de suscripción en la sesión de pago.
Cualquier ayuda sería muy apreciada
Está intentando actualizar una suscripción existente a través de una CheckoutSession, que no es compatible.
Si un cliente usa Checkout para suscribirse a un nuevo precio, eso crea un objeto de suscripción completamente nuevo. No puede pasar una ID de suscripción existente ya que Checkout no puede modificar eso.
Debe usar Checkout en mode: setup para recopilar los detalles de la tarjeta de su cliente. Este modo setup solo recopila detalles de la tarjeta, pero no cobra ni crea una Suscripción para ese Cliente.
Luego, en su código del lado del servidor después de recibir el evento de webhook checkout.session.completed , actualice la suscripción existente para cambiar del precio "gratuito" al precio "pagado": https://stripe.com/docs/api/ suscripciones/actualización