13
Стать партнером
13
{{ formatMonthYear(startMonth) }}
{{ d }}
{{ day.day }}
{{ formatMonthYear(endMonth) }}
{{ d }}
{{ day.day }}
Обновлено
20.03.2026
Содержание статьи

Типы нотификаций

Lamoda B2B Platform Partner API Lamoda отправляет нотификации (webhooks) при изменении статусов заказов, товаров и поставок. На этой странице описаны все типы нотификаций, их структура и поведение.

Обзор типов

Тип Триггер Модели
statusChanged Изменился статус заказа FBS, FBO, Dropshipping
itemStatusChanged Изменился статус товара в заказе FBS, FBO, Dropshipping
fulfilmentShipmentStatusChanged Изменился статус поставки (FBO) или отгрузки (FBS) FBO, FBS

statusChanged — Статус заказа

Отправляется только при изменении статуса заказа целиком (New to be confirmed → Confirmed → Shipped → Delivered и т.д.).

Важно: Если изменился статус отдельного товара, но статус заказа остался прежним (например, невыкупленный товар вернулся на склад, а заказ уже в статусе «Delivered»), нотификация statusChanged НЕ отправляется. В этом случае приходит только itemStatusChanged.

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

{
  "type": "statusChanged",
  "trackingId": "117391950",
  "data": {
    "id": "CZ117391950",
    "status": "Delivered",
    "paymentMethod": "COD",
    "fullSum": "12000.00",
    "basePrice": 12000,
    "salePrice": 12000,
    "paidPrice": 12000,
    "partnerAgreedPrice": 12000,
    "couponDiscount": 0,
    "loyaltyDiscount": 0,
    "partnerAgreedDiscount": 0,
    "otherDiscounts": 0,
    "totalDiscount": 0,
    "deliveryPrice": "250.00",
    "rejectPrice": 150,
    "itemQuantity": 1,
    "currency": "rub",
    "shippingType": "fulfilment",
    "platform": "marketplace",
    "comment": null,
    "confirmationFailedCode": null,
    "confirmationFailedReason": null,
    "externalOrderNumber": null,
    "externalTrackingNumber": [],
    "createdAt": "2025-05-25",
    "updatedAt": "2025-05-29 18:00:15",
    "paymentDate": null,
    "dates": {
      "delivered": "2025-05-29 17:48:00",
      "shipped": "2025-05-27 23:26:15"
    },
    "items": [
      {
        "id": "7598",
        "status": "Delivered",
        "finalERPStatus": "sold",
        "sku": "SELLERSKU104",
        "description": "Кроссовки Nike Air Max",
        "size": "42",
        "basePrice": "12000.00",
        "salePrice": "12000.00",
        "paidPrice": "12000.00",
        "partnerAgreedPrice": "12000.00",
        "couponDiscount": "0.00",
        "loyaltyDiscount": "0.00",
        "partnerAgreedDiscount": "0.00",
        "otherDiscounts": "0.00",
        "totalDiscount": "0.00",
        "datamatrix": null,
        "datamatrixCode": null,
        "statusChangeReason": null,
        "discrepancyAct": null
      }
    ],
    "shippingAddress": {
      "id": 12345,
      "zipcode": "115114",
      "region": "Москва",
      "city": "Москва",
      "street": "Летниковская",
      "houseNum": "д.2 с1",
      "apartment": "909",
      "cityId": "7700000000000",
      "streetId": "77000000000170700",
      "buildingId": "770000000001707000001",
      "pickupPointId": null
    },
    "deliveryMethod": {
      "deliveryPrice": "250.00",
      "deliveryDate": "2025-05-29",
      "deliveryIntervalFrom": "15:00",
      "deliveryIntervalTo": "18:00",
      "deliveryIntervalId": 514877540,
      "hasIntervals": true,
      "shippingMethodName": "Курьерская доставка Lamoda Express",
      "shippingMethodCode": "lamoda",
      "serviceLevelTypeCode": "economy_b2b",
      "serviceLevelTypeName": "Без примерки",
      "shippingMethodTypeCode": "delivery_service",
      "cutOff": "2025-06-04 03:00:00"
    },
    "customer": {
      "firstName": "Иван",
      "lastName": "Каминский",
      "middleName": "Сергеевич",
      "phone": "+79016666666",
      "email": "ivan@example.com"
    },
    "tracking": {
      "trackingId": "TR-2025-117391950",
      "trackingUrl": "https://www.lamoda.ru/tracking/TR-2025-117391950"
    }
  },
  "date": "2025-05-29 18:00:15",
  "sequenceNumber": 5
}

