На одном аккаунте одновременно может происходить только одна операция, занимающая время на календаре.
И она включает проверку того, что это время доступно. Все остальные такие операции ожидают своей очереди.
Достигается это с помощью системных блокировок. Это исключает возможность случайного перебронирования.
При использовании платежей картами через ЮMoney, мы вынуждены допускать контролируемые перебронирования.
Мы проверяем, что заказ доступен при перенаправлении клиента на оплату.
Но ЮMoney технически не дают возможность проверить доступность заказа перед фактическим снятием средств с карты.
Два клиента могут одновременно занять и оплатить последнее свободное место. Мы при появлении второго платежа понимаем,
что место уже занято. Но деньги вернуть автоматически мы не можем, поэтому мы оставляем заказ. Мы отправляем вам сообщение
о таком заказе с яркой пометкой о перебронировании. Вероятность такого исхода событий крайне мала.
При использовании платежей PayAnyWay, Paypal и Stripe (недоступен в СНГ) вероятность перебронирования полностью исключена.
Здесь мы уже имеем возможность проверить доступность заказа перед снятием денег с карты. Также перебронирование невозможно при заказах,
не требующих платежей.
Администратор может целенаправленно сделать перебронирование. Для этого в параметрах бронирования есть флаг Сверх лимита.
При выставленном флаге можно занять больше мест, чем фактически доступно.