---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.kz/routing/doc/en/delivery/load-data.md
  - https://yandex.kz/routing/doc/kk/delivery/load-data.md
  - https://yandex.kz/routing/doc/ru/delivery/load-data.md
  - href: ru/delivery/load-data.md
    type: text/markdown
    title: Markdown version
  - href: llms.txt
    type: text/markdown
    title: llms.txt
title: Яндекс Маршрутизация — мониторинг маршрутов — загрузка данных
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.kz/routing/doc/ru/llms.txt


# Загрузка данных

В интерфейсе Рабочего места логиста доступно два способа загрузки маршрутов в Мониторинг:

- экспорт результатов задачи планирования, если вы создаете маршруты с помощью сервиса Планирования;
- импорт из Excel-файла, если вы самостоятельно задаете последовательность выполнения заказов.

{% note info %}

Загружать маршруты в Мониторинг можно также через [API Мониторинга](https://yandex.ru/routing/doc/ru/delivery/redoc/index.html#operation/). Подробнее об этом см. в разделе [Формирование маршрутов на день](https://yandex.kz/routing/doc/ru/delivery/quickstart/start-work.md).

{% endnote %}


## Подготовка данных {#data-preparation}

Чтобы успешно загружать маршруты в Мониторинг, вы должны знать ответы на эти вопросы:

- как курьеры будут получать маршруты и [передавать свои координаты](https://yandex.kz/routing/doc/ru/delivery/courier-coordinates.md);
- есть ли потребность в созвоне курьера и получателя заказа;
- какие склады в Мониторинге будут задействованы на маршрутах.

**Мобильные приложения или GPS-трекеры**

Для получения информации о маршруте и передачи геопозиций курьер может использовать GPS-трекер или мобильное приложение [Яндекс Маршрутизация](https://yandex.kz/routing/doc/ru/delivery/app.md).

{% list tabs %}

- GPS-трекеры

  1. Сообщите своему провайдеру GPS-трекеров, что ему нужно добавить ретрансляцию данных на сервер Яндекса.
  2. Получите у провайдера номера GPS-трекеров.
  3. В файле Планирования на листе **Vehicles** добавьте столбец **Номер GPS-трекера** (`imei`).
  4. В столбце **Номер GPS-трекера** укажите полученные номера.

  Редактировать номер GPS-трекера можно в файле и в интерфейсе при планировании.

- Яндекс Маршрутизация

  1. В файле Планирования на листе **Vehicles** добавьте столбец **Логин курьера**.
  2. Укажите уникальный логин для каждого курьера.

  Редактировать логин курьера можно в файле и в интерфейсе при планировании.

  Если в полях **Логин курьера** и **Телефон** вы укажете номер телефона курьера в формате `+7хххххххххх`, курьеру не придется вводить логин для авторизации в приложении [Яндекс Маршрутизация](https://yandex.kz/routing/doc/ru/delivery/app.md).

  ![](./_images/id-phone.png)

  {% note info %}

  Чтобы номер телефона с символом `+` загрузился в Мониторинг корректно, в начале ячейки введите символ `'` (одинарная кавычка).

  {% endnote %}

{% endlist %}

**Мобильные телефоны клиентов**

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

Если нужно, чтобы курьер мог позвонить клиенту, укажите мобильные телефоны клиентов. Это можно сделать двумя способами:

  * На листе **Orders** укажите мобильные телефоны клиентов. Тогда в приложении Яндекс Маршрутизация появится кнопка **Позвонить**.

  * На листе **Orders** в комментарии к заказу укажите телефон клиента в формате: `<a href="tel:+79123456789">Позвонить</a>`. Чтобы указать добавочный номер, используйте разделители `,`, `;`, `*` или `#`: `<a href="tel:+79123456789,12">Позвонить</a>`. В приложении в поле **Комментарий логиста** появится ссылка **Позвонить**, и курьер сможет связаться с клиентом.

**Ссылка в комментарии к заказу**

Если курьеру понадобится дополнительная информация о заказе, например, правила парковки по адресу клиента, вы можете добавить ссылку в комментарии к заказу. 

Для этого на листе **Orders**  в комментарии к заказу укажите ссылку в формате `<a href="https://krasnaya-roza.com">Правила парковки</a>`. В приложении в поле **Комментарий** появится ссылка **Правила парковки**, по которой курьер сможет перейти и ознакомиться с необходимой информацией. Также вы можете указать ссылку в формате `https://krasnaya-roza.com` — в приложении она будет активной.

**Склад**

{% note alert %}

Чтобы успешно загрузить маршрут в Мониторинг, в [настройках компании](https://yandex.kz/routing/doc/ru/delivery/interface/settings.md) и в файле (задаче) Планирования обязательно должен быть [указан склад](https://yandex.kz/routing/doc/ru/delivery/interface/depots.md).

{% endnote %}

1. Укажите номер склада:
    - в файле Планирования на листе **Depot** в столбце **Номер склада**;
    - в задаче Планирования на вкладке **Склады**.
2. Загрузите файл планирования или заполните данные в интерфейсе и запустите планирование.

**Ручная настройка маршрутов**

{% note alert %}

Маршруты должны быть составлены для всех заказов, указанных на листе **Orders**. Иначе при импорте система выдаст ошибку. Посмотрите пример правильно заполненного [файла с маршрутами](https://doc-static.yandex.net/src/dev/routing/templates/сourier-example-with-routes-ru.xlsx).

{% endnote %}

Если вы самостоятельно определяете последовательность выполнения заказов, то в файл планирования нужно внести еще несколько настроек:

1. Перейдите в лист **Routes** и заполните следующие столбцы:
    - **ID машины**;
    - **Смена**;
    - **Номер заказа**.
1. Сопоставьте номер заказа с **ID машины** и **Сменой**, в которую курьер повезет заказ.
1. Определите последовательность доставки заказов.


## Экспорт в Мониторинг {#export-monitoring}

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

{% note warning %}

Решения с [кросс-доками](https://yandex.kz/routing/doc/ru/vrp/supported-use-cases.md#cross-docking) в Мониторинг не экспортируются.

{% endnote %}

### Экспорт через Рабочее место логиста {#export-routing-workspace}

{% list tabs %}

- Полный экспорт

  1. В правом верхнем углу экрана нажмите **Экспортировать**.
  2. Выберите **Мониторинг**.
  3. Выберите, с каким [статусом](https://yandex.kz/routing/doc/ru/delivery/load-data.md#order-status) должны быть созданы заказы.
  4. Нажмите **Загрузить в Мониторинг** → **Посмотреть**.
  5. В разделе **Дашборд** вы увидите спланированные маршруты.

  Подробнее см. в разделе [Экспорт](https://yandex.kz/routing/doc/ru/vrp/solution-export.md).

- Частичный экспорт

  Если часть маршрутов отслеживать не нужно, отфильтруйте или скройте их. Подробнее см. в разделе [Частичный экспорт](https://yandex.kz/routing/doc/ru/vrp/solution-export.md#partial-export).

  После этого:

  1. В правом верхнем углу экрана нажмите **Экспортировать**.
  2. Включите опцию **Только видимые маршруты**.
  3. Выберите **Мониторинг**.
  4. Выберите, с каким [статусом](https://yandex.kz/routing/doc/ru/delivery/load-data.md) должны быть созданы заказы.
  5. Нажмите **Загрузить в Мониторинг** → **Посмотреть**.
  6. В разделе **Дашборд** вы увидите спланированные маршруты.

{% endlist %}


#|
|| ![](./_images/video-icon.png) | Экспорт готовых маршрутов в сервис Мониторинга. Как экспортировать маршруты из Планирования

{% cut "Посмотреть видео" %}

@[rutube](https://rutube.ru/play/embed/ba2ed25f84d85b618e75f8f9a12f8489)

{% endcut %}

||
|#


<!-- source: ru/delivery/_includes/duplicates.md -->
При экспорте результатов планирования в Мониторинг к номеру заказа может автоматически добавляться дата. Это происходит, если номер нового заказа совпадает с уже существующим в Мониторинге. 

Например, если в Мониторинге уже есть заказ с номером `Заказ 1`, то в карточке нового заказа будет отображаться `Заказ 1 ГГГГ-ММ-ДД`.
<!-- endsource: ru/delivery/_includes/duplicates.md -->

### Экспорт через API {#export-routing-api}

{% note info %}
 
Экспортировать решение может только менеджер или администратор компании.

{% endnote %}

Чтобы экспортировать решение из Планирования в Мониторинг через API, отправьте запрос к ресурсу [routes-import](https://yandex.ru/routing/doc/ru/delivery/redoc/index.html#tag/routes-import).

**Запрос:**

{% list tabs %}

- Windows

  cURL

  ```html
  curl -H "Content-Type: application/json" -H "Authorization: OAuth <ваш-токен>" -X POST https://courier.yandex.ru/api/v2/companies/<id-вашей-компании>/routes:vrp-task-import/?vrp_task_id=<vrp_task_id>
  ```

- MacOS/Linux
  
  cURL
  
  ```html
  curl -H "Content-Type: application/json" -H "Authorization: OAuth <ваш-OAuth-токен>" -X POST https://courier.yandex.ru/api/v2/companies/<id-вашей-компании>/routes:vrp-task-import/?vrp_task_id=<vrp_task_id>
  ```

{% endlist %}

где `<vrp_task_id>` — [идентификатор решения](https://yandex.kz/routing/doc/ru/vrp/interface-result.md) из Планирования. 

**Результат:**

```json
{
  "id": "<vrp_task_import_id>",
  "status": "IN_PROGRESS",
  "create_time": "<время-создания>",
  "update_time": "<время-обновления>"
}
```
где `<vrp_task_import_id>` — идентификатор экспортированного решения в Мониторинге.

Чтобы получить результат экспорта, отправьте GET-запрос:

**Запрос:**

{% list tabs %}

- Windows

  cURL

  ```html
  curl -H "Content-Type: application/json" -H "Authorization: OAuth <ваш-токен>" -X GET http://courier.yandex.ru/api/v2/companies/<id-вашей-компании>/routes:vrp-task-import/<vrp_task_import_id>
  ```

- MacOS/Linux
  
  cURL

  
  ```html
  curl -H "Content-Type: application/json" -H "Authorization: OAuth <ваш-OAuth-токен>" -X GET http://courier.yandex.ru/api/v2/companies/<id-вашей-компании>/routes:vrp-task-import/<vrp_task_import_id>
  ```

{% endlist %}

где `<vrp_task_import_id>` — идентификатор экспортированного решения в Мониторинге.

В зависимости от статуса запроса вы получите один из результатов:

* запрос в процессе выполнения:

  ```json
  {
    "id": "<vrp_task_import_id>",
    "status": "IN_PROGRESS",
    "create_time": "<время-создания>",
    "update_time": "<время-обновления>"
  }
  ```

* запрос успешно завершен:

  ```json
  {
    "id": "<vrp_task_import_id>",
    "status": "SUCCESS",
    "create_time": "<время-создания>",
    "update_time": "<время-обновления>",
    "result": {
      "routes": [...]
      }
  }
  ```

  где массив `routes` содержит созданные маршруты.

* при выполнении запроса произошла ошибка:

  ```json
  {
    "id": "<vrp_task_import_id>",
    "status": "ERROR",
    "create_time": "<время-создания>",
    "update_time": "<время-обновления>",
    "error": {
      "message": "<описание-ошибки>"
      }
  }
  ``` 

Особенности экспорта через API:

* Запросы от одной компании выполняются последовательно в порядке их поступления.
* Если во время выполнения запроса возникнет ошибка (например, указанный в запросе склад не существует), в результате вернется сообщение об ошибке. Экспорт решения не произойдет.

## Импорт из Excel {#import-excel}

Импортируйте самостоятельно подготовленные маршруты в Мониторинг:

1. В левом меню в Рабочем Месте Логиста выберите **Мониторинг** → **Дашборд**.
1. В правом верхнем углу нажмите **Импорт из Excel**. Откроется интерфейс импорта.
1. В левом верхнем углу нажмите **Загрузить файл** и загрузите нужный файл с компьютера.
1. Проверьте уведомления системы на всех вкладках и исправьте данные, если необходимо.

   Если номера заказов повторяются, система предложит [варианты решения](#duplicate-orders). В случае выбора варианта **Оставить дубликаты и переименовать номера в новом маршруте** повторяющиеся заказы будут переименованы. К их названию добавится дата планирования в формате `ГГГГ-ММ-ДД`.

1. Перейдите на вкладку **Настройки**:
    - выберите дату, когда эти маршруты должны выполняться;
    - выберите нужный [статус заказов](https://yandex.kz/routing/doc/ru/delivery/load-data.md#order-status).
1. В левом нижнем углу нажмите кнопку **Импорт**.
1. В разделе **Дашборд** вы увидите спланированные маршруты.


#|
|| ![](./_images/video-icon.png) | Экспорт готовых маршрутов в сервис Мониторинга. Как экспортировать маршруты из Excel

{% cut "Посмотреть видео" %}

@[rutube](https://rutube.ru/play/embed/7cb1f7b9de5acfa286c88565144612c0)

{% endcut %}

||
|#


### Заполнение файла Excel {#excel-file}

{% cut "Лист Orders" %}

Заказы по всем маршрутам.

#|
|| **Поле** | **Описание** ||
|| `id` | Номер заказа в вашей системе. Значение должно быть уникально для всего листа и соответствовать [требованиям](https://yandex.kz/routing/doc/ru/vrp/properties-of-orders.md#order-id).

Максимальная длина поля — 80 символов. ||
|| `point.lat` | Широта точки заказа. ||
|| `point.lon` | Долгота точки заказа. ||
|| `title` | Название точки/имя клиента. Нужно для отображения в приложении. Например, `Алая роза` или `Василий Иванов`.

Максимальная длина поля — 1023 символа. ||
|| `address` | Адрес точки. Нужен для отображения в приложении.

Максимальная длина поля — 1023 символа. ||
|| `phone` | Номер телефона, на который отправляется SMS-уведомление о приезде курьера.
Если указано несколько номеров через запятую, в [приложении Яндекс Маршрутизация](https://yandex.kz/routing/doc/ru/delivery/app.md) появится выбор номера для звонка. SMS-уведомление в этом случае не отправляется.

Максимальная длина поля — 80 символов. Поле можно оставить пустым. ||
|| `time_window` | Временное окно доставки. Все маршруты загружаются на дату отгрузки. Например, дата отгрузки 1 мая. Если окно доставки 2 мая с 9:00 до 10:00, то нужно указать окно в формате `1.9:00–1.10:00`, если доставка на 3 мая, то `2.9:00–2.10:00` и так далее. ||
|| `shared_service_duration_s` | Время обслуживания на адрес, сек. Сюда входит время на вручение документов или паркинг. Это время влияет на время фиксации статуса доставки. ||
|| `service_duration_s` | Время обслуживания на заказ, сек. Сюда входит время на вручение самого заказа. ||
|| `shipment_size.weight_kg` | Вес заказа, кг. ||
|| `comments` | Комментарий к заказу.

Максимальная длина поля не ограничена. ||
|| `shared_with_company_ids` | ID компаний, которым доступен заказ. [Подробнее](https://yandex.kz/routing/doc/ru/delivery/functions/shared.md) ||
|| `shared_with_company_numbers` | Синонимы компаний, которым доступен заказ. [Подробнее](https://yandex.kz/routing/doc/ru/delivery/functions/shared.md) ||
|| `customer_number` | Внешний клиентский номер заказа. ||
|#

{% endcut %}

{% cut "Лист Vehicles" %}

Параметры машин.

#|
|| **Поле** | **Описание** ||
|| `id` | Логин для доступа в мобильное приложение. В качестве логина можно указать табельный номер курьера, госномер машины, номер телефона курьера и т.п.
Максимальная длина поля — 80 символов. ||
|| `ref` | Номер машины или любое другое уникальное обозначение машины. Нужно для отображения в интерфейсе.
Максимальная длина поля — 255 символов. ||
|| `imei` | Номер GPS-трекера (при наличии).
Может принимать значение от 1 до 9223372036854775807. ||
|| `phone` | Номер телефона курьера (при наличии).
Максимальная длина поля — 80 символов. ||
|| `depot_id` | Идентификатор склада (`id` на листе **Depot**). ||
|| `shifts.0.time_window` | Время начала и конца смены машины. Отслеживание трека начнется не раньше времени начала смены. Подробнее см. в разделе [Отслеживание маршрута](https://yandex.kz/routing/doc/ru/delivery/functions/tracking.md). ||
|| `shifts.1.time_window` | Если у машин нет вторых рейсов в текущие сутки, поле можно оставить пустым. Если вторые рейсы есть, укажите временное окно второго рейса. ||
|#

{% endcut %}

{% cut "Лист Depot" %}

Параметры склада. Если складов несколько, то для каждого склада заполняется отдельная строка.

#|
|| **Поле** | **Описание** ||
|| `id` | Номер склада.
Максимальная длина поля — 80 символов. ||
|| `ref` | Дополнительный идентификатор склада.
Максимальная длина поля — 1023 символа. ||
|| `title` | Название склада.
Максимальная длина поля — 1023 символа. ||
|| `point.lat` | Широта склада. ||
|| `point.lon` | Долгота склада. ||
|| `address` | Адрес склада.
Максимальная длина поля — 1023 символа. ||
|| `time_window` | Время работы склада. Не влияет на отслеживание. Можно указать `00:00–23:59`. ||
|#

{% endcut %}

{% cut "Лист Routes" %}

Привязка заказов к машинам.

#|
|| **Поле** | **Описание** ||
|| `vehicle_id` | Идентификатор машины (`id` на листе **Vehicles**).
Максимальная длина поля — 80 символов. ||
|| `shift_index` | Номер смены. Если у машин нет вторых рейсов в течение суток, укажите `0`. ||
|| `location_id` | Номер заказа (`id` на листе **Orders**).
Максимальная длина поля — 80 символов. ||
|| `route_number` | Идентификатор маршрута. Используется, если у клиента есть свой уникальный `route_number`, по которому он хочет идентифицировать маршруты. Чтобы номер маршрута в Мониторинге соответствовал `route_number`, на листе **Vehicles** нужно указать одну или несколько смен `shifts.N.time_window`. ||
|#

{% endcut %}

### Работа с дубликатами {#duplicate-orders}

Дубликаты — это заказы с повторяющимися номерами.

Если в маршруте, который вы импортируете из Excel, встречаются дубликаты, Мониторинг предупредит об этом. Уведомление и возможные действия будут показаны в окне **Импорт маршрутов** на вкладке **Заказы**.

![](./_images/duplicates-actions.png)

Чтобы импортировать данные, выберите одно из следующих действий:

**Оставить дубликаты и переименовать номера в новом маршруте**

Повторяющиеся заказы будут переименованы так, что к номеру дубликата добавится дата маршрута.

{% cut "Пример" %}

На 1 июля нужно импортировать маршрут, в котором заказ с номером `Заказ 1224047488` является дубликатом заказа из маршрута на 30 июня.

После импорта с условием **Оставить дубликаты и переименовать номера в новом маршруте** заказ из маршрута на 30 июня останется с номером `Заказ 1224047488`, а номер заказа из маршрута на 1 июля изменится и примет значение `Заказ 1224047488 2021-07-01`.

{% endcut %}

**Оставить дубликаты только в новом маршруте**

Дубликат будет перенесен из старого маршрута в новый.

{% cut "Пример" %}

На 1 июля нужно импортировать маршрут, в котором заказ с номером `Заказ 1224047488` является дубликатом заказа из маршрута на 30 июня.

После импорта с условием **Оставить дубликаты только в новом маршруте** заказ `Заказ 1224047488` из маршрута на 30 июня будет удален, а его дубликат останется в маршруте на 1 июля без изменений в номере.

{% endcut %}

**Оставить как есть**

Такой выбор означает, что система не будет совершать никаких действий с дубликатами.

При попытке сразу импортировать маршрут после выбора этой опции Мониторинг выдаст ошибку «Не удалось отправить импортированные данные. Сначала замените дубликаты повторяющихся заказов на вкладке "Заказы"».

Чтобы избежать ошибки, перед импортом удалите дубликат из Мониторинга вручную:

1. Нажмите правой клавишей мыши строку с дубликатом.
2. Нажмите **Удалить строку**.

   ![](./_images/duplicates-delete.png)

3. Перейдите на вкладку **Маршруты**.
4. В таблице маршрутов удалите строку с дубликатом.
5. Нажмите **Импорт**.

Если вы сделали выбор, но он показался неверным — нажмите кнопку **Отменить**. Так вы снова вернетесь к выбору действия с дубликатами.


## Статус заказов при загрузке {#order-status}

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

| Cтатус  | Когда назначается | Кнопки в приложении Яндекс Маршрутизация                                                                      |
| ---- | ---- | ------ |
| **Не согласован** | Если курьеру нужно звонить получателю перед тем, как к нему приехать. | Кнопки **Оптимизировать маршрут**, **Подтвердить доставку заказа** будут доступны только после звонка. |
| **Cогласован** | Если звонить получателю перед доставкой не нужно. | Все кнопки доступны сразу. |


## Дозагрузка маршрутов {#additional-load}

Вы можете загружать маршруты на дату, для которой уже есть заказы (например, при [допланировании](https://yandex.kz/routing/doc/ru/vrp/additional-planning.md)).

При добавлении новых маршрутов на день, для которого они уже есть, система выдаст предупреждение:

- при экспорте из Планирования: в окне загрузки в Мониторинг;
- в интерфейсе импорта: на вкладке **Маршруты**.

Далее нужно выбрать подходящий вариант действий.

#|
|| **Вариант** | **Действие** ||
|| **Добавить только новые** | Сохраняются все старые маршруты, новые — загружаются.

{% note info "Ограничение" %}

Вариант доступен, когда в загружаемых маршрутах нет ID заказов, которые уже есть в Мониторинге.

{% endnote %} ||

|| **Дозагрузить только новые заказы**
|
Система сверяет номера маршрутов (`route_number`) у существующих и загружаемых заказов:

- если номер совпадает, заказ добавляется в конец существующего маршрута;
- если не совпадает — создается новый маршрут.

Существующие заказы и маршруты не меняются.

Чтобы кнопка появилась:

1. В интерфейсе импорта на вкладке **Маршруты** перейдите на вкладку **Заказы** и выберите **Оставить как есть**.
1. Перейдите на вкладку **Маршруты**. Кнопка станет доступна.

||

|| **Заменить всё** | Удаляются все старые маршруты, новые — загружаются. ||

|| **Заменить все, кроме начавшихся** | Удаляются только маршруты, по которым еще не началось движение. Новые маршруты загружаются. ||
|#


## Решение проблем {#typical-problems}

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

Ниже приведена таблица с возможными причинами и способами решения.

#|
|| **Проблема** | **Возможная причина** | **Решение** ||
|| **Заказ с id <order_id> уже есть в мониторинге** |
* Совпали номера заказов.
* Заказы не удалось выполнить сегодня, и их загрузили снова: для планирования на завтра. |
В окне **Экспортировать решение** нажмите **Продублировать повторные заказы**.

У таких заказов автоматически изменится номер: в конец `<order_id>` будет добавлена дата маршрута. ||
|| **Склад с номером <depot_id> не найден** |
* В Рабочем Месте Логиста не добавлен склад.
* В файле Планирования на листе **Depots** неверно указан номер склада. |
* [Добавьте склад](https://yandex.kz/routing/doc/ru/delivery/interface/depots.md#add-depot) и укажите его номер в файле Планирования или в интерфейсе, если склад не добавлен.
* Исправьте номер склада в файле Планирования или в интерфейсе, если номер склада указан неверно. ||
|#

<!-- source: ru/delivery/_includes/feedback-head.md -->
<a href="feedback">
  <span class="button">Написать в службу поддержки</span>
</a>



[//]: # (Вариант без html\: \[Написать в службу поддержки\]\(../../../feedback.md\))


<!-- source: ru/_includes/neuroexpert.md -->



<!-- endsource: ru/_includes/neuroexpert.md -->
<!-- endsource: ru/delivery/_includes/feedback-head.md -->

