Адрес и меню ведут к корзине, оплате, кухне и курьеру доставки еды
Создание сайтов

Сайт доставки еды: проверьте весь путь от адреса до принятого заказа

Сайт доставки должен проверить адрес и доступность зоны, показать актуальные блюда и итог заказа, надёжно обработать оплату и передать заказ кухне. Нажатие кнопки клиентом, успешный платёж и принятие заказа — три разных события, которые нельзя обозначать одним словом «готово».

Проверьте адрес до длинного выбора блюд

Гость должен быстро узнать, доставляете ли вы по его адресу, когда кухня принимает заказы и доступны ли самовывоз или предварительный заказ. Если зона влияет на стоимость и ориентир времени, покажите условия до оформления корзины. Не сообщайте о недоступной зоне после того, как человек выбрал десяток позиций.

Адресные подсказки помогают вводу, но не заменяют проверку границ зоны и деталей дома. Если подключаете Яндекс Maps Suggest API, учитывайте необходимость ключа и условия сервиса. Правила зон нужно хранить в собственном процессе доставки; документация партнёрского API Яндекс Еды служит примером отраслевой модели, а не готовой интеграцией вашего сайта.

Свяжите меню с реальным наличием и модификаторами

Карточка блюда должна объяснять состав, порцию, цену и доступные изменения. Соусы, размер, степень остроты и исключения ингредиентов показывайте там, где их действительно может выполнить кухня. Итог в корзине пересчитывайте после каждого выбора; недоступное блюдо убирайте или явно помечайте до оплаты.

Стоп-лист должен приходить из того процесса, по которому кухня останавливает продажу блюда. Партнёрская документация Яндекс Еды разделяет меню, стоп-лист, приём заказа и статус; это полезное напоминание, что красивый каталог сам по себе не управляет приготовлением.

Покажите полный итог и отделите оплату от принятия

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

Для онлайн-оплаты проверяйте серверное подтверждение платёжного провайдера, а не только возврат пользователя на страницу. В документации ЮKassa предусмотрены уведомления о событиях успешного и отменённого платежа. Даже оплаченный заказ должен быть принят кухней или передан оператору с явным статусом; при сбое нужен сценарий возврата или связи с клиентом.

СобытиеЧто видит гостьКто или что подтверждает
Адрес введёнДоступность зоны, условия и ориентирПравила собственной зоны доставки
Блюдо выбраноАктуальные опции и итог корзиныМеню и стоп-лист кухни
Платёж выполненСтатус оплаты отдельно от заказаПровайдер через серверное уведомление
Заказ принятНомер, состав и следующий статусОператор или система кухни

Спроектируйте сбои до запуска

Проверьте закрытую кухню, адрес за зоной, товар в стоп-листе после добавления в корзину, отклонённый платёж и оплаченный заказ, который не попал на кухню. Для каждого случая нужен понятный экран и ответственный сотрудник. Автоматический повтор отправки не должен создавать второй заказ или двойную оплату.

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

Примите сайт на одном реальном заказе

Пройдите тестовый заказ на телефоне от адреса до подтверждения кухни, затем измените блюдо на недоступное и повторите с неуспешным платежом. Сверьте итог и состав заказа на экране гостя, у оператора и на кухне. Отдельно проверьте уведомление клиенту и путь решения ошибки.

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

Вопросы и ответы

Чем сайт доставки отличается от обычного сайта ресторана?

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

Можно ли считать заказ успешным после оплаты?

Нет. Платёж и принятие заказа кухней — отдельные события. Гость должен получить понятный статус, а команда — сигнал, если оплаченный заказ не дошёл до обработки.

Получите понятный план следующего шага

Опишите, что не работает или что нужно запустить. Уточним задачу и предложим практичный состав и порядок работ.

Написать на почтуhello@iskro.techTelegram
Получить разбор проекта