itemStatusChanged — Статус товара

Отправляется при изменении статуса отдельного товара в заказе. Особенно важно при частичном выкупе, когда заказ в статусе «Delivered», но один или несколько товаров в статусе «Not bought».

Примечание: Нотификация itemStatusChanged всегда содержит все товары заказа с их текущими статусами, а не только изменившийся товар.
{
  "type": "itemStatusChanged",
  "trackingId": "20018856",
  "data": {
    "id": "CZ20018856",
    "status": "Delivered",
    "fullSum": "5500.00",
    "currency": "rub",
    "itemQuantity": 2,
    "items": [
      {
        "id": "12345",
        "status": "Delivered",
        "finalERPStatus": "sold",
        "sku": "SKU-001",
        "description": "Футболка хлопковая",
        "size": "M",
        "basePrice": "3000.00",
        "salePrice": "3000.00",
        "paidPrice": "3000.00",
        "partnerAgreedPrice": "3000.00",
        "couponDiscount": "0.00",
        "loyaltyDiscount": "0.00",
        "partnerAgreedDiscount": "0.00",
        "otherDiscounts": "0.00",
        "totalDiscount": "0.00",
        "datamatrix": "010467003301005321gJk6...",
        "datamatrixCode": null,
        "statusChangeReason": null,
        "discrepancyAct": null
      },
      {
        "id": "12346",
        "status": "Not bought",
        "finalERPStatus": "rejected",
        "sku": "SKU-002",
        "description": "Джинсы slim fit",
        "size": "32",
        "basePrice": "2500.00",
        "salePrice": "2500.00",
        "paidPrice": "0.00",
        "partnerAgreedPrice": "2500.00",
        "couponDiscount": "0.00",
        "loyaltyDiscount": "0.00",
        "partnerAgreedDiscount": "0.00",
        "otherDiscounts": "0.00",
        "totalDiscount": "0.00",
        "datamatrix": null,
        "datamatrixCode": null,
        "statusChangeReason": "Не подошёл размер",
        "discrepancyAct": null
      }
    ]
  },
  "date": "2025-12-02 16:11:30",
  "sequenceNumber": 4
}

Когда приходит itemStatusChanged без statusChanged

Если статус товара изменился, но статус заказа — нет, нотификация statusChanged НЕ отправляется. Типичные сценарии:

  • Невыкупленный товар вернулся на склад — заказ уже «Delivered»
  • Изменился finalERPStatus товара — заказ по-прежнему «Delivered»
  • Начался процесс возврата одного товара — статус заказа не меняется

fulfilmentShipmentStatusChanged — Статус поставки / отгрузки

Отправляется при изменении статуса поставки на склад Lamoda (FBO — входящие поставки) или отгрузки со склада (FBS — исходящие отгрузки).

Внимание: Тип fulfilmentShipmentStatusChanged в текущей версии OpenAPI-спецификации отсутствует в enum поля type (указаны только statusChanged и itemStatusChanged). Несмотря на это, тип подтверждён кодом и активно используется. Учитывайте это при валидации payload на своей стороне.

Пример нотификации (FBO — входящая поставка)

{
  "type": "fulfilmentShipmentStatusChanged",
  "createdAt": "2025-12-05T14:20:00+03:00",
  "data": {
    "id": 12345,
    "shipmentId": "SHIP-2025-001234",
    "status": "received",
    "itemQuantity": 100,
    "priceSum": 250000.00,
    "receipt": 97,
    "accepted": 95,
    "surplus": 2,
    "missing": 5,
    "damaged": 2,
    "unknownSurplus": 0,
    "items": [
      {
        "sku": "SELLER-SKU-001",
        "ean": "4607123456789",
        "quantity": 100,
        "receipt": 97,
        "accepted": 95,
        "surplus": 2,
        "missing": 5,
        "damaged": 2
      }
    ]
  }
}

