
Сайт доставки еды: проверьте весь путь от адреса до принятого заказа
Сайт доставки должен проверить адрес и доступность зоны, показать актуальные блюда и итог заказа, надёжно обработать оплату и передать заказ кухне. Нажатие кнопки клиентом, успешный платёж и принятие заказа — три разных события, которые нельзя обозначать одним словом «готово».
Проверьте адрес до длинного выбора блюд
Гость должен быстро узнать, доставляете ли вы по его адресу, когда кухня принимает заказы и доступны ли самовывоз или предварительный заказ. Если зона влияет на стоимость и ориентир времени, покажите условия до оформления корзины. Не сообщайте о недоступной зоне после того, как человек выбрал десяток позиций.
Адресные подсказки помогают вводу, но не заменяют проверку границ зоны и деталей дома. Если подключаете Яндекс Maps Suggest API, учитывайте необходимость ключа и условия сервиса. Правила зон нужно хранить в собственном процессе доставки; документация партнёрского API Яндекс Еды служит примером отраслевой модели, а не готовой интеграцией вашего сайта.
Свяжите меню с реальным наличием и модификаторами
Карточка блюда должна объяснять состав, порцию, цену и доступные изменения. Соусы, размер, степень остроты и исключения ингредиентов показывайте там, где их действительно может выполнить кухня. Итог в корзине пересчитывайте после каждого выбора; недоступное блюдо убирайте или явно помечайте до оплаты.
Стоп-лист должен приходить из того процесса, по которому кухня останавливает продажу блюда. Партнёрская документация Яндекс Еды разделяет меню, стоп-лист, приём заказа и статус; это полезное напоминание, что красивый каталог сам по себе не управляет приготовлением.
Покажите полный итог и отделите оплату от принятия
Перед нажатием кнопки заказа повторите адрес или самовывоз, блюда с модификаторами, стоимость доставки, итог и выбранный способ оплаты. Если порог бесплатной доставки есть, считайте его по понятному правилу. После отправки не очищайте корзину как признак успеха, пока неизвестно, создан ли заказ и в каком состоянии платёж.
Для онлайн-оплаты проверяйте серверное подтверждение платёжного провайдера, а не только возврат пользователя на страницу. В документации ЮKassa предусмотрены уведомления о событиях успешного и отменённого платежа. Даже оплаченный заказ должен быть принят кухней или передан оператору с явным статусом; при сбое нужен сценарий возврата или связи с клиентом.
| Событие | Что видит гость | Кто или что подтверждает |
|---|---|---|
| Адрес введён | Доступность зоны, условия и ориентир | Правила собственной зоны доставки |
| Блюдо выбрано | Актуальные опции и итог корзины | Меню и стоп-лист кухни |
| Платёж выполнен | Статус оплаты отдельно от заказа | Провайдер через серверное уведомление |
| Заказ принят | Номер, состав и следующий статус | Оператор или система кухни |
Спроектируйте сбои до запуска
Проверьте закрытую кухню, адрес за зоной, товар в стоп-листе после добавления в корзину, отклонённый платёж и оплаченный заказ, который не попал на кухню. Для каждого случая нужен понятный экран и ответственный сотрудник. Автоматический повтор отправки не должен создавать второй заказ или двойную оплату.
Для самовывоза нужен другой путь: время готовности и адрес выдачи вместо зоны курьера. Если доставку выполняет партнёр, укажите, чей статус видит покупатель и куда обращаться при проблеме. Не обещайте точную минуту прибытия без работающего способа её рассчитать и обновить.
Примите сайт на одном реальном заказе
Пройдите тестовый заказ на телефоне от адреса до подтверждения кухни, затем измените блюдо на недоступное и повторите с неуспешным платежом. Сверьте итог и состав заказа на экране гостя, у оператора и на кухне. Отдельно проверьте уведомление клиенту и путь решения ошибки.
Следующий шаг для бизнеса — описать действующие зоны, источник меню и способ передачи заказа кухне. По этой цепочке можно выбрать границу первого выпуска сайта без копирования функций маркетплейса, которые компания пока не способна поддерживать.
Вопросы и ответы
Чем сайт доставки отличается от обычного сайта ресторана?
Он должен не только показывать меню, но и выполнять заказ: проверять зону, состав и итог, оплату, принятие кухней и изменения статуса. Если доставка не запущена, лучше сначала честно показать меню и контакты ресторана.
Можно ли считать заказ успешным после оплаты?
Нет. Платёж и принятие заказа кухней — отдельные события. Гость должен получить понятный статус, а команда — сигнал, если оплаченный заказ не дошёл до обработки.
.webp&w=1920&q=85)