Básicamente, esto se debe a cómo funciona el sistema de descarga de carritos de Shopify.
Déjame explicarte lo que sucede en detalle...
Básicamente, lo que sucede es que la persona que pudo realizar una doble reserva generalmente regresa y termina de verificar la reserva que tenía en su carrito.
¿Pero cómo? Bueno, mi aplicación aplica un sistema de bloqueo del carrito que evita que ese espacio se pueda reservar durante 20 minutos y luego se vuelve a lanzar al público.
La cuestión es que si el personal que originalmente lo agregó al carrito regresa y termina de pagar, la reserva también se realizará.
Esto solo sucederá si el cliente regresa antes de que Shopify vacíe el carrito (lo que hace 10 días después de agregarlo al carrito).
Está bien... ¿Y ahora qué?
Recomiendo que en letras GRANDES EN NEGRITA coloque una advertencia en la descripción de tu producto y en la descripción del calendario advirtiendo a las personas que verifiquen que no están revisando un horario que ya está agotado.
Para comprobar si un horario está agotado, pídales que vuelvan a la product page del servicio y hagan clic en Book Now. Una vez que lo hagan, deben confirmar que la fecha/hora en su carrito todavía está disponible en el calendario en vivo.
Está bien... Entonces, ¿qué estás haciendo con este Leo?
Prometo que estoy haciendo todo lo que puedo con respecto a este problema de vaciado del carrito y hablando constantemente con los desarrolladores senior de Shopify sobre esto. Algunos me han dicho que planean reescribir esta parte pero es un proceso muy delicado y complicado.
He pasado fácilmente más de 500 horas o más investigando esto para tratar de descubrir cómo puedo resolverlo personalmente, pero ha sido un gran dolor de cabeza.
Creo que es mejor si esperamos a que los desarrolladores senior de Shopify hagan lo suyo;)
Puedes leer más sobre esto en los documentos de desarrollo de Shopify a continuación
https://Shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart
También puedes intentar aumentar la cantidad de tiempo que Cowlendar bloquea ese espacio mientras la reserva está en el espacio<br>
Impacto de la duración del bloqueo del carrito en la reserva doble y la disponibilidad de espacios
Cuando estableces una duración de bloqueo del carrito más larga, reduces significativamente las posibilidades de realizar reservas dobles para el mismo intervalo de tiempo. Esto sucede porque la ranura está marcada como no disponible para otros mientras está bloqueada en el carrito de un cliente. Sin embargo, es esencial entender la desventaja: una mayor duración del bloqueo significa que un espacio podría permanecer reservado para alguien que finalmente decida no completar su compra. En este caso, el espacio se bloqueó innecesariamente, lo que podría impedir que otro cliente lo reservara.
Por otro lado, reducir la duración del bloqueo aumenta las posibilidades de realizar una doble reserva, ya que el espacio estará disponible más rápidamente si el primer cliente no finaliza su compra. Esto puedes provocar que dos clientes reserven el mismo espacio antes de que el sistema pueda actualizar la disponibilidad.
Es fundamental encontrar el equilibrio adecuado para la duración del carro de bloqueo. Garantiza menos reservas dobles y minimiza el riesgo de perder oportunidades debido a espacios bloqueados no utilizados.