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

Остатки FBO

Lamoda B2B Platform Partner API предоставляет возможность получения информации о товарных запасах на складе Lamoda, актуальных на момент выполнения запроса. Это критически важно для FBO-модели, где весь сток хранится на стороне Lamoda.

Важно: При создании заказа Lamoda автоматически проверяет доступность товаров на складе. Если товара нет в наличии, он перейдёт в статус canceled. Регулярная синхронизация остатков помогает избежать таких ситуаций.

Метод получения остатков

GET GET /api/v1/stock/goods

Возвращает список товаров с количеством на складе Lamoda.

Параметры запроса

Параметр Тип Обязательный По умолчанию Описание
page integer Нет 1 Номер страницы (начиная с 1)
limit integer Нет 25 Количество SKU на странице (макс. 100)
withZeroQuantity 0 или 1 Нет 1 Включать товары с нулевым остатком: 1 — да, 0 — нет
partnerCode string Нет Код партнёра (только заглавные A-Z)
updatedAt string Нет Получить только изменения после указанной даты. Формат: YYYY-MM-DD+hh:mm:ss
sku[] array Нет Фильтр по конкретным артикулам (до 100 SKU)

Примеры запросов

Получение полного стока

curl -X GET "https://api-b2b.lamoda.ru/api/v1/stock/goods?page=1&limit=50" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Получение стока без нулевых позиций

curl -X GET "https://api-b2b.lamoda.ru/api/v1/stock/goods?withZeroQuantity=0&limit=100" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

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

curl -X GET "https://api-b2b.lamoda.ru/api/v1/stock/goods?sku[]=SELLER-SKU-001&sku[]=SELLER-SKU-002" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Получение дельты (изменений с определённого момента)

curl -X GET "https://api-b2b.lamoda.ru/api/v1/stock/goods?updatedAt=2025-01-15+10:00:00" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Получение стока для конкретного партнёра

curl -X GET "https://api-b2b.lamoda.ru/api/v1/stock/goods?partnerCode=PARTNER" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

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

{
  "_links": {
    "self": { "href": "GET /api/v1/stock/goods?page=1&limit=25" },
    "next": { "href": "GET /api/v1/stock/goods?page=2&limit=25" }
  },
  "_embedded": {
    "stockStates": [
      {
        "sku": "SELLER-SKU-001",
        "quantity": 15
      },
      {
        "sku": "SELLER-SKU-002",
        "quantity": 0
      }
    ]
  },
  "page": 1,
  "limit": 25,
  "pages": 10,
  "total": 245
}
Важно: Wrapper в ответе — _embedded.stockStates (не _embedded.goods).

Описание полей ответа

Поле Тип Описание
sku string Артикул товара (supplier SKU)
quantity integer Количество на складе

Про резервы и доступность

API возвращает базовые поля sku и quantity. Резервы (reserved) и доступное количество (available) вычисляются динамически:

  • reserved — количество товаров в неподтверждённых заказах (статусы initial и new)
  • available = quantity - reserved

Для партнёров с флагом isNewFashion резервы не вычисляются, возвращается только quantity.

Стратегии синхронизации остатков

Полная синхронизация

Рекомендуется выполнять 1-2 раза в сутки для полной сверки:

# Получаем все страницы
page = 1
all_stock = []

while True:
    response = get_stock(page=page, limit=100, withZeroQuantity=1)
    all_stock.extend(response['_embedded']['stockStates'])
    
    if page >= response['pages']:
        break
    page += 1

# Обновляем локальную базу
sync_local_database(all_stock)

Инкрементальная синхронизация (дельта)

Для частых обновлений (каждые 15-30 минут) используйте параметр updatedAt:

# Сохраняем время последней синхронизации
last_sync = "2025-01-20+14:00:00"

# Получаем только изменения
response = get_stock(updatedAt=last_sync, withZeroQuantity=1)

# Обновляем изменённые позиции
for item in response['_embedded']['stockStates']:
    update_local_stock(item['sku'], item['quantity'])

# Сохраняем новое время синхронизации
last_sync = datetime.now().strftime("%Y-%m-%d+%H:%M:%S")
Рекомендация: Параметр updatedAt фильтрует строго "больше" указанной даты. Сохраняйте точное время последнего запроса для корректной дельты.

Что НЕ отображается в стоке

В ответе метода GET /api/v1/stock/goods не отображаются:

  • Излишки — товары, прибывшие сверх заявленного в поставке количества (до оформления документов)
  • Брак — товары, не прошедшие контроль качества
  • Товары на проверке — возвраты в процессе проверки качества

Информация по излишкам и браку доступна в Личном кабинете Lamoda B2B Platform Partner API и в отчёте о приёмке поставки.

Связь с поставками FBO

Остатки обновляются автоматически при:

Событие Изменение остатка
Поставка получила статус Received +quantity (принятое количество)
Поставка получила статус Closed Окончательная фиксация после проверки качества
Заказ создан reserved +1 (динамически)
Заказ отменён reserved -1 (динамически)
Заказ отгружен quantity -1, reserved -1
Возврат принят на склад +quantity (после проверки качества)

Обработка ошибок

Код Описание Решение
400 Invalid parameter / Too many SKUs Проверьте формат updatedAt (YYYY-MM-DD+hh:mm:ss) и лимит SKU (≤100)
400 Invalid partner code Проверьте partnerCode — только заглавные буквы A-Z

Общие HTTP-ошибки (401, 403, 429, 500) и рекомендации по обработке: Справочник кодов ошибок.

Лучшие практики

  1. Кэшируйте локально — храните остатки в своей базе и обновляйте через дельту
  2. Используйте withZeroQuantity=0 — для экономии трафика при больших каталогах
  3. Пагинация — всегда проходите все страницы при полной синхронизации
  4. Мониторьте updatedAt — отслеживайте "застарелые" позиции без обновлений
  5. Обрабатывайте sku[] — при передаче sku[] пагинация игнорируется, все результаты в одном ответе

См. также

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

Да Нет
0/1000 Отправить
Генерация этикеток через API
Остатки FBS в API
Спросить у Lamoda Seller Assistant в Telegram