Создание заявки

Метод создает заявку с указанными параметрами в системе Яндекс Доставки. Отправка запроса не означает, что заказ принят в работу.
Для доставки в течение дня необходимо в теле запроса заполнить поле "same_day_data", указать габариты и вес товара. Раздел "client_requirements" заполнять не нужно.
Результат оценки заказа можно узнать при помощи метода claims/info.

Request

POST

b2b.taxi.yandex.net/b2b/cargo/integration/v2/claims/create

Адрес сервиса

Query parameters

Name

Description

request_id*

Type: string

Токен идемпотентности. Допускаются буквы, цифры, другие символы. Чтобы гарантировать уникальность значений, рекомендуем использовать формат uuid и его производные.

Если при создании заявки была получена ошибка сервера (код 5xx) или произошел таймаут, используйте то же значение для повторной попытки. (Иначе возможно дублирование заявки, в результате чего за заказом может приехать несколько курьеров).

В остальных случаях (при создании новой заявки) следует использовать новое значение request_id.
Подробнее

Min length: 1

Max length: 128

Headers

Name

Description

Accept-Language*

Type: string

Предпочитаемый язык ответа. Примеры:«ru» - русский, «en» - английский

Example: ru

Body

application/json
{
    "shipping_document": "string",
    "items": [
        {
            "extra_id": "БП-208",
            "pickup_point": 1,
            "dropoff_point": 2,
            "droppof_point": 0,
            "title": "Плюмбус",
            "size": {
                "length": 0.1,
                "width": 0.2,
                "height": 0.3
            },
            "weight": 2,
            "cost_value": "2.00",
            "cost_currency": "RUB",
            "quantity": 1,
            "fiscalization": {
                "excise": "12.50",
                "vat_code_str": "vat_none",
                "supplier_inn": 3664069397,
                "article": "20ML50OWKY4FC86",
                "mark": {
                    "kind": "gs1_data_matrix_base64",
                    "code": "444D00000000003741"
                },
                "item_type": "product"
            }
        }
    ],
    "route_points": [
        {
            "point_id": 6987,
            "visit_order": 1,
            "contact": {
                "name": "Морти",
                "phone": "+79099999998",
                "phone_additional_code": "602 17 500",
                "email": "example@yandex.ru"
            },
            "address": {
                "fullname": "Санкт-Петербург, Большая Монетная улица, 1к1А",
                "shortname": "Большая Монетная улица, 1к1А",
                "coordinates": [
                    0
                ],
                "country": "Россия",
                "city": "Санкт-Петербург",
                "building_name": "БЦ На Большой Монетной",
                "street": "Большая Монетная улица",
                "building": "23к1А",
                "porch": "A",
                "sfloor": "1",
                "sflat": "1",
                "door_code": "169",
                "door_code_extra": "код на вход во двор #1234, код от апартаментов #4321",
                "doorbell_name": "Магидович",
                "comment": "Домофон не работает",
                "uri": "ymapsbm1://geo?ll=38.805%2C55.084",
                "description": "Санкт-Петербург, Россия"
            },
            "skip_confirmation": false,
            "leave_under_door": false,
            "meet_outside": false,
            "no_door_call": false,
            "type": "source",
            "buyout": {
                "payment_method": "card"
            },
            "payment_on_delivery": {
                "customer": {
                    "inn": 3664069397,
                    "email": "example@yandex.ru",
                    "phone": "79000000000"
                },
                "payment_method": "card"
            },
            "external_order_id": "100",
            "external_order_cost": {
                "value": "100.0",
                "currency": "RUB",
                "currency_sign": "₽"
            },
            "pickup_code": "893422"
        }
    ],
    "emergency_contact": {
        "name": "Рик",
        "phone": "+79826810246",
        "phone_additional_code": "602 17 500"
    },
    "client_requirements": {
        "taxi_class": "express",
        "cargo_type": "lcv_m",
        "cargo_loaders": 0,
        "cargo_options": [
            "thermobag"
        ],
        "pro_courier": false
    },
    "callback_properties": {
        "callback_url": "https://www.example.com/"
    },
    "skip_door_to_door": false,
    "skip_client_notify": false,
    "skip_emergency_notify": false,
    "skip_act": false,
    "optional_return": false,
    "due": "2020-01-01T00:00:00+00:00",
    "comment": "Ресторан",
    "referral_source": "bitrix",
    "same_day_data": {
        "delivery_interval": {
            "from": "2020-01-01T07:00:00+00:00",
            "to": "2020-01-01T07:00:00+00:00"
        }
    },
    "auto_accept": false,
    "offer_payload": "asjdijasDKL;ahsdfljhlkjhasF;HS;Ldjf;ljloshf"
}

Name

Description

items*

Type: CargoItem[]

Параметры товаров

Min items: 1

route_points*

Type: RequestPoint[]

Информация по точкам маршрута

Max items: 300

Min items: 2

auto_accept

Type: boolean

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

callback_properties

Type: CallbackProperties

Параметры уведомления сервера клиента о смене статуса заявки.

Уведомление представляет собой POST-запрос по указанному url, к
которому будут добавлены информация о дате последнего изменения
заявки и идентификатора заявки в виде
'updated_ts=&claim_id=<id заявки>', то есть url вида
'https://example.com/?my_order_id=123&' будет расширен до
'https://example.com/?my_order_id=123&updated_ts=...&claim_id=...'.

Важно: параметры добавляются конкатенацией к callback_url, то есть
url вида 'https://example.com' превратится в невалидный
'https://example.comupdated_ts=...&claim_id=...'.

Поддерживаются только http и https. При https ssl-сертификат должен
быть выдан известным серверу центром сертификации.

