Почему бронирование велосипедов сложнее, чем кажется

Столик в ресторане можно заменить следующим. Прокатный велосипед — нет. Размер рамы, состояние батареи электровелосипеда, статус обслуживания и даже точка, где стоит велосипед, определяют, можно ли его продать на определённое время. Система бронирования, которая считает всё это простым остатком на складе, в итоге продаст велосипед, которого нет.

Типичная поломка — не эффектная ошибка. Это субботнее утро, клиент с письмом-подтверждением и стойка, где последний электровелосипед L стоит в мастерской с разряженной батареей. Остальная часть этой страницы — о том, как сценарий бронирования bikerental спроектирован так, чтобы такая ситуация вообще не могла возникнуть.

Проблема, механизм, результат

Проблема: последний велосипед продают дважды

Двое клиентов одновременно открывают страницу бронирования и оба видят один электровелосипед размера M. Если доступность определяется в браузере или проверяется и записывается двумя отдельными шагами, оба могут завершить покупку.

Механизм: доступность рассчитывается и резервируется на сервере одним шагом, а бронь забирает мощность из пула до того, как рассматривается второй запрос. Буферы между прокатами и блокировки на обслуживание входят в тот же расчёт. Более подробное объяснение — в как предотвратить двойные брони в прокате велосипедов.

Результат: второй клиент видит слот недоступным или получает предложение следующего размера или времени вместо подтверждения, которое прокат не может выполнить.

Проблема: клиентам не нужно выбирать серийный номер

Клиентам всё равно, достанется ли EB-042 или EB-043. Важно, чтобы их ждал трейловый электровелосипед размера L.

Механизм: публичный сценарий продаёт категории и размеры. Закрепление конкретного велосипеда делает прокат позже, в админке, — заранее для обещанного велосипеда или у стойки, когда клиент пришёл.

Результат: короткий сценарий бронирования, который конвертирует, и стойка, которую сотрудники по-прежнему контролируют. Та же идея лежит в основе части продукта про управление парком.

Проблема: цены не помещаются в тарифную сетку

Прокаты продают по часам, на полдня, на день и на несколько дней, часто с минимумами и другими правилами для пиковых выходных.

Механизм: тарифы поддерживают эти длительности, минимальные сроки проката и буферы между бронями, поэтому возврат в 16:00 не продаётся снова в 16:05.

Результат: цена, которую видит клиент, — та, которую прокат имел в виду, а буферы защищают время осмотра, которое Вам действительно нужно. Если Вы задаёте или пересматриваете тарифы, ценовая стратегия в прокате велосипедов показывает, как их выстроить.

Клиенты без записи, телефонные брони и сайт проката

Онлайн-брони — лишь часть дня у стойки. Клиенты без записи и телефонные заявки создаются в админке тем же механизмом доступности, что и на публичном сайте, поэтому у стойки есть один источник правды. Можно пользоваться готовой страницей бронирования bikerental или встроить ту же доступность на собственный сайт.

Что проверить в любой системе бронирования

Чем бы Вы ни пользовались, задайте ей одни и те же вопросы: учитывает ли она обслуживание и буферы, умеет ли продавать категории и закреплять велосипеды позже, считает ли залоги и соглашения частью брони, обрабатывает ли клиентов без записи тем же механизмом? Чек-лист системы бронирования для проката велосипедов превращает их в таблицу оценки для любого поставщика.

Frequently asked questions

Могут ли двое клиентов забронировать один велосипед одновременно?

Доступность определяется на сервере, а бронь забирает мощность тем же шагом, поэтому второму клиенту слот показывается недоступным вместо подтверждения.

Можно ли встроить бронирование на собственный сайт?

Да. Можно пользоваться готовой страницей бронирования bikerental или встроить ту же доступность на сайт своего проката.

Пользуются ли клиенты без записи той же системой?

Да. Клиенты без записи и телефонные заявки создаются в админке тем же механизмом доступности, что и онлайн-брони.

Выбирает ли клиент конкретный велосипед?

Нет. Он выбирает категорию, размер и время. Сотрудник закрепляет конкретный велосипед до выдачи или у стойки.