Заготовка для интеграции с сервисом Яндекс Еда

04.05.24

Интеграция - WEB-интеграция

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

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Заготовка для интеграции с сервисом Яндекс Еда:
.cfe 10,43Kb ver:3
38 6 200 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Взаимодействие с сервисом Яндекс Еда происходит на основании pull-модели. Т.е. сервис Яндекс Еда как клиент отправляет вам запросы, а вам, соответственно, необходимо разработать серверную часть в виде http-сервиса.

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

Я сделал расширение, в котором реализован работоспособный (проверенный Яндексом) http-сервис. В принципе, расширение универсально. Хотя оно тестировалась на УТ 11.5, с минимальными изменениями его можно применить в любой типовой или нетиповой конфигурации. В соответствующих местах кода даны комментарии на этот счет.

 

	//Здесь создание документа Заказ клиента в УТ11
	//Конфигурация может быть другой, в том числе не типовой
	//Документ (или даже не документ, а что-то еще) может быть другим
	//Все что Яндексу нужно от вас, это УИД созданного объекта
	//Переделайте этот блок в соответствии с вашими требованиями
	новзаказ=документы.ЗаказКлиента.СоздатьДокумент();
	новзаказ.Дата=текущаядата();
	новзаказ.Контрагент=справочники.Контрагенты.РозничныйПокупатель;
	новзаказ.Партнер=новзаказ.Контрагент.Партнер;
	новзаказ.Организация=справочники.Организации.НайтиПоНаименованию("Организация");
	новзаказ.Статус=перечисления.СтатусыЗаказовКлиентов.КОтгрузке;
	новзаказ.Приоритет=справочники.Приоритеты.НайтиПоНаименованию("Средний");
	новзаказ.Склад=справочники.Склады.НайтиПоНаименованию("Центральный склад");
	
	чт=новый ЧтениеJSON;
	чт.УстановитьСтроку(Запрос.ПолучитьТелоКакСтроку());
	вхд=ПрочитатьJSON(чт);
	
	для каждого стр из вхд.items цикл

 

	//В запросе передается ссылка на склад	
	//Идея Яндекса в том, чтобы качать не весь справочник товаров,
	//а только те, что относятся к определенному складу(магазину) что бы это ни значило.
	//Поэтому я передаю информацию по товарам, которые сейчас есть в остатках на данном складе 	
	//Вы можете переделать это в соответствии с вашими требованиями
	элементы=новый массив;
	ид=Запрос.ПараметрыURL["placeId"];
	строкауид=лев(ид,8)+"-"+сред(ид,9,4)+"-"+сред(ид,13,4)+"-"+сред(ид,17,4)+"-"+прав(ид,12);
	склад=справочники.склады.получитьссылку(новый УникальныйИдентификатор(строкауид));
    запрос=новый запрос;
	запрос.Текст=
	"ВЫБРАТЬ 
	|	ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
	|	ТоварыНаСкладахОстатки.ВНаличииОстаток КАК ВНаличииОстаток
	|ИЗ
	|	РегистрНакопления.ТоварыНаСкладах.Остатки(, Склад = &Склад) КАК ТоварыНаСкладахОстатки";
	запрос.УстановитьПараметр("Склад",склад);
	выб=запрос.Выполнить().Выбрать();
	пока выб.Следующий() цикл

 

Надеюсь, это позволит вам сделать свою интеграцию с сервисом Яндекс Еда быстро и легко.

Тестировал на 8.3.23.1739.

Т.к. это http-сервис, то управляемость(неуправляемость) форм значения не имеет.

 

UPD 15.03.2024

Исправлены выявленные ошибки

UPD 30.03.2024

Реализованы методы СтатусЗаказа и ОтменаЗаказа. Внесены исправления в соответствии с изменившейся спецификацией от Яндекс 

UPD 04.05.2024

Добавлен метод СоставЗаказа. Он располагается в одной ветке с отменой заказа. Для отмены используется DELETE, для состава заказа GET. 

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь 1С:Предприятие 8 1C:Бухгалтерия 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM / LOGICSTARS. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM / LOGICSTAR разных брендов в одной информационной базе в ручном и автоматическом режиме.

42700 руб.

03.08.2020    24328    37    24    

28

WEB-интеграция Программист Бизнес-аналитик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Оптовая торговля, дистрибуция, логистика ИТ-компания Платные (руб)

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

17568 руб.

20.12.2024    6306    28    4    

30

WEB-интеграция Программист 1С:Предприятие 8 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Расширение для автоматизации передачи данных между сервисом Vetmanager с 1С: Бухгалтерия 3.0. Решение позволяет загружать документы и справочники из Ветменеджер в 1С:Бухгалтерию, сокращая время на ручной ввод данных и минимизируя ошибки.

24000 руб.

02.02.2021    23038    68    52    

43

WEB-интеграция Анализ продаж Системный администратор Программист Пользователь 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)

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

60000 руб.

07.05.2019    43128    76    45    

31

WEB-интеграция Загрузка и выгрузка в Excel Программист Пользователь 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Россия Платные (руб)

Расширение освободит вас от необходимости вручную обновлять информацию о товарах в группах ВКонтакте. Достаточно задать правила один раз, и система автоматически формирует файлы yml для дальнейшей загрузки в группы в ВК. Вы сможете легко выбирать, какие товары публиковать, создавая гибкие критерии отбора. Например, можно добавить важные для покупателей параметры: цвет, размер или другие характеристики.

12200 руб.

29.08.2025    2786    7    8    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Torin 966 23.08.23 16:29 Сейчас в теме
+ Спасибо за "заготовку"!!! Приятно :)
2. zevsbog 16.11.23 15:09 Сейчас в теме
Здравствуйте, в этом расширении входит аутентификация по OAuth2.0. Точнее сказать описана ли у вас работа с токеном, с секретным ключом?
5. mkalimulin 1628 15.03.24 23:03 Сейчас в теме
(2) Добрый день! Реализацию проверки токена я оставил на ваше усмотрение. В заготовке токен не проверяется. Хотя проверяется само его наличие
3. paulpit 23 07.03.24 19:18 Сейчас в теме
А где взять документацию по API Яндекс ЕДА?
Можете прислать в ЛС хост, имя метода и входящие параметры методов - получить статусы заказов, меню ресторана.
4. mkalimulin 1628 15.03.24 23:01 Сейчас в теме
(3) Яндекс предоставляет документацию при заключении договора. А хост ваш. Они к вам "стучатся", не вы к ним
6. zhuravlev_as 614 25.04.24 22:06 Сейчас в теме
Правильно ли понимаю, что сам по себе Яндекс не отдает данные в http-сервис. Только по запросу. В частности на примере данных заказов. Мы должны указать id-заказа (номер) в предложенном расширении, чтобы можно было получить данные его состава?
7. Re:аниматор 337 22.04.26 06:25 Сейчас в теме
(0) Здравствуйте! Можете добавить вариант скачивания за рубли? Актуально ли решение на текущий момент?
8. mkalimulin 1628 22.04.26 20:31 Сейчас в теме
(7) Добрый день! После праздников планирую проверить актуальность
Re:аниматор; +1 Ответить
9. Re:аниматор 337 13.05.26 11:25 Сейчас в теме
(8) Добрый день! Проверили актуальность, рабочий код, можно скачивать?
Для отправки сообщения требуется регистрация/авторизация