К уведомлениям следует относиться как к push ahead of polling, как
к ускорению получения информации о смене статусов. Сервер ожидает
ответ 200, при таймаутах или любом другом ответе какое-то время
будет пытаться доставить уведомление, после чего прекратит попытки.
То есть для надежного получения статуса по заявке клиенту
необходимо запрашивать информацию с помощью метода claims/info.

Клиенту следует учесть, что ответ операции claims/info может
содержать более старое состояние заявки (надо ориентироваться на
значение поля updated_ts). В этом случает необходимо повторить
вызов операции через некоторое время (от 5 до 30 секунд).

client_requirements

Type: ClientRequirements

Требования от клиента, указанные при создании или редактировании заявки

comment

Type: string

Комментарий к заказу

Example: Ресторан

Max length: 7000

due

Type: string<date-time>

Ожидаемое время прибытия курьера. (В РФ отложить расчетное время прибытия можно на 30-60 минут от текущего момента).
Если этот параметр не указан, поиск курьера будет осуществлен на ближайшее время.

Example: 2020-01-01T00:00:00+00:00

emergency_contact

Type: ContactWithPhone

Информация о контактном лице с номером телефона

offer_payload

Type: string

Payload, полученный методом offers/calculate

Example: asjdijasDKL;ahsdfljhlkjhasF;HS;Ldjf;ljloshf

optional_return

Type: boolean

Отключить возврат товаров в случае отмены заказа.

Возможные значения:

  • true (курьер оставляет товар себе)
  • false (по умолчанию, требуется вернуть товар)

Default:

Example:

referral_source

Type: string

Источник заявки (можно передать наименование CMS, из которой создается запрос)

Example: bitrix

same_day_data

Type: SameDayData

Признаки заказа "В течение дня"

shipping_document

Type: string

Сопроводительные документы

skip_act

Type: boolean

Не показывать акт приема-передачи

Example:

skip_client_notify

Type: boolean

Не отправлять отправителю/получателю смс-уведомления,
когда к нему направится курьер.

Значение по умолчанию: false (отправлять уведомления)

Default:

Example:

skip_door_to_door

Type: boolean

Отключить доставку до двери (выключить опцию "От двери до двери").

Возможные значения:

  • true (курьер доставит заказ только на улицу, до подъезда)
  • false (курьер доставит до двери) - значение по умолчанию

Default:

Example:

skip_emergency_notify

Type: boolean

Не отправлять уведомление запасному контактному лицу

Значение по умолчанию: false (отправлять уведомления)

Default:

Example:

CargoItem

Name

Description

cost_currency*

Type: string

Трехзначный код валюты, в которой ведется расчет

Example: RUB

Min length: 3

Max length: 3

cost_value*

Type: string

Цена за единицу товара в валюте cost_currency.
Для страхования стоимости передайте фактическую цену груза

Example: 2.00

pickup_point*

Type: integer<int64>

Идентификатор точки (int64), откуда нужно забрать
товар. Отличается от идентификатора в заявке.

Может быть любым числом. Должен соответствовать значению route_points[].point_id
у точки отправки

Example: 1

quantity*

Type: integer<int64>

Количество товара в единицах (int64)

Example: 1

Min value: 1

title*

Type: string

Наименование единицы товара

Example: Плюмбус

dropoff_point

Type: integer<int64>

Идентификатор точки (int64), куда нужно доставить товар (отличается от идентификатора в заявке).

Может быть любым числом. Должен соответствовать значению route_points[].point_id у точки назначения

Example: 2

droppof_point

Type: integer<int64>

deprecated, use dropoff_point

extra_id

Type: string

Краткий уникальный идентификатор товара (номер заказа в рамках заявки, как правило идентичен external_order_id)

Example: БП-208

Max length: 512

fiscalization

Type: ItemFiscalization

Информация по фискализации (актуально для оплаты при получении)

size

Type: CargoItemSizes

Габариты товара в метрах. В полях следует передавать актуальные значения.

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

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

Курьер (courier): до 0.80 м × 0.50 м × 0.50 м
Экспресс (express): до 1.00 м × 0.60 м × 0.50 м
Грузовой (cargo):

  • Маленький кузов: до 1.70 м × 0.96 м × 0.90 м
  • Средний кузов: до 2.60 м × 1.30 м × 1.50 м
  • Большой кузов: до 3.80 м × 1.80 м × 1.80 м

weight

Type: number

Вес единицы товара в кг. В поле следует передавать актуальные значения.

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

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

Курьер (courier): до 10 кг
Экспресс (express): до 20 кг
Грузовой (cargo):

  • Маленький кузов: до 300 кг
  • Средний кузов: до 700 кг
  • Большой кузов: до 1400 кг

Example: 2

RequestPoint

Name

Description

address*

Type: CargoPointAddress

Адрес точки

contact*

Type: CreatedContactOnPoint

Информация о контактном лице

point_id*

Type: integer<int64>

Целочисленный идентификатор точки (int64), уникальна в рамках создания заявки

Example: 6987

type*

Type: PointType

Тип точки:

  • source - точка отправления, где курьер забирает товар
  • destination – точки назначения, где курьер передает товар
  • return - точка возврата товара (добавляется автоматически и по умолчанию совпадает с точкой отправления, но также можно определить другую точку)

Example: source

Enum: source, destination, return

visit_order*

Type: integer<int64>

Порядок посещения точки (нумерация начинается с 1) (int64)

Example: 1

buyout

Type: RequestBuyout

Информация по выкупу товара курьером в точке отправления (актуально, если для всех точек назначения в маршруте включена оплата при получении).

external_order_cost

Type: ExternalOrderCost

Стоимость внешнего заказа, привязанного к точке

external_order_id

Type: string

Номер заказа из системы клиента.
Передается для точки с типом destination

Example: 100

Max length: 512

leave_under_door

Type: boolean

Оставить посылку у двери

meet_outside

Type: boolean

Курьера встретят на улице у подъезда

