Получение списка заказов
Функция orders/get
(http://<DOMAIN>/api/orders/get/)
Внимание: мы обновили Получение списка заказов — добавлен новый блок delivery_data, в котором будут передаваться все данные о доставке.
Если у вас уже настроена интеграция по API, то она продолжает работать в штатном режиме. Для Новой почты сохраняется передача всех параметров в блоке additional_data. Но в будущем мы будем поддерживать и развивать новый блок, поэтому рекомендуем вам перенастроить свои интеграции для получения новых параметров.
Новый блок данных об источнике заказа analytics
Новый блок customer_details в Получение списка заказов для b2b проектов
Параметры для тела запроса:
token
— ключ авторизации полученный через функцию auth.from
— показать заказы от указанной даты (включительно). Необязательный параметр.
Формат даты:YYYY-MM-DD
DD.MM.YYYY
Начиная с версии 3.30
YYYY-MM-DD HH:mm:ss
DD.MM.YYYY HH:mm:ss
to
— показать заказы до указанной даты (включительно). Необязательный параметр.
Формат даты:YYYY-MM-DD
DD.MM.YYYY
Начиная с версии 3.30
YYYY-MM-DD HH:mm:ss
DD.MM.YYYY HH:mm:ss
ids[]
— номера заказов для отображенияstatus
— показать заказы с выбранными статусами (выгрузить все статусы можно через функцию orders/get_available_statuses). Необязательный параметр. Параметр можно передавать как массив или переменную (status=1 или status[]=1&status[]=2, {status:1}, {status:[1, 2]}). Возможные значения:1 — новый
2 — в обработке
3 — доставлен
4 — не доставлен
6 — доставляется
additionalData
— boolean значение (true или false). Позволяет выгрузить дополнительную информацию о заказе, например, данные о ТТН Новой Почты, складе получателя и отправителя.Начиная с версии 3.30
offset
— смещение относительно начала выборки заказов (работает только в паре с параметром limit)limit
— количество выводимых заказов
Ответ:
status
OK — заказы успешно найдены
EMPTY — заказы не найдены
response.orders
— массив, содержащий заказыresponse.orders[i]
order_id
— номер заказаuser
— идентификатор пользователя в системе (уникален для каждого пользователя)delivery_name
— ФИО получателяdelivery_email
— email (уникален для каждого пользователя внутри системы, дублирование невозможно)delivery_phone
— номер телефонаdelivery_city
— городdelivery_address
— адрес доставки (при выборе варианта доставки УкрПочтой поля разбиваются символом @)delivery_type
— тип доставкиdelivery_type.id
— идентификатор доставки в API. Получить информацию о вариантах доставки можно через функции: delivery/export и delivery/exportTypes.3 — Новой почтой
8 — Самовывоз
9 — Укрпочтой
и т. д. (на каждом проекте идентификаторы вариантов доставки могут отличаться)
delivery_type.title
— название варианта доставки
delivery_price
— стоимость доставки ("delivery_price": -1
— означает, что стоимость доставки рассчитывается по тарифам перевозчика)comment
— комментарий покупателя к заказуpayment_type
— тип оплаты. Получить информацию о вариантах оплаты можно через функции: payment/export и payment/exportMethods.payment_type.id
— идентификатор оплаты в API11 — Оплата курьеру
12 — Безналичный расчет
13 — Наличными
14 — Онлайн-оплата кредитной картой
15 — Оплата при получении (наложенный платеж)
и т. д.
payment_type.title
— название варианта оплаты
payment_price
— комиссия за оплатуpayed
— оплачено (1 — да; 0 — нет)total_default
— стоимость товаров (без учета скидок)total_sum
— итоговая стоимость (с учетом всех скидок, но без учета стоимости доставки)total_quantity
— общее количество товаров в заказеdiscount_percent
— относительная скидкаdiscount_value
— сумма скидкиcoupon_code
— код купона на скидкуcoupon_percent
— относительная скидка купонаcoupon_discount_value
— сумма скидки по купонуcoupon_type
— тип купона0 — без купона
1 — сертификат на сумму
2 — многоразовый купон на скидку
stat_status
— статус заказа. Получить информацию о всех статусах заказов можно через функцию orders/get_available_statuses (доступно начиная с версии 4.0).1 — новый
2 — в обработке
3 — доставлен
4 — не доставлен
stat_created
— дата и время оформления заказа (пример: 2021-04-09 12:09:01)currency
— валюта в которой был оформлен заказ (в формате ISO, например: UAH — гривна, USD — доллар, EUR — евро и т. д.). Получить информацию о всех валютах можно через функцию currency/export.order_without_callback
— boolean значение (true или false). Нужно ли перезванивать покупателю (добавлено в версии 3.32).manager_id
- id менеджера который обрабатывал заказmanager_comment
- комментарий менеджераmanager_discount
- скидка от менеджераmanager_discount_title
- название скидки от менеджераdelivery_country
- страна доставки (если включена функция выбора стран на странице оформления заказа)products[i]
— товары в заказеtitle
— название товараarticle
— артикул товараprice
— стоимость единицы товара для пользователяquantity
— количество заказанных единиц товараtotal_price
— итоговая стоимость товара с учетом заказанного количестваdiscount_marker
— маркер использованной скидки на товарPRICE_OLD — старая цена / относительная скидка на товар
PAGE_DISCOUNT — скидка на раздел
DISCOUNT_CARD — накопительная скидка
DISCOUNT_NONE — отсутствие скидки (при условиях акций и т. д.)
NONE — без скидки
type
— данный параметр появился в v4.7.0 и может содержать такие значения (как определить какой товар относиться к комплекту, или к какому товару относится подарок можно на примере этого скриншота):gift_parent
— товар, к которому был добавлен подарокgift
— сам подарокset_main
— товар, к которому был добавлен комплектset_item
— товар, входящий в комплект
storage_id
— уникальный идентификатор, который в последствии передаётся в следующий параметрparent_storage_id
, для указания связи между товарами на уровни комплектов / подарковparent_storage_id
— если значениеnull
— значит, что к товару был добавлен подарок или товары в комплект (на данном скриншоте показан пример связи между товарами).
additional_data
— дополнительная информация о заказе (отображается только в том случае, если в теле запроса передать ключ"additionalData": true
)np_ref
— идентификатор электронной накладной (далее ЭН) для API Новой Почты v.2np_number
— номер ЭНsender_warehouse_ref
— идентификатор склада отправителя в API Новой Почтыrecipient_warehouse_ref
— идентификатор склада получателя в API Новой Почты для способа доставки “Новая почта” (на отделение)recipient_address
— данные об адресе получателя для способа доставки “Курьером Новой почты”(адресная доставка):recipient_address.street_id
–– идетнификатор улицы получателя в API Новой Почтыrecipient_address.street_name
–– название улицыrecipient_address.building_number
–– номер домаrecipient_address.flat
–– номер квартиры
delivery_data - массив данных о способе доставки
deliveryOperatorType- тип оператора доставки. Возможные значения:
nova_poshta
,ukrposhta
tnID — уникальный идентификатор ЭН
tnNumber — номер ЭН
tnStatusName — текст статуса накладной у оператора
tnTrackingUpdateDate — время последнего изменения статуса у оператора
estimatedDeliveryDate — предполагаемая дата доставки
departure
sender — массив данных по отправителю
id — уникальный идентификатор отправителя в базе оператора доставки
title — название отправителя
contactPerson — массив данных по контактному лицу (передается только для deliveryOperatorType= **
nova_poshta
)id — уникальный идентификатор контактного лица в базе оператора доставки
name — имя контактного лица
phone — телефон контактного лица
type — тип отправителя (ключ передается только для deliveryOperatorType= **
ukrposhta
) . Возможные значения:COMPANY — Юридическое лицо
PRIVATE_ENTREPRENEUR — ФЛП
INDIVIDUAL — Физическое лицо
phone — телефон отправителя (ключ передается только для deliveryOperatorType= **
ukrposhta
)
address
type — тип адреса отправителя. Возможные значения: warehouse
geoObject — массив данных о складе отправителя
id — уникальный идентификатор города отправителя в базе оператора доставки
name — город отправителя
warehouse (передается для type = warehouse)
id — идентификатор склада отправителя в базе оператора доставки
name — склад отправителя
destination
recipient — массив данных о получателе
name— имя получателя
surname— фамилия получателя
patronymic— отчество получателя
phone — телефон получателя
address — массив данных об адресе получателя
type — тип адреса отправителя. Возможные значения: warehouse / doors
geoObject — данные о городе
id — уникальный идентификатор города в базе оператора доставки
name — город получателя
warehouse — данные о складе (передается для type = warehouse)
id — уникальный идентификатор склада получателя в базе оператора доставки
name — склад получателя
street — данные о адресе для курьерской доставки (передается для type = doors)
id — уникальный идентификатор улицы в базе оператора доставки
name — название улицы
buildingNumber — номер дома получателя (передается для type = doors)
flatNumber — номер квартиры получателя (передается для type = doors)
payment — данные об оплате услуг за доставку
type — тип оплаты услуг доставки (ключ передается только при ****deliveryOperatorType= ****
nova_poshta
)payer — плательщик за услуги доставки
redelivery — данные об обратной доставке
cost — сумма обратной доставки
payer — плательщик за обратную доставку
Примечание: передача информации о заказе осуществляется на языке той версии сайта, на которой он был сделан.
analytics — массив данных источнике заказа (utm-метки) и покупателе
utm_source — идентификатор источника трафик;
utm_medium — конкретного маркетингового канала;
utm_campaign — идентификатор рекламной кампании;
utm_term — идентификатор ключевого слова;
utm_content — идентификатор конткертного объявления;
google_client_id — уникальный идентификатор пользователя.
В Получение списка заказов добавляем дополнительные данные о покупателе - группу, к которой он относится и тип цены, назначенной этой группе.
customer_details — массив дополнительных данных о покупателе для b2b-проектов
group
id - id группы покупателей, к которой принадлежит покупатель
title - название группы покупателей, к которой принадлежит покупатель
price_level
id - id типа цены для группы покупателя
title - название типа цены для группы покупателя
Пример PUT запроса
{
"token": "c5bc0cd25647e701bc6427f3629b27b4",
"from": "01.04.2021",
"to": "03.04.2021",
"additionalData": true
}
Пример ответа на запрос
{
"status": "OK",
"response": {
"orders": [
{
"order_id": 7,
"user": 6,
"delivery_name": "John Doe",
"delivery_email": "john.doe@gmail.com",
"delivery_phone": "+38 (055) 555-55-55",
"delivery_city": "Киев",
"delivery_address": "Отделение №13 (до 30 кг на одно место): ул. Оранжерейная, 3 (метро Дорогожичи)",
"delivery_type": {
"id": 3,
"title": "Новой почтой"
},
"delivery_price": -1,
"comment": "Комментарий к заказу",
"payment_type": {
"id": 13,
"title": "Наличными"
},
"payment_price": 0,
"payed": 0,
"total_default": 3413,
"total_sum": 3413,
"total_quantity": 2,
"discount_percent": 0,
"discount_value": 0,
"coupon_code": "",
"coupon_percent": 0,
"coupon_discount_value": 0,
"coupon_type": 0,
"stat_status": 2,
"stat_created": "2021-04-09 12:09:01",
"currency": "UAH",
"order_without_callback": false,
"products": [
{
"title": "Товар 1",
"article": "10000001",
"price": 1001,
"quantity": 1,
"discount_marker": "PRICE_OLD",
"type": "gift_parent",
"storage_id": 41,
"parent_storage_id": null,
"total_price": 1001
},
{
"title": "Товар 13",
"article": "10000013",
"price": 0,
"quantity": 1,
"discount_marker": "DISCOUNT_NONE",
"type": "gift",
"storage_id": 42,
"parent_storage_id": 41,
"total_price": 0
},
{
"title": "Тестовый комплект",
"article": "test_set_123",
"price": 2412,
"quantity": 1,
"discount_marker": "PRODUCTS_SET",
"type": "set_main",
"storage_id": 43,
"parent_storage_id": null,
"total_price": 2412
},
{
"title": "Товар 1",
"article": "10000001",
"price": 1001,
"quantity": 1,
"discount_marker": "PRICE_OLD",
"type": "set_item",
"storage_id": 44,
"parent_storage_id": 43,
"total_price": 1001
},
{
"title": "Товар 5",
"article": "10000005",
"price": 1005,
"quantity": 1,
"discount_marker": "PRICE_OLD",
"type": "set_item",
"storage_id": 45,
"parent_storage_id": 43,
"total_price": 1005
},
{
"title": "Товар 9",
"article": "10000009",
"price": 1009,
"quantity": 1,
"discount_marker": "PRICE_OLD",
"type": "set_item",
"storage_id": 46,
"parent_storage_id": 43,
"total_price": 1009
}
],
"additional_data": {
"np_ref": "8d8ecd29-9913-11eb-8513-b88303659df5",
"np_number": 12345678912345,
"sender_warehouse_ref": "0d545f63-e1c2-11e3-8c4a-0050568002cf",
"recipient_warehouse_ref": "39931b8c-e1c2-11e3-8c4a-0050568002cf"
}
"analytics": {
"utm_source": "google",
"utm_medium": "google_cpc",
"utm_campaign": "brand_1",
"utm_term": (none),
"utm_content": "banner_3",
"google_client_id": "GA1.3.391577864.1662575866"
}
}
]
}
}
Пример блока ответа с новыми данным доставки
"delivery_data":
{
"deliveryOperatorType": "nova_poshta",
"tnId": "a3a24ec9-632e-11ec-8513-b88303659df5",
"tnNumber": "20450492106170",
"tnStatusName": "Создан",
"tnTrackingUpdateDate": null,
"estimatedDeliveryDate": "2021-12-24",
"departure": {
"sender": {
"id": "60cd854f-580c-11eb-8513-b88303659df5",
"title": "Приватна особа",
"contactPerson": {
"id": "9bc4f232-580c-11eb-8513-b88303659df5",
"name": "Александр Анатолиевич Коваль (380915554433)",
"phone": "380915554433"
}
},
"address": {
"type": "warehouse",
"geoObject": {
"id": "db5c88e0-391c-11dd-90d9-001a92567626",
"name": "Харьков"
},
"warehouse": {
"id": "169227f4-e1c2-11e3-8c4a-0050568002cf",
"name": "Отделение №1: ул. Полевая, 67"
}
}
},
"destination": {
"recipient": {
"name": "Наталья",
"surname": "Ткаченко",
"patronymic": null,
"phone": "380914443322"
},
"address": {
"type": "warehouse",
"geoObject": {
"id": "f706237a-4078-11de-b509-001d92f78698",
"name": "Яворов"
},
"warehouse": {
"id": "16922828-e1c2-11e3-8c4a-0050568002cf",
"name": "Отделение №1: ул. А. Маковея, 62"
}
}
},
"payment": {
"type": "Cash",
"payer": "Sender"
},
"redelivery": {
"cost": "54000",
"payer": "Sender"
}
}
Пример адреса отправителя для type = doors
Пример ответа при доставке Укрпочтой с типом склад-двери
deliveryOperatorType=ukrposhta, departure.address=warehouse и destination.address=doors
Пример ответа с блоком
Пример тела запроса с использованием offset
и limit
Пример тела запроса для экспорта отдельных заказов
Пример тела запроса для экспорта заказов по статусу