Basicamente, isso se deve ao funcionamento do sistema de descarga do carrinho do Shopify.
Deixe-me explicar o que acontece em detalhes...
Basicamente o que acontece é que a pessoa que conseguiu fazer a reserva dupla geralmente volta e termina de verificar a reserva que tinha no carrinho.
Mas como? Bem, meu aplicativo aplica um sistema de bloqueio de carrinho que impede que esse slot seja reservado por 20 minutos e depois seja liberado ao público novamente.
Acontece que se o pessoal que o adicionou originalmente ao carrinho voltar e terminar o check-out, a reserva também será processada.
Isso só acontecerá se o cliente voltar antes que Shopify esvazie o carrinho (o que acontece 10 dias após adicionar ao carrinho)
Tudo bem... E agora?
Eu recomendo que em letras GRANDES e NEGROS coloque um aviso na descrição do produto e na descrição do calendário alertando as pessoas para verificarem se não estão finalizando um horário que já está esgotado
Para verificar se um intervalo de tempo está esgotado, volte ao product page do serviço e clique em Book Now. Depois de fazer isso, eles deverão confirmar se a data/hora em seu carrinho ainda está disponível no calendário ao vivo
Ok... Então o que você está fazendo com esse Leo?
Prometo que estou fazendo tudo o que posso em relação a esse problema de descarga do carrinho e conversando constantemente com os desenvolvedores seniores do Shopify sobre isso. Alguns me disseram que planejam reescrever esta parte, mas é um processo muito delicado e complicado.
Passei facilmente mais de 500 horas ou mais apenas fazendo pesquisas sobre isso para tentar descobrir como posso resolver isso pessoalmente, mas tem sido uma enorme dor de cabeça.
Acho que é melhor esperarmos que os desenvolvedores seniores do Shopify façam o que querem;)
Você pode ler mais sobre isso nos documentos de desenvolvimento do Shopify abaixo
https://Shopify.dev/docs/storefronts/headless/building-with-the-storefront-api/cart
Você também pode tentar aumentar o tempo que o Cowlendar bloqueia esse slot enquanto a reserva está no slot<br>
Impacto do bloqueio da duração do carrinho na reserva dupla e na disponibilidade de slots
Ao definir uma duração mais longa para o bloqueio do carrinho, você reduz significativamente as chances de reservas duplicadas para o mesmo horário. Isso acontece porque o slot é marcado como indisponível para outras pessoas enquanto está bloqueado no carrinho do cliente. No entanto, é essencial compreender a compensação: uma duração de bloqueio mais longa significa que um espaço pode permanecer reservado para alguém que decida não concluir a compra. Nesse caso, o slot foi bloqueado desnecessariamente, impedindo potencialmente que outro cliente o reservasse.
Por outro lado, reduzir a duração do bloqueio aumenta as chances de reserva dupla, pois o slot fica disponível mais rapidamente caso o primeiro cliente não finalize a compra. Isso pode fazer com que dois clientes reservem o mesmo slot antes que o sistema possa atualizar a disponibilidade.
Encontrar o equilíbrio certo para a duração do carrinho de bloqueio é crucial. Ele garante menos reservas duplas e minimiza o risco de oportunidades perdidas devido a slots bloqueados não utilizados.