no_door_call

Type: boolean

Не звонить в дверь

payment_on_delivery

Type: CreateRequestPaymentOnDelivery

Информация по оплате при получении (актуально для оплаты при получении)

pickup_code

Type: string

Код выдачи посылки курьеру.
Курьеру потребуется ввести этот код, чтобы подтвердить, что он забрал посылку.
Для этого необходимо, чтобы ваши сотрудники на точке выдачи имели возможность назвать этот код курьеру.
Актуально для точки с типом 'source'.
Формат кода: 6 цифр
|
Код выдачи товара (ПВЗ)

Example: 893422

skip_confirmation

Type: boolean

Пропускать подтверждение по смс в данной точке

Значение по умолчанию: false (подтверждение требуется).

Default:

Example:

CallbackProperties

Параметры уведомления сервера клиента о смене статуса заявки.

Уведомление представляет собой POST-запрос по указанному url, к
которому будут добавлены информация о дате последнего изменения
заявки и идентификатора заявки в виде
'updated_ts=&claim_id=<id заявки>', то есть url вида
'https://example.com/?my_order_id=123&' будет расширен до
'https://example.com/?my_order_id=123&updated_ts=...&claim_id=...'.

Важно: параметры добавляются конкатенацией к callback_url, то есть
url вида 'https://example.com' превратится в невалидный
'https://example.comupdated_ts=...&claim_id=...'.

Поддерживаются только http и https. При https ssl-сертификат должен
быть выдан известным серверу центром сертификации.

К уведомлениям следует относиться как к push ahead of polling, как
к ускорению получения информации о смене статусов. Сервер ожидает
ответ 200, при таймаутах или любом другом ответе какое-то время
будет пытаться доставить уведомление, после чего прекратит попытки.
То есть для надежного получения статуса по заявке клиенту
необходимо запрашивать информацию с помощью метода claims/info.

Клиенту следует учесть, что ответ операции claims/info может
содержать более старое состояние заявки (надо ориентироваться на
значение поля updated_ts). В этом случает необходимо повторить
вызов операции через некоторое время (от 5 до 30 секунд).

Name

Description

callback_url*

Type: string

URL, который вызывается при смене статусов по заявке.

Данный механизм устарел, вместо него следует использовать операцию claims/journal.

Example: https://www.example.com/

Pattern: ^https?:.*

ClientRequirements

Требования от клиента, указанные при создании или редактировании заявки

Name

Description

taxi_class*

Type: string

Тариф доставки. Возможные значения: courier, express, cargo

Example: express

cargo_loaders

Type: integer<int64>

Число грузчиков для грузового тарифа.
Возможные значения: 0, 1, 2.

Точный список возможных значений для конкретной точки
уточняйте с помощью метода получения тарифов tariffs.

Example: 0

Min value: 0

cargo_options

Type: string[]

Список дополнительных опций тарифа.

Возможные отдельные опции:

  • auto_courier (курьер только на автомобиле)
  • thermobag (курьер с термосумкой)

Пример списка опций: ["auto_courier"].

Точный список возможных значений для конкретной геоточки
уточните с помощью метода получения тарифов tariffs

Example: thermobag

cargo_type

Type: CargoType

Тип (размер) кузова для грузового тарифа.
Возможные значения:
- van ("Маленький кузов")
- lcv_m ("Средний кузов")
- lcv_l ("Большой кузов").

Точный список возможных значений для конкретной геоточки
уточните с помощью метода получения тарифов tariffs

Example: lcv_m

Enum: van, lcv_m, lcv_l, lcv_xl

pro_courier

Type: boolean

Включить опцию "Профи" для тарифов "Экспресс" и "Курьер".
Поиск исполнителя будет происходить только среди опытных курьеров.

Example:

ContactWithPhone

Информация о контактном лице с номером телефона

Name

Description

name*

Type: string

Имя контактного лица

Example: Рик

phone*

Type: string

Телефон контактного лица

Example: +79826810246

phone_additional_code

Type: string

Добавочный номер для звонка курьера

Example: 602 17 500

SameDayData

Дополнительная информация для заявок "В течение дня"

Name

Description

delivery_interval*

Type: object

Интервал забора и доставки посылки

ItemFiscalization

Информация по фискализации (актуально для оплаты при получении)

Name

Description

article

Type: string

Артикул товара.
Должен быть уникальным для товаров, передаваемых из одной точки.

Example: 20ML50OWKY4FC86

excise

Type: string

Сумма акциза

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

item_type

Type: ItemType

Тип наименования: товар или услуга.
Значение по умолчанию: product

Enum: product, service

mark

Type: ItemMark

Уникальный код товара (КИЗ). Актуален для РФ.
Если товары имеют уникальный код, то на каждый товар необходимо создать отдельный блок

supplier_inn

Type: string

ИНН поставщика (10 или 12 цифр).

Example: 3664069397

Pattern: ^[A-Z0-9\\-]+$

vat_code_str

Type: string

Ставка НДС. Возможные значения:
vat_none - без НДС;
vat0 - нулевая ставка НДС (применяется в редких случаях);
vat10 - ставка НДС 10%;
vat20 - ставка НДС 20%.

Example: vat_none

CargoItemSizes

Габариты товара в метрах. В полях следует передавать актуальные значения.

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

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

Курьер (courier): до 0.80 м × 0.50 м × 0.50 м
Экспресс (express): до 1.00 м × 0.60 м × 0.50 м
Грузовой (cargo):

  • Маленький кузов: до 1.70 м × 0.96 м × 0.90 м
  • Средний кузов: до 2.60 м × 1.30 м × 1.50 м
  • Большой кузов: до 3.80 м × 1.80 м × 1.80 м

Name

Description

height*

Type: number

Высота в метрах

Example: 0.3

length*

Type: number

Длина в метрах