Пример нотификации (FBS — исходящая отгрузка)

{
  "type": "fulfilmentShipmentStatusChanged",
  "createdAt": "2025-01-21T09:00:00+03:00",
  "data": {
    "id": 98765,
    "shipmentId": "OUT-2025-005678",
    "direction": "out",
    "status": "initial",
    "itemQuantity": 15,
    "priceSum": 45000.00,
    "updatedAt": "2025-01-21T09:00:00+03:00"
  }
}

Статусы поставки

Классический workflow:

Статус Описание
initial Начальный статус (FBS-отгрузка создана)
new Поставка создана, ожидает подтверждения
confirmed Подтверждена, идёт регистрация
sent Зарегистрирована в системе, отправлена
rejected Отклонена (расхождение данных)
received Принята по количеству
closed Закрыта по качеству, товары на стоке
cancelled Отменена

Расширенный FBO-workflow (дополнительные статусы для поставок FBO):

Статус Описание
draft Черновик (начальный статус для FBO)
validation На валидации
validation_error Ошибка валидации
ready_for_shipment Готова к отгрузке
cancel_pending Ожидает отмены
unloading_needed Требуется разгрузка
unloading Разгружается
unloaded Разгружена
processing Обрабатывается на складе
Примечание: Статусы передаются в lowercase (например, confirmed, received). Набор доступных статусов зависит от workflow поставки (классический или расширенный FBO).

Доступность по моделям

Тип FBS FBO Dropshipping
statusChanged
itemStatusChanged
fulfilmentShipmentStatusChanged
Для FBS: fulfilmentShipmentStatusChanged отправляется для исходящих отгрузок (direction: "out"). Для FBO — для входящих поставок.

Дополнительные REST-события

Помимо трёх основных типов, система поддерживает дополнительные configurable REST-события. Подписка на них управляется через API нотификаций (Настройка вебхуков).

Имя события Описание
orderCreated Создан новый заказ
orderStatusChanged Изменился статус заказа (внутреннее событие, отправляется как statusChanged)
orderRepresentStatusChanged Изменился статус заказа (представление для партнёра)
itemRepresentStatusChanged Изменился статус товара (представление для партнёра)
orderAndItemsStatusChanged Изменился статус заказа и товаров одновременно
shipmentOutReceivedRest Получена исходящая поставка
fulfilmentShipmentValidationRest Результат валидации поставки
moderationRejected Модерация карточки товара отклонена
moderationApproved Модерация карточки товара одобрена
nomenclatureSubscriptionUpdated Обновлена подписка на номенклатуру
purchaseOrderDirectFlowCreated Создан заказ на закупку (прямой поток)
purchaseOrderReverseFlowCreated Создан заказ на возврат поставщику
supplierReturnCancelProcessedEvent Обработана отмена возврата поставщику
Configurable: Каждое событие имеет флаг configurable. Только configurable-события доступны для подписки через API. Актуальный список можно получить через GET /dictionarynotificationEvents.

Структура нотификации

Все нотификации заказов (statusChanged, itemStatusChanged) имеют общие поля:

Поле Тип Описание
type string Тип нотификации (statusChanged, itemStatusChanged, fulfilmentShipmentStatusChanged)
trackingId string Номер заказа партнёра (без префикса)
data object Полные данные объекта (заказ или поставка)
date datetime Время события (формат: YYYY-MM-DD HH:MM:SS)
sequenceNumber integer Порядковый номер изменения для данного заказа

sequenceNumber

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

Важно: Если sequenceNumber пришедшей нотификации меньше или равен уже обработанному — игнорируйте её, т.к. данные устарели.

Полная структура data в нотификации заказа

Объект data для нотификаций statusChanged и itemStatusChanged содержит полную информацию о заказе:

Основные поля заказа

Поле Тип Описание
id string ID заказа (с префиксом страны, например CZ20018856)
status string Текущий статус заказа
paymentMethod string Способ оплаты (COD, prepaid)
fullSum string Полная сумма заказа
deliveryPrice string Стоимость доставки
rejectPrice integer Стоимость возврата
itemQuantity integer Количество товаров в заказе
currency string Валюта (rub)
shippingType string Тип отгрузки (fulfilment)
platform string Платформа (marketplace)
comment string Комментарий к заказу
confirmationFailedCode string Код причины неподтверждения
confirmationFailedReason string Описание причины неподтверждения
externalOrderNumber string Внешний номер заказа
externalTrackingNumber array Внешние трек-номера (массив строк)
createdAt string Дата создания заказа
updatedAt string Дата последнего обновления
paymentDate string Дата оплаты
dates object Даты ключевых событий: delivered, shipped

Ценовые поля уровня заказа

Поле Тип Описание
basePrice integer Базовая цена (сумма по заказу)
salePrice integer Цена продажи
paidPrice integer Оплаченная цена
partnerAgreedPrice integer Согласованная цена партнёра
couponDiscount integer Скидка по купону
loyaltyDiscount integer Скидка программы лояльности
partnerAgreedDiscount integer Согласованная скидка партнёра
otherDiscounts integer Прочие скидки
totalDiscount integer Общая скидка

Поля товара (items[])

Поле Тип Описание
id string ID товара в заказе
status string Текущий статус товара
finalERPStatus string Финальный ERP-статус (sold, rejected, claimed_ok и т.д.)
sku string Артикул товара партнёра
description string Описание товара
size string Размер товара
basePrice string Базовая цена (до скидок)
salePrice string Цена продажи
paidPrice string Оплаченная цена
partnerAgreedPrice string Согласованная цена партнёра
couponDiscount string Скидка по купону
loyaltyDiscount string Скидка программы лояльности
partnerAgreedDiscount string Согласованная скидка партнёра
otherDiscounts string Прочие скидки
totalDiscount string Общая скидка
datamatrix string Код маркировки DataMatrix (UIT)
datamatrixCode string Альтернативное поле кода маркировки
statusChangeReason string Причина изменения статуса
discrepancyAct string Акт расхождений

Адрес доставки (shippingAddress)

Поле Тип Описание
id integer ID адреса
zipcode string Почтовый индекс
region string Регион
city string Город
street string Улица
houseNum string Номер дома
apartment string Квартира
cityId string ФИАС-код города
streetId string ФИАС-код улицы
buildingId string ФИАС-код здания
pickupPointId string ID пункта выдачи (если самовывоз)

Способ доставки (deliveryMethod)

Поле Тип Описание
deliveryPrice string Стоимость доставки
deliveryDate string Дата доставки
deliveryIntervalFrom string Начало интервала доставки
deliveryIntervalTo string Конец интервала доставки
deliveryIntervalId integer ID интервала доставки
hasIntervals boolean Доступны ли интервалы доставки
shippingMethodName string Название способа доставки
shippingMethodCode string Код способа доставки
serviceLevelTypeCode string Код уровня сервиса (economy_b2b, standard_b2b)
serviceLevelTypeName string Название уровня сервиса
shippingMethodTypeCode string Тип метода доставки (delivery_service)
cutOff string Крайний срок подтверждения/отгрузки

Клиент (customer)

Поле Тип Описание
firstName string Имя
lastName string Фамилия
middleName string Отчество
phone string Телефон
email string Email

Трекинг (tracking)

Поле Тип Описание
trackingId string ID для отслеживания
trackingUrl string URL для отслеживания доставки

Сценарий: частичный выкуп

Пример последовательности нотификаций при частичном выкупе (2 товара, 1 выкуплен):

Событие Статус заказа Товар 1 Товар 2 Нотификации
Заказ создан New to be confirmed New to be confirmed New to be confirmed statusChanged
Подтверждён Confirmed Confirmed Confirmed statusChanged
Отгружен Shipped Shipped Shipped statusChanged
Доставлен, частичный выкуп Delivered Delivered Not bought statusChanged + itemStatusChanged
Товар 2 на складе Delivered Delivered Returned только itemStatusChanged
Обратите внимание: На шаге «Товар 2 на складе» нотификация statusChanged НЕ приходит, потому что статус заказа не изменился (остался «Delivered»). Приходит только itemStatusChanged.

См. также

Помогла эта информация?

Да Нет
0/1000 Отправить
Переотправка нотификаций в API
Настройка вебхуков в API
Спросить у Lamoda Seller Assistant в Telegram