4
Стать партнером
4
{{ formatMonthYear(startMonth) }}
{{ d }}
{{ day.day }}
{{ formatMonthYear(endMonth) }}
{{ d }}
{{ day.day }}
Обновлено
16.02.2026
Содержание статьи
<h1>5.2 Остатки FBO</h1><br />
<br />
<p><br />
Lamoda B2B Platform предоставляет возможность получения информации о товарных запасах на складе Lamoda, актуальных на момент выполнения запроса. Это критически важно для FBO-модели, где весь сток хранится на стороне Lamoda.<br />
</p><br />
<br />
<b>⚠️ Важно:</b> При создании заказа Lamoda автоматически проверяет доступность товаров на складе. Если товара нет в наличии, он перейдёт в статус <code>canceled</code>. Регулярная синхронизация остатков помогает избежать таких ситуаций.<br />
<br />
<h2>Метод получения остатков</h2><br />
<br />
<p><b>GET</b> <a href="<a class="txttohtmllink" href="https://academy.lamoda.ru/articles/api/apispec/lamoda-b2b-platform-api/#/%;D0%A1%D1%82%D0%BE%D0%BA/get_api_1_get_stock">https://academy.lamoda.ru/articles/api/apispec/lamoda-b2b-platform-api/#/%;D0%A1%D1%82%D0%BE%D0%BA/get_api_1_get_stock</a>" target="_blank">/api/v1/stock/goods</a></p><br />
<p>Возвращает список товаров с количеством на складе Lamoda.</p><br />
<br />
<h2>Параметры запроса</h2><br />
<br />
<table style="border-collapse: collapse; width: 100%;"><br />
<tbody><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Параметр</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Тип</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Обязательный</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>По умолчанию</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Описание</b></td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>page</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">integer</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">1</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Номер страницы (начиная с 1)</td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>limit</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">integer</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">25</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Количество SKU на странице (макс. 100)</td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>withZeroQuantity</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">0 или 1</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">1</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Включать товары с нулевым остатком: 1 — да, 0 — нет</td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>partnerCode</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">string</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">—</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Код партнёра (только заглавные A-Z)</td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>updatedAt</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">string</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">—</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Получить только изменения после указанной даты. Формат: <code>YYYY-MM-DD+hh:mm:ss</code></td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>sku[]</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">array</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Нет</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">—</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Фильтр по конкретным артикулам (до 100 SKU)</td><br />
</tr><br />
</tbody><br />
</table><br />
<br />
<h2>Примеры запросов</h2><br />
<br />
<h3>Получение полного стока</h3><br />
<br />
<pre><br />
curl -X GET "<a class="txttohtmllink" href="https://api-b2b.lamoda.ru/api/v1/stock/goods?page=1&limit=50">https://api-b2b.lamoda.ru/api/v1/stock/goods?page=1&limit=50</a>" \<br />
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"<br />
</pre><br />
<br />
<h3>Получение стока без нулевых позиций</h3><br />
<br />
<pre><br />
curl -X GET "<a class="txttohtmllink" href="https://api-b2b.lamoda.ru/api/v1/stock/goods?withZeroQuantity=0&limit=100">https://api-b2b.lamoda.ru/api/v1/stock/goods?withZeroQuantity=0&limit=100</a>" \<br />
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"<br />
</pre><br />
<br />
<h3>Получение стока по конкретным SKU</h3><br />
<br />
<pre><br />
curl -X GET "<a class="txttohtmllink" href="https://api-b2b.lamoda.ru/api/v1/stock/goods?sku[]=SELLER-SKU-001&sku[]=SELLER-SKU-002">https://api-b2b.lamoda.ru/api/v1/stock/goods?sku[]=SELLER-SKU-001&sku[]=SELLER-SKU-002</a>" \<br />
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"<br />
</pre><br />
<br />
<h3>Получение дельты (изменений с определённого момента)</h3><br />
<br />
<pre><br />
curl -X GET "<a class="txttohtmllink" href="https://api-b2b.lamoda.ru/api/v1/stock/goods?updatedAt=2025-01-15+;10:00:00">https://api-b2b.lamoda.ru/api/v1/stock/goods?updatedAt=2025-01-15+;10:00:00</a>" \<br />
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"<br />
</pre><br />
<br />
<h3>Получение стока для конкретного партнёра</h3><br />
<br />
<pre><br />
curl -X GET "<a class="txttohtmllink" href="https://api-b2b.lamoda.ru/api/v1/stock/goods?partnerCode=PARTNER">https://api-b2b.lamoda.ru/api/v1/stock/goods?partnerCode=PARTNER</a>" \<br />
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"<br />
</pre><br />
<br />
<h2>Пример ответа</h2><br />
<br />
<pre><br />
{<br />
  "_links": {<br />
    "self": { "href": "/api/v1/stock/goods?page=1&limit=25" },<br />
    "next": { "href": "/api/v1/stock/goods?page=2&limit=25" }<br />
  },<br />
  "_embedded": {<br />
    "stockStates": [<br />
      {<br />
        "sku": "SELLER-SKU-001",<br />
        "quantity": 15<br />
      },<br />
      {<br />
        "sku": "SELLER-SKU-002",<br />
        "quantity": 0<br />
      }<br />
    ]<br />
  },<br />
  "page": 1,<br />
  "limit": 25,<br />
  "pages": 10,<br />
  "total": 245<br />
}<br />
</pre><br />
<br />
<b>⚠️ Важно:</b> Wrapper в ответе — <code>_embedded.stockStates</code> (не <code>_embedded.goods</code>).<br />
<br />
<h2>Описание полей ответа</h2><br />
<br />
<table style="border-collapse: collapse; width: 100%;"><br />
<tbody><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Поле</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Тип</b></td><br />
<td style="border: 1px solid #ddd; padding: 8px;"><b>Описание</b></td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>sku</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">string</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Артикул товара (supplier SKU)</td><br />
</tr><br />
<tr><br />
<td style="border: 1px solid #ddd; padding: 8px;"><code>quantity</code></td><br />
<td style="border: 1px solid #ddd; padding: 8px;">integer</td><br />
<td style="border: 1px solid #ddd; padding: 8px;">Количество на складе</td><br />
</tr><br />
</tbody><br />
</table><br />
<br />
<h3>Про резервы и доступность</h3><br />
<br />
<p>API возвращает базовые поля <code>sku</code> и <code>quantity</code>. Резервы (<code>reserved</code>) и доступное количество (<code>available</code>) вычисляются динамически:</p><br />
<br />
<ul><br />
<li><b>reserved</b> — количество товаров в неподтверждённых заказах (статусы <code>initial</code> и <code>new</code>)</li><br />
<li><b>available</b> = quantity - reserved</li><br />
</ul><br />
<br />
<p>Для партнёров с флагом <code>isNewFashion</code> резервы не вычисляются, возвращается только <code>quantity</code>.</p><br />
<br />
<h2>Стратегии синхронизации остатков</h2><br />
<br />
<h3>Полная синхронизация</h3><br />
<br />
<p>Рекомендуется выполнять 1-2 раза в сутки для полной сверки:</p><br />
<br />
<pre><br />
# Получаем все страницы<br />
page = 1<br />
all_stock = []<br />
<br />
while True:<br />
    response = get_stock(page=page, limit=100, withZeroQuantity=1)<br />
    all_stock.extend(response['_embedded']['stockStates'])<br />
    <br />
    if page >= response['pages']:<br />
        break<br />
    page += 1<br />
<br />
# Обновляем локальную базу<br />
sync_local_database(all_stock)<br />
</pre><br />
<br />
<h3>Инкрементальная синхронизация (дельта)</h3><br />
<br />
<p>Для частых обновлений (каждые 15-30 минут) используйте параметр <code>updatedAt</code>:</p><br />
<br />
<pre><br />
# Сохраняем время последней синхронизации<br />
last_sync = "2025-01-20+14:00:00"<br />
<br />
# Получаем только изменения<br />
response = get_stock(updatedAt=last_sync, withZeroQuantity=1)<br />
<br />
# Обновляем изменённые позиции<br />
for item in response['_embedded']['stockStates']:<br />
    update_local_stock(item['sku'], item['quantity'])<br />
<br />
# Сохраняем новое время синхронизации<br />
last_sync = datetime.now().strftime("%Y-%m-%d+%H:%M:%S")<br />
</pre><br />
<br />
<b>

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

Да Нет

Спасибо за отзыв

Отправить
6.1 Генерация этикеток
5.1 Остатки FBS
Спросить у Lamoda Seller Assistant в Telegram