Example: 0.1

width*

Type: number

Ширина в метрах

Example: 0.2

CargoPointAddress

Адрес точки

Name

Description

coordinates*

Type: number[]

Координаты точек в виде массива из двух вещественных чисел: долгота, широта — именно в таком порядке.
Указываются округленные значения координат.

Max items: 2

Min items: 2

fullname*

Type: string

Полный адрес с указанием города, улицы и номера дома.
Номер квартиры, подъезда и этаж указывать не нужно.

Example: Санкт-Петербург, Большая Монетная улица, 1к1А

building

Type: string

Строение

Example: 23к1А

building_name

Type: string

Название апартаментов (здания)

Example: БЦ На Большой Монетной

city

Type: string

Город

Example: Санкт-Петербург

comment

Type: string

Комментарий для курьера.

Для точки отправки используйте шаблон: "Доставка из магазина <>. Сообщите менеджеру, что заказ для Яндекс Доставки. Назовите номер заказа <> и заберите посылку. Заказ оплачен безналично, при передаче заказа нельзя требовать с получателя деньги за доставку."

Для точек доставки в комментарии передавайте пожелания получателя. Например, "домофон не работает" / "шлагбаум закрыт, позвонить за 10 минут" / "не звонить, спит ребенок".

Example: Домофон не работает

Max length: 7000

country

Type: string

Страна

Example: Россия

description

Type: string

Географическая область, уточняющая краткий адрес до глобального соответствия

Example: Санкт-Петербург, Россия

door_code

Type: string

Код домофона

Example: 169

door_code_extra

Type: string

Дополнительные указания по домофонам

Example: код на вход во двор #1234, код от апартаментов #4321

doorbell_name

Type: string

Имя на дверном звонке

Example: Магидович

porch

Type: string

Подъезд (может быть A)

Example: A

sflat

Type: string

Квартира

Example: 1

sfloor

Type: string

Этаж

Example: 1

shortname

Type: string

Краткий адрес в пределах города (как на Таксометре)

Example: Большая Монетная улица, 1к1А

street

Type: string

Улица

Example: Большая Монетная улица

uri

Type: string

URI геообъекта на картах

Example: ymapsbm1://geo?ll=38.805%2C55.084

CreatedContactOnPoint

Информация о контактном лице

Name

Description

name*

Type: string

Имя контактного лица

Example: Морти

phone*

Type: string

Телефон контактного лица

Example: +79099999998

Max length: 30

Pattern: [0-9 \\(\\)\\-\\+]+

email

Type: string

Email — обязательный параметр для точек с типом source и return

Example: example@yandex.ru

Max length: 320

Pattern: \S+@\S+.\S+

phone_additional_code

Type: string

Добавочный номер для звонка курьера

Example: 602 17 500

PointType

Тип точки:

  • source - точка отправления, где курьер забирает товар
  • destination – точки назначения, где курьер передает товар
  • return - точка возврата товара (добавляется автоматически и по умолчанию совпадает с точкой отправления, но также можно определить другую точку)

Type

Description

PointType

Example: source

Enum: source, destination, return

RequestBuyout

Информация по выкупу товара курьером в точке отправления (актуально, если для всех точек назначения в маршруте включена оплата при получении).

Name

Description

payment_method*

Type: PaymentMethod

На данный момент актуально только cash

Enum: card, cash

ExternalOrderCost

Стоимость внешнего заказа, привязанного к точке

Name

Description

currency*

Type: string

Валюта

Example: RUB

currency_sign*

Type: string

Знак валюты

Example:

value*

Type: string

Стоимость

Example: 100.0

CreateRequestPaymentOnDelivery

Информация по оплате при получении (актуально для оплаты при получении)

Name

Description

payment_method*

Type: PaymentMethod

Выбранный тип оплаты.
card - оплата картой;
cash - оплата наличными (пока недоступна);

Enum: card, cash

customer

Type: RequestCustomerFiscalization

Информация о получателе

CargoType

Тип (размер) кузова для грузового тарифа.
Возможные значения:
- van ("Маленький кузов")
- lcv_m ("Средний кузов")
- lcv_l ("Большой кузов").

Точный список возможных значений для конкретной геоточки
уточните с помощью метода получения тарифов tariffs

Type

Description

CargoType

Example: lcv_m

Enum: van, lcv_m, lcv_l, lcv_xl

ItemType

Тип наименования: товар или услуга.
Значение по умолчанию: product

Type

Description

ItemType

Enum: product, service

ItemMark

Уникальный код товара (КИЗ). Актуален для РФ.
Если товары имеют уникальный код, то на каждый товар необходимо создать отдельный блок

Name

Description

code*

Type: string

Код маркировки товара в соответствии с форматом kind

Example: 444D00000000003741

kind*

Type: string

Тип маркировки.
Возможные значения:

  1. compiled - уже разобранная марка с выделенным GTIN и Serial.
    Пример:
    - 444D00000000003741
  2. gs1_data_matrix_base64 - код товара в формате GS1 Data Matrix,
    подлежащий маркировке средствами идентификации.
    Максимум 200 символов.
    Код товара необходимо передавать целиком,
    закодировав строку в формат base64.

Example: gs1_data_matrix_base64

PaymentMethod

Выбранный тип оплаты.
card - оплата картой;
cash - оплата наличными (пока недоступна);

Type

Description

PaymentMethod

Enum: card, cash

RequestCustomerFiscalization

Информация о получателе

Name

Description

email

Type: string

Электронная почта пользователя в формате example@yandex.ru.
Если не указано, будет использована почта получателя из точки назначения

Example: example@yandex.ru

inn

Type: string

ИНН пользователя (10 или 12 цифр)

Example: 3664069397

Pattern: ^[A-Z0-9\\-]+$

phone

Type: string

Телефон пользователя в формате +X XXX XXX XX XX. Если не указано, будет использован телефон получателя из точки

Example: 79000000000

Responses

200 OK

Ок, заявка создана

Body

application/json
{
    "id": "741cedf82cd464fa6fa16d87155c636",
    "corp_client_id": "cd8cc018bde34597932855e3cfdce927",
    "items": [
        {
            "extra_id": "БП-208",
            "pickup_point": 1,
            "dropoff_point": 2,
            "droppof_point": 0,
            "title": "Плюмбус",
            "size": {
                "length": 0.1,
                "width": 0.2,
                "height": 0.3
            },
            "weight": 2,
            "cost_value": "2.00",
            "cost_currency": "RUB",
            "quantity": 1,
            "fiscalization": {
                "excise": "12.50",
                "vat_code_str": "vat_none",
                "supplier_inn": 3664069397,
                "article": "20ML50OWKY4FC86",
                "mark": {
                    "kind": "gs1_data_matrix_base64",
                    "code": "444D00000000003741"
                },
                "item_type": "product"
            }
        }
    ],
    "route_points": [
        {
            "id": 1,
            "contact": {
                "name": "Морти",
                "phone": "+79099999998",
                "phone_additional_code": "602 17 500",
                "email": "example@yandex.ru"
            },
            "address": {
                "fullname": "Санкт-Петербург, Большая Монетная улица, 1к1А",
                "shortname": "Большая Монетная улица, 1к1А",
                "coordinates": [
                    0
                ],
                "country": "Россия",
                "city": "Санкт-Петербург",
                "building_name": "БЦ На Большой Монетной",
                "street": "Большая Монетная улица",
                "building": "23к1А",
                "porch": "A",
                "sfloor": "1",
                "sflat": "1",
                "door_code": "169",
                "door_code_extra": "код на вход во двор #1234, код от апартаментов #4321",
                "doorbell_name": "Магидович",
                "comment": "Домофон не работает",
                "uri": "ymapsbm1://geo?ll=38.805%2C55.084",
                "description": "Санкт-Петербург, Россия"
            },
            "type": "source",
            "visit_order": 1,
            "visit_status": "pending",
            "skip_confirmation": false,
            "leave_under_door": false,
            "meet_outside": false,
            "no_door_call": false,
            "payment_on_delivery": {
                "payment_ref_id": "c3073b9d-edd0-49f2-a28d-b7ded8ff9a8b",
                "client_order_id": "100",
                "is_paid": false,
                "cost": "12.50",
                "customer": {
                    "full_name": "Морти",
                    "inn": 3664069397,
                    "email": "example@yandex.ru",
                    "phone": "79000000000"
                },
                "payment_method": "card",
                "invoice_link": "https://ofd.yandex.ru/vaucher/0005312316002718/9410/2604520024"
            },
            "external_order_id": "100",
            "external_order_cost": {
                "value": "100.0",
                "currency": "RUB",
                "currency_sign": "₽"
            },
            "expected_visit_interval": {
                "from": "2020-01-01T00:00:00+00:00",
                "to": "2020-01-02T00:00:00+00:00"
            },
            "pickup_code": "893422",
            "return_reasons": [
                "string"
            ],
            "return_comment": "string",
            "visited_at": {
                "expected": "2022-12-29T18:02:01Z",
                "expected_waiting_time_sec": 0,
                "actual": "2022-12-29T18:02:01Z"
            }
        }
    ],
    "current_point_id": 372036854775807,
    "status": "new",
    "version": 0,
    "user_request_revision": "string",
    "error_messages": [
        {
            "code": "some_error",
            "message": "Some error"
        }
    ],
    "emergency_contact": {
        "name": "Рик",
        "phone": "+79826810246",
        "phone_additional_code": "602 17 500"
    },
    "skip_door_to_door": false,
    "skip_client_notify": false,
    "skip_emergency_notify": false,
    "skip_act": false,
    "optional_return": false,
    "eta": 10,
    "created_ts": "2020-01-01T00:00:00+00:00",
    "updated_ts": "2020-01-01T00:00:00+00:00",
    "last_status_change_ts": "2020-01-01T00:00:00+00:00",
    "pricing": {
        "offer": {
            "offer_id": "28ae5f1d72364468be3f5e26cd6a66bf",
            "price": "12.50",
            "valid_until": "2020-01-01T00:00:00+00:00",
            "price_with_vat": "12.50"
        },
        "currency": "RUB",
        "currency_rules": {
            "code": "RUB",
            "text": "руб.",
            "template": "$VALUE$ $SIGN$$CURRENCY$",
            "sign": "₽"
        },
        "final_pricing_calc_id": "string",
        "final_price": "12.50"
    },
    "client_requirements": {
        "taxi_class": "express",
        "cargo_type": "lcv_m",
        "cargo_loaders": 0,
        "cargo_options": [
            "thermobag"
        ],
        "pro_courier": false
    },
    "matched_cars": [
        {
            "taxi_class": "express",
            "client_taxi_class": "cargo",
            "cargo_type": "lcv_m",
            "cargo_type_int": "2 is equal to \"lcv_m\"",
            "cargo_loaders": 0,
            "door_to_door": false,
            "pro_courier": false
        }
    ],
    "warnings": [
        {
            "source": "client_requirements",
            "code": "not_fit_in_car",
            "message": "предупреждение"
        }
    ],
    "performer_info": {
        "courier_name": "Личность",
        "legal_name": "ИП Птичья личность",
        "car_model": "Hyundai Solaris",
        "car_number": "А100РА100",
        "car_color": "красный",
        "car_color_hex": "FF00000",
        "transport_type": "car"
    },
    "callback_properties": {
        "callback_url": "https://www.example.com/"
    },
    "due": "2020-01-01T00:00:00+00:00",
    "shipping_document": "string",
    "comment": "Ресторан",
    "revision": 1,
    "route_id": "string",
    "same_day_data": {
        "delivery_interval": {
            "from": "2020-01-01T07:00:00+00:00",
            "to": "2020-01-01T07:00:00+00:00"
        }
    },
    "taxi_requirements": {}
}

