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

Полный список кодов ошибок API с описаниями на русском и английском языках.

Системные коды ошибок

Код Название Описание
50400 Bad Request Неверный формат запроса или данные не прошли валидацию
50401 Unauthorized Требуется авторизация. Токен отсутствует, истек или невалиден
50403 Forbidden Недостаточно прав для выполнения операции
50422 Unprocessable Entity Ошибка валидации бизнес-логики
50500 Internal Server Error Внутренняя ошибка сервера. Попробуйте повторить запрос позже
-32000 JSON-RPC Validation Error Ошибка валидации параметров JSON-RPC запроса

Структура ответа с ошибкой

REST API (B2B Platform)

{
  "error": {
    "code": 50400,
    "message": "Bad Request",
    "description": "Описание ошибки"
  }
}

JSON-RPC (Seller API)

{
  "jsonrpc": "2.0",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "error": {
    "code": 50401,
    "message": "Unauthorized"
  }
}

JSON-RPC с деталями валидации

{
  "jsonrpc": "2.0",
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "error": {
    "code": -32000,
    "message": "validation failure list: seller_id is required",
    "errors": [
      {
        "field": "seller_id",
        "message": "is required"
      }
    ]
  }
}

Бизнес-ошибки

Авторизация и партнеры

Сообщение (EN) Сообщение (RU) Причина
Partner not found Партнер не найден Неверные credentials или партнёр не активирован
Country is not enabled for partner Страна недоступна для партнера Попытка работать со страной, не включённой для партнёра

Товары (номенклатура)

Сообщение (EN) Сообщение (RU) Причина
Nomenclature was not found Товар не найден SKU не существует в системе
Nomenclature sell value in processing Изменения в процессе обработки, попробуйте еще раз позже Предыдущее изменение ещё обрабатывается

Цены

Сообщение (EN) Сообщение (RU) Причина
Price is required if country is enabled Введите цену Не указана цена для активной страны
Price must be rounded up to tens Цена должна быть кратна 10 Для России цена должна быть кратна 10 (без копеек)
The sale price value is greater 20% or less 95% of price Недопустимая цена с учетом скидки. Скидка может составлять от 5% до 80% от цены Скидка должна быть в диапазоне 5-80%
Missed RU nomenclature sell value Не установлена цена для страны RU Для работы с BY/KZ сначала нужно установить цену для России
Auto conversion not enabled for country Автоконвертация недоступна для страны Автоматическая конвертация валюты не включена

Скидки и акции

Сообщение (EN) Сообщение (RU) Причина
Sale date is required when sale price is present Необходимо указать период скидки При установке скидочной цены обязательны даты начала и окончания
Sale start date is greater then sale end date Период скидки указан неверно Дата начала скидки позже даты окончания

Валидации полей

Цены (price)

Правила валидации цен

Правило Значение Пример ошибки
Кратность для RU Кратна 10 1990 , 1995
Минимум ≥ 10 5
Максимум ≤ 99 999 990
Скидка 5% — 80% Скидка 90%

SKU и идентификаторы

Форматы идентификаторов

Поле Формат Пример
seller_sku Буквы, цифры, _-/. SHOE-001-BLK
lamoda_sku Генерируется Lamoda MP002XM0ABCD01
barcode 8-14 цифр (EAN/GTIN) 4607001234567
JSON-RPC id UUID v4 (36 символов) 550e8400-e29b-41d4-a716-446655440000

Типы отгрузок (shipment_types)

Расшифровка значений

В некоторых методах используется поле required_for_shipment_types с числовыми значениями:
Значение Тип Описание
"1" FBO Fulfillment by Operator — фулфилмент Lamoda
"2" FBS Fulfillment by Seller — фулфилмент продавца
"3" Crossdock Кросс-докинг

Страны (country)

Код Страна Статус
RU Россия Активна
BY Беларусь Активна
KZ Казахстан Активна
UA Украина Deprecated

Как обрабатывать ошибки

def handle_lamoda_error(response):
    """Обработка ошибок Lamoda API"""
    
    if response.status_code == 401:
        # Токен истёк — обновляем
        refresh_token()
        return retry_request()
    
    error = response.json().get("error", {})
    code = error.get("code")
    message = error.get("message", "")
    
    if code == 50400:
        if "Partner not found" in message:
            raise AuthError("Проверьте client_id и client_secret")
        elif "Price must be rounded" in message:
            raise ValidationError("Цена должна быть кратна 10")
    
    elif code == 50422:
        # Ошибка валидации — смотрим детали
        errors = error.get("errors", [])
        for err in errors:
            print(f"Поле {err['field']}: {err['message']}")
    
    elif code == 50500:
        # Внутренняя ошибка — повторяем с задержкой
        time.sleep(5)
        return retry_request()
    
raise APIError(f"Ошибка {code}: {message}")

См. также

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

Да Нет
0/1000 Отправить
Спросить у Lamoda Seller Assistant в Telegram