Name

Description

created_ts*

Type: string<date-time>

Дата и время создания заявки

Example: 2020-01-01T00:00:00+00:00

id*

Type: string

Идентификатор(ID) заявки, полученный на этапе создания заявки

Example: 741cedf82cd464fa6fa16d87155c636

Min length: 32

Max length: 64

items*

Type: CargoItem[]

Параметры товаров

Min items: 1

revision*

Type: integer<int64>

Ревизия (int64)

Example: 1

route_points*

Type: ResponseCargoPoint[]

Информация по точкам маршрута
Информация по точкам маршрута

Min items: 2

status*

Type: ClaimStatus

Статус заявки. Подробнее см. в разделе Статусная модель

Example: new

Enum: new, estimating, estimating_failed, ready_for_approval, accepted, performer_lookup, performer_draft, performer_found, performer_not_found, pickup_arrived, ready_for_pickup_confirmation, pickuped, delivery_arrived, ready_for_delivery_confirmation, delivered, delivered_finish, returning, return_arrived, ready_for_return_confirmation, returned, returned_finish, failed, cancelled, cancelled_with_payment, cancelled_by_taxi, cancelled_with_items_on_hands

updated_ts*

Type: string<date-time>

Дата и время последнего обновления заявки

Example: 2020-01-01T00:00:00+00:00

user_request_revision*

Type: string

Текущая версия изменений в заявке, переданная пользователем

version*

Type: integer<int64>

Версия (int64)

callback_properties

Type: CallbackProperties

Параметры уведомления сервера клиента о смене статуса заявки.

Уведомление представляет собой POST-запрос по указанному url, к
которому будут добавлены информация о дате последнего изменения
заявки и идентификатора заявки в виде
'updated_ts=&claim_id=<id заявки>', то есть url вида
'https://example.com/?my_order_id=123&' будет расширен до
'https://example.com/?my_order_id=123&updated_ts=...&claim_id=...'.

Важно: параметры добавляются конкатенацией к callback_url, то есть
url вида 'https://example.com' превратится в невалидный
'https://example.comupdated_ts=...&claim_id=...'.

Поддерживаются только http и https. При https ssl-сертификат должен
быть выдан известным серверу центром сертификации.

К уведомлениям следует относиться как к push ahead of polling, как
к ускорению получения информации о смене статусов. Сервер ожидает
ответ 200, при таймаутах или любом другом ответе какое-то время
будет пытаться доставить уведомление, после чего прекратит попытки.
То есть для надежного получения статуса по заявке клиенту
необходимо запрашивать информацию с помощью метода claims/info.

Клиенту следует учесть, что ответ операции claims/info может
содержать более старое состояние заявки (надо ориентироваться на
значение поля updated_ts). В этом случает необходимо повторить
вызов операции через некоторое время (от 5 до 30 секунд).

client_requirements

Type: ClientRequirements

Требования от клиента, указанные при создании или редактировании заявки

comment

Type: string

Общий комментарий к заказу

Example: Ресторан

Max length: 7000

corp_client_id

Type: string

Идентификатор корпоративного клиента Яндекс Доставки (из OAuth-токена)

Example: cd8cc018bde34597932855e3cfdce927

Min length: 32

Max length: 32

current_point_id

Type: integer<int64>

Целочисленный идентификатор точки (int64), генерируемый
на стороне Яндекс Доставки.
Содержится в поле route_points[].id. Применимо к точкам с типом
source, destination, return.

Example: 372036854775807

due

Type: string<date-time>

Ожидаемое время прибытия курьера. (В РФ отложить расчетное время прибытия можно на 30-60 минут от текущего момента).
Если этот параметр не указан, поиск курьера будет осуществлен на ближайшее время.

Example: 2020-01-01T00:00:00+00:00

emergency_contact

Type: ContactWithPhone

Информация о контактном лице с номером телефона

error_messages

Type: HumanErrorMessage[]

Список сообщений об ошибках
Код и описание ошибки

eta

Type: integer<int64>

Расчетное время выполнения заказа в минутах (int64)

Example: 10

last_status_change_ts

Type: string<date-time>

Дата-время последнего изменения статуса

Example: 2020-01-01T00:00:00+00:00

matched_cars

Type: MatchedCar[]

Информация о подобранном тарифе

optional_return

Type: boolean

Отключить возврат товаров в случае отмены заказа.

Возможные значения:

  • true (курьер оставляет товар себе)
  • false (по умолчанию, требуется вернуть товар)

Default:

Example:

performer_info

Type: CreatedPerformerInfo

Информация об исполнителе

pricing

Type: ClaimPricing

Информация о стоимости заказа

route_id

Type: string

Идентификатор машрута, в рамках которого доставляется заказ
Если несколько заказов доставляются одним курьером,
они будут иметь одинаковый route_id
(Актуально только для доставки "В течение дня")

same_day_data

Type: SameDayData

Дополнительная информация для заявок "В течение дня"

shipping_document

Type: string

Сопроводительные документы

skip_act

Type: boolean

Не показывать акт приема-передачи

Example:

skip_client_notify

Type: boolean

Не отправлять отправителю/получателю смс-уведомления,
когда к нему направится курьер.

Значение по умолчанию: false (отправлять уведомления)

Default:

Example:

skip_door_to_door

Type: boolean

Отключить доставку до двери (выключить опцию "От двери до двери").

Возможные значения:

  • true (курьер доставит заказ только на улицу, до подъезда)
  • false (курьер доставит до двери) - значение по умолчанию

Default:

Example:

skip_emergency_notify

Type: boolean

Не отправлять уведомление запасному контактному лицу

Значение по умолчанию: false (отправлять уведомления)

Default:

Example:

taxi_requirements

Type: object

warnings

Type: ClaimWarning[]

Предупреждения по ходу обработки заявки

ResponseCargoPoint

Информация по точкам маршрута

Name

Description

address*

Type: CargoPointAddress

Адрес точки

contact*

Type: CreatedContactOnPoint

Информация о контактном лице

id*

Type: integer<int64>

Целочисленный идентификатор точки (int64)

Example: 1

type*

Type: PointType

Тип точки:

  • source - точка отправления, где курьер забирает товар
  • destination – точки назначения, где курьер передает товар
  • return - точка возврата товара (добавляется автоматически и по умолчанию совпадает с точкой отправления, но также можно определить другую точку)

Example: source

Enum: source, destination, return

visit_order*

Type: integer<int64>

Порядок посещения точки (нумерация начинается с 1) (int64)

Example: 1

visit_status*

Type: PointVisitStatus

Статус посещения точки:

  • pending - точка еще не посещена;
  • arrived - курьер прибыл на точку;
  • visited - курьер передал/забрал груз на точке;
  • skipped - точка пропущена (в случае, если не смог принять товар).

Example: pending

Enum: pending, arrived, visited, skipped

visited_at*

Type: PointVisitTime

Информация о времени посещения точки

expected_visit_interval

Type: ExpectedVisitInterval

Временной интервал посещения курьером точки согласно выбранному офферу

external_order_cost

Type: ExternalOrderCost

Стоимость внешнего заказа, привязанного к точке

external_order_id

Type: string

Номер заказа из системы клиента.
Передается для точки типа destination

Example: 100

leave_under_door

Type: boolean

Оставить посылку у двери

meet_outside

Type: boolean

Курьера встретят на улице у подъезда

no_door_call

Type: boolean

Не звонить в дверь

payment_on_delivery

Type: CreateResponsePaymentOnDelivery

Параметры оплаты при получении

pickup_code

Type: string

Код выдачи посылки курьеру.
Курьеру потребуется ввести этот код, чтобы подтвердить, что он забрал посылку.
Для этого необходимо, чтобы ваши сотрудники на точке выдачи имели возможность назвать этот код курьеру.
Актуально для точки с типом 'source'.
Формат кода: 6 цифр
|
Код выдачи товара (ПВЗ)

Example: 893422

return_comment

Type: string

Комментарий к причинам возврата груза

return_reasons

Type: string[]

Причины возврата груза

skip_confirmation

Type: boolean

Пропускать подтверждение по смс в данной точке

Значение по умолчанию: false (подтверждение требуется).

Default:

Example:

ClaimStatus

Статус заявки. Подробнее см. в разделе Статусная модель

Type

Description

ClaimStatus

Example: new

Enum: new, estimating, estimating_failed, ready_for_approval, accepted, performer_lookup, performer_draft, performer_found, performer_not_found, pickup_arrived, ready_for_pickup_confirmation, pickuped, delivery_arrived, ready_for_delivery_confirmation, delivered, delivered_finish, returning, return_arrived, ready_for_return_confirmation, returned, returned_finish, failed, cancelled, cancelled_with_payment, cancelled_by_taxi, cancelled_with_items_on_hands

HumanErrorMessage

Код и описание ошибки

Name

Description

code*

Type: string

Код ошибки

Example: some_error

message*

Type: string

Описание ошибки

Example: Some error

MatchedCar

Name

Description

taxi_class*

Type: string

Тариф доставки. Возможные значения: courier, express, cargo

Example: express

cargo_loaders

Type: integer<int64>

Требуемое число грузчиков (int64)

Example: 0

Min value: 0

cargo_type

Type: string

Тип кузова

Example: lcv_m

cargo_type_int

Type: integer<int64>

Тип кузова (int64)

Example: 2 is equal to "lcv_m"

client_taxi_class

Type: string

Клиентский тариф

Example: cargo

door_to_door

Type: boolean

Опция "от двери до двери" для тарифа "Экспресс"

Example:

pro_courier

Type: boolean

Включить опцию "Профи" для тарифов "Экспресс" и "Курьер".
Поиск исполнителя будет происходить только среди опытных курьеров.

Example:

CreatedPerformerInfo

Информация о курьере

Name

Description

courier_name*

Type: string

Имя курьера, доставляющего посылку

Example: Личность

legal_name*

Type: string

Данные о юридическом лице, которое осуществляет доставку

Example: ИП Птичья личность

car_color

Type: string

Цвет машины

Example: красный

car_color_hex

Type: string

RGB-код цвета машины

Example: FF00000

car_model

Type: string

Модель машины

Example: Hyundai Solaris

car_number

Type: string

Номер машины

Example: А100РА100

transport_type

Type: string

Тип транспорта исполнителя

Example: car

ClaimPricing

Информация о стоимости заказа

Name

Description

currency

Type: string

Трехзначный код валюты, в которой ведется расчет

Example: RUB

currency_rules

Type: CurrencyRules

Правила отображения валюты

final_price

Type: string

Окончательная цена доставки с учетом НДС.
Заполняется после окончания доставки/возврата.

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

final_pricing_calc_id

Type: string

Идентификатор расчета стоимости

offer

Type: TaxiOffer

Предложение от Яндекс Доставки (актуально в течение некоторого времени).

ClaimWarning

Name

Description

code*

Type: string

Тип предупреждения:

  • not_fit_in_car - груз может не поместиться в транспортное средство;
  • requirement_unavailable - указанное требование недоступно и было проигнорировано;
  • address_not_found - указанный адрес не найден в Яндекс Картах;
  • address_too_far - координаты из Яндекс Карт по указанному адресу находятся далеко от переданных координат.

Example: not_fit_in_car

source*

Type: string

Источник предупреждения:

  • client_requirements - предупреждение связано с требованиями клиента;
  • route_points - предупреждение связано
    с переданными адресами.

Example: client_requirements

message

Type: string

Описание предупреждения

Example: предупреждение

PointVisitStatus

Статус посещения точки:

  • pending - точка еще не посещена;
  • arrived - курьер прибыл на точку;
  • visited - курьер передал/забрал груз на точке;
  • skipped - точка пропущена (в случае, если не смог принять товар).

Type

Description

PointVisitStatus

Example: pending

Enum: pending, arrived, visited, skipped

PointVisitTime

Информация о времени посещения точки

Name

Description

actual

Type: string<date-time>

Фактическое время посещения точки.
Заполняется только для посещенных точек.

expected

Type: string<date-time>

Расчетное время посещения. Может быть заполнено
только для непосещенных точек.

expected_waiting_time_sec

Type: integer<int64>

Расчетное время ожидания в точке. (int64)

ExpectedVisitInterval

Временной интервал посещения курьером точки согласно выбранному офферу

Name

Description

from*

Type: string<date-time>

Начало интервала

Example: 2020-01-01T00:00:00+00:00

to*

Type: string<date-time>

Окончание интервала

Example: 2020-01-02T00:00:00+00:00

CreateResponsePaymentOnDelivery

Параметры оплаты при получении

Name

Description

is_paid*

Type: boolean

Признак оплаты заказа

Example:

client_order_id

Type: string

Внешний идентификатор клиентского заказа

Example: 100

cost

Type: string

Цена Decimal(19, 4)

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

customer

Type: CustomerFiscalization

Информация о клиенте(получателе)

invoice_link

Type: string

Ссылка на чек

Example: https://ofd.yandex.ru/vaucher/0005312316002718/9410/2604520024

payment_method

Type: PaymentMethod

Выбранный тип оплаты.
card - оплата картой;
cash - оплата наличными (пока недоступна);

Enum: card, cash

payment_ref_id

Type: string<uuid>

Идентификатор оплаты

CurrencyRules

Правила отображения валюты

Name

Description

code*

Type: string

Трехзначный код валюты, в которой ведется расчет

Example: RUB

Min length: 3

Max length: 3

template*

Type: string

Шаблон для отображения валюты

Example: $VALUE$ $SIGN$$CURRENCY$

text*

Type: string

Сокращенное наименование валюты

Example: руб.

sign

Type: string

Символ валюты

Example:

TaxiOffer

Предложение от Яндекс Доставки (актуально в течение некоторого времени).

Name

Description

offer_id*

Type: string

Идентификатор предложения

Example: 28ae5f1d72364468be3f5e26cd6a66bf

price*

Type: string

Цена по предложению без НДС

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

price_with_vat

Type: string

Стоимость доставки в формате десятичной дроби Decimal(18, 4)

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

valid_until

Type: string<date-time>

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

Example: 2020-01-01T00:00:00+00:00

CustomerFiscalization

Информация о клиенте(получателе)

Name

Description

email

Type: string

Электронная почта пользователя. Если не указано, будет использована почта получателя из точки назначения

Example: example@yandex.ru

full_name

Type: string

Для юридического лица — название организации, для ИП и физического лица — ФИО

Example: Морти

inn

Type: string

ИНН пользователя (10 или 12 цифр)

Example: 3664069397

Pattern: ^[A-Z0-9\\-]+$

phone

Type: string

Телефон пользователя в формате +X XXX XXX XX XX. Если не указано, будет использован телефон получателя из точки назначения

Example: 79000000000

400 Bad Request

Неверный запрос

Body

application/json
{
    "code": "bad_request",
    "message": "Неправильное тело запроса"
}

Name

Description

code*

Type: string

Код ошибки

Example: bad_request

Enum: validation_error, sdd_items_without_parameters_forbidden, items_without_parameters_forbidden, sdd_multipoints_not_supported, address_too_far, address_not_found, bad_request, invalid_post_payment, sdd_client_requirements_forbidden, invalid_delivery_interval, wrong_pickup_code_format, wrong_pickup_code_usage, unknown_zone, invalid_time_intervals, unsupported_points_count, invalid_phone_incorrect_symbol, invalid_phone_must_start_plus_symbol, country_phone_code_not_supported, invalid_phone_size_incorrect, item_destination_point_not_found, invalid_destination_point, due_in_past, delay_too_long, external_order_id_not_allowed, address_outside_delivery_zone, invalid_buyout_point_type, payment_on_delivery_missed, payment_on_delivery_invalid_request, max_order_cost_exceeded, invalid_post_payment_payment_method, invalid_buyout_payment_method, invalid_source_point, invalid_point_phone, invalid_item_destination_point, invalid_item_source_point, different_cost_currencies, no_input_point, custom_context_in_bad_format

message*

Type: string

Сообщение об ошибке, понятное человеку

Example: Неправильное тело запроса

403 Forbidden

Ошибка идентификации или оплата при получении недоступна

Body

application/json
{
    "code": "payment_on_delivery_disabled",
    "message": "Неправильное тело запроса"
}

Name

Description

code*

Type: string

Код ошибки

Example: payment_on_delivery_disabled

Enum: buyout_disabled, payment_on_delivery_disabled, forbidden_by_antifake

message*

Type: string

Сообщение об ошибке, понятное человеку

Example: Неправильное тело запроса

429 Too Many Requests

Слишком много созданных заявок за промежуток времени

Body

application/json
{
    "code": "too_many_requests",
    "message": "Слишком много запросов"
}

Name

Description

code*

Type: string

Код ошибки

Example: too_many_requests

Enum: too_many_requests

message*

Type: string

Описание ошибки

Example: Слишком много запросов