Создать и загрузить товары
Для метода используется авторизация по jwt токену.
Адрес рабочей среды: https://openapi.ru.laliexpress.com

Создать товар

POST /api/v1/product/create
Создаёт и загружает на платформу товары. В запросе можно передать до 1000 товаров.
В течение 4 часов вы можете создать или обновить не более 100 000 товаров. Квота суммируется по всем методам создания/редактирования товаров.
В результате запроса формируется группа заданий (параметр group_id) на загрузку товаров на платформу. Статус выполнения заданий можно получить с помощью метода GET /api/v1/tasks?group_id=.

200 ОК в результате запроса не гарантирует создание товара. Нужно обязательно проверить статус выполнения задания.
В запросе укажите следующие заголовки:
ЗаголовокОписание
x-auth-tokenВаш jwt токен для авторизации.
x-request-locale
Необязательный. Язык ответа от API. Укажите значение ru_RU

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

ПараметрТипОбязательныйОписание
productsarrayДаМассив, в котором передаются объекты товаров.
aliexpress_category_idintДаИдентификатор категории нижнего уровня. Как получить категорию нижнего уровня.
external_idstringНет
Ваш собственный идентификатор товара. Нужен, чтобы сопоставить задание на создание товара с самим товаром.
В качестве external_id вы можете указать ID товара из внешней системы (например, из системы складского учёта).
attribute_listarray of objectsДа, если в категории есть хотя бы один обязательный параметр.Для каждого атрибута передайте объект, содержащий attribute_name, attribute_name_id, attribute_value, attribute_value_id. Вы можете получить их в массиве properties метода POST /api/v1/categories/get.
  ↳ attribute_namestringНет
Название атрибута, значение properties.name из ответа метода POST /api/v1/categories/get.
Вы также можете задать своё название атрибута.
  ↳ attribute_name_idstring(int)НетИдентификатор названия атрибута, значение properties.id из ответа метода POST /api/v1/categories/get, преобразованное из типа string > int. Чтобы задать своё название атрибута, укажите значение "-1".
  ↳ attribute_valuestringНетЗначение атрибута, значение values.name из ответа метода POST /api/v1/categories/values-dictionary. В запросе укажите `is_sku_property`:false. Вы также можете задать своё значение атрибута.
  ↳ attribute_value_idstring(int)НетИдентификатор значения атрибута, значение values.id из ответа метода POST /api/v1/categories/values-dictionary, преобразованное из типа string > int. В запросе укажите `is_sku_property`:false. Чтобы задать своё значение атрибута, укажите значение "-1".
  ↳ attribute_unitstringНетЕдиница измерения атрибута, значение units.name из ответа метода POST /api/v1/categories/get.
freight_template_idintДаИдентификатор шаблона доставки. Как получить идентификатор шаблона.
languagestringДа
Язык карточки товара по умолчанию. Возможные значения:
  • ru,
  • en.
lot_numstringНетКоличество товара в лоте. Обязательный параметр, если выбран метод продаж лотами (package_type: true).
main_image_urls_listarray of stringsДа
Массив ссылок на основные изображения товара. Все ссылки должны быть прямыми, то есть вести на изображение на вашем сервере или на CDN LAliExpress. От 1 до 6 ссылок. Требования к изображению
multi_language_description_listarray of objectsДа
Список описаний товара на нескольких языках.
Поддерживаемые языки:
  • русский,
  • турецкий,
  • английский.
Для русского и английского есть автоперевод: если не передать описание на каком-то из этих языков, система добавит описание, переведённое автоматически.
  ↳ languagestringДа
Язык описания товара. Возможные значения:
  • tr,
  • ru,
  • en,
  • tr_TR,
  • ru_RU,
  • en_US.
  ↳ webstringДаОписание товара на сайте, можно передать HTML разметку или просто текст.
  ↳ mobilestringДаОписание товара в мобильном приложении, можно передать HTML разметку или просто текст.
multi_language_subject_listarray of objectsДа
Список названий товара на нескольких языках.
Поддерживаемые языки:
  • русский,
  • турецкий,
  • английский.
Для русского и английского есть автоперевод: если не передать название на каком-то из этих языков, система добавит название, переведённое автоматически.
  ↳ languagestringДа
Язык названия товара. Возможные значения:
  • tr,
  • ru,
  • en,
  • tr_TR,
  • ru_RU,
  • en_US.
  ↳ subjectstringДаНазвание товара на языке.
package_height
int
minimum: 1 maximum: 700
ДаВысота упаковки в сантиметрах.
package_length
int
minimum: 1 maximum: 700
ДаДлина упаковки в сантиметрах.
package_typebooleanНетМетод продаж: true - лотами, false - поштучно.
package_width
int
minimum: 1 maximum: 700
ДаШирина упаковки в сантиметрах.
weight
string
minimum: 0.01 maximum: 700
ДаВес товара в упаковке, в килограммах (используется для расчёта доставки).
product_unitintДа
Единица измерения товара:
  • 100000013 — пара,
  • 100000014 — упаĸовĸа/упаĸовĸи,
  • 100000015 — штуĸа/штуĸи,
  • 100000017 — ĸомплеĸт/ĸомплеĸты,
  • 100000019 — ĸвадратный метр.
shipping_lead_time
int
minimum: 1 maximum: 30
Да
Время на отправку заказа (количество дней, за которое вы обязуетесь ввести трек-номер, если у вас своя логистика).
Рекомендуем указывать не больше 5.
  • Для FBS LAliExpress и Почты России трек-номер генерируется автоматически.
  • Для FBA LAliExpress укажите любое значение, оно автоматически заменится на 30.
size_chart_idintНет
Идентификатор таблицы размеров. Нужен для одежды, обуви, аксессуаров и белья. Значение data.id из ответа метода POST /api/v1/getSizeChartTemplates.
group_idsarray of stringsНет
Массив идентификаторов товарных групп, где каждая самого нижнего уровня (у неё нет дочерних групп) и не пополняется товарами автоматически.
Идентификаторы можно получить в массиве product_groups из ответа метода POST /api/v2/posting/get-product-groups-by-seller. Если товарная группа не пополняется автоматически, у параметра is_auto значение false.
Количество идентификаторов в массиве от 0 до 100.
Если массив не передан, товарные группы не обновятся для товара.
Если массив передан как пустой, товар будет удалён из товарных групп.
bulk_discount
int
minimum: 1 maximum: 99
Да, если заполнено bulk_order.Процент скидки для оптовой покупки.
bulk_order
int
minimum: 2 maximum: 100000
Да, если заполнено bulk_discount.Минимальное количество заказов для оптовой покупки.
sku_info_listarray of objectsДа
Массив вариаций (SKU) товара.
В результате добавления, в системе появятся не только те вариации, которые вы добавите тут, но и автоматически сгененированные вариации — путём комбинирования атрибутов: если вы добавите чёрную футболку размера M и белую футболку размера S, автоматически будут сгененированы белая M и чёрная S, с автоматически сгенерированными артикулами, но без цены и количества.
  ↳ sku_codestringДаАртикул или штрихкод вариации в вашей системе (задайте своё значение).
  ↳ price
string
minimum: 0.01 maximum: {max_value}
Да
Основная цена товара.
Может быть дробной. Например:
  • 1.01 — рубль с копейкой;
  • 1.1 — рубль с десятью копейками.
max_value:
  • USD: 999999;
  • RUB: 5000000;
  • CNY: 100000000;
  • TRY: 100000000;
  • AED: 100000000.
  ↳ discount_price
string
minimum: 0.01 maximum: {max_value}
Нет
Цена со скидкой.
Может быть дробной. Например:
  • 1.01 — рубль с копейкой;
  • 1.1 — рубль с десятью копейками.
max_value:
  • USD: 999999;
  • RUB: 5000000;
  • CNY: 100000000;
  • TRY: 100000000;
  • AED: 100000000.
  ↳ inventory
int
minimum: 0 maximum: 999999
ДаOстаток товара на складе.
  ↳ sku_attributes_listarray of objectsНет
Список атрибутов вариации товара.
Одна вариация отличается от другой уникальным набором атрибутов. Не создавайте две вариации с одинаковым набором атрибутов.
    ↳ sku_attribute_name_idstringДаИдентификатор атрибута вариации товара.,Укажите значение sku_properties.id из ответа метода POST /api/v1/categories/get.
    ↳ sku_attribute_value_idstringДаИдентификатор значения атрибута вариации.,Укажите значение values.id из ответа метода POST /api/v1/categories/values-dictionary, указав в запросе `is_sku_property`: true.
    ↳ sku_attribute_value_definition_namestringНетНазвание атрибута вариации товара, заданное продавцом. До 40 символов.
    ↳ sku_image_urlstringНетСсылка на изображение атрибута вариации товара, для тех атрибутов, у которых параметр has_customized_pic: true. Учтите требования к изображению вариации
  ↳ tnved_codesarray of stringsНетКлассификатор товаров из товарной номенĸлатуры внешнеэĸономичесĸой деятельности, обязательный для некоторых категорий товаров.
  ↳ gtinstringНетГлобальный номер товарной продуĸции в единой международной базе товаров GS1.,Если передать gtin, то коды ОКПД2 и ТНВЭД будут определены и переданы автоматически.
  ↳ okpd2_codesarray of stringsНетОбщероссийсĸий ĸлассифиĸатор продуĸции по видам эĸономичесĸой деятельности. Для некоторых категорий товаров, производимых в РФ.
videoobjectНетВидео товара.
  ↳ video_urlstringНет
Внешняя ссылка на видео товара.
  • Формат: AVI, MOV, 3GP.
  • Длительность: до 31 сек.
  • Размер: до 2 ГБ.
  ↳ preview_urlstringНет
Ссылка на изображение, которое будет стоп-кадром в карточке товара. По умолчанию — первая секунда видео.
  • Формат: JPEG или PNG.
  • Большая сторона от 750 px.
  • Меньшая сторона от 100 px.

Пример создания товара

Рассмотрим подробнее некоторые поля на примере создания товара с атрибутами:
  • Категория верхнего уровня — Женская одежда, категория второго уровня — Джинсы. Идентификатор категории Джинсы — 200000361.
  • Цвет: Белый — в системе LAliExpress, Беленький — в вашей системе.
  • Артикул в вашей системе: 123456789.

Шаг 1. Создайте массив для объектов товара

  1. Добавьте массив products, в котором будут передаваться ваши товары. В одном запросе можно создать до 1000 товаров.

Шаг 2. Укажите категории товара

  1. Получите идентификатор категории товара. Прочитайте статью в Базе знаний Как выбрать категорию.

    Пример дерева категорий в личном кабинете

    Товары на платформу нужно загружать только в категорию нижнего уровня (у неё нет дочерних категорий). Чтобы её получить:
    • Получите верхнеуровневый список категорий LAliExpress с помощью метода POST /api/v1/categories/top.
    • Сопоставьте ваши категории товаров с категориями платформы. Для джинсов подходит категория Женская одежда, её id — 200000345.
    • Рекурсивно вызывайте метод POST /api/v1/categories/get для каждой дочерней категории из children_ids, пока не получите необходимую категорию нижнего уровня. Например, у категории Джинсы id — 200000361.
  2. Добавьте в массив products параметр aliexpress_category_id с идентификатором для категории Джинсы — 200000361.

    Пример

Шаг 3. [Опционально] Укажите внешний ID товара

Внешний ID — это ваш собственный идентификатор товара — параметр external_id. Он нужен, чтобы связать идентификатор задания на создание товара с самим товаром.
Это работает так: в результате запроса на создание товара формируется группа заданий (параметр group_id). Затем вы можете проверить статус выполнения задания с помощью метода GET /api/v1/tasks?group_id=. Если в запросе вы передали external_id, то в ответе получите идентификатор группы заданий и свой идентификатор товара.
В качестве external_id вы можете указать ID товара из внешней системы (например, из системы складского учёта).
+ .Пример

Шаг 4. Укажите атрибуты товара

Атрибуты товара — это характеристики, которые принципиально отличают одну модель товара от другой. Настолько, что товары из одной категории, но с разными атрибутами товара окажутся в разных карточках товара.
Например, два товара из одной категории (Джинсы), но с разными атрибутами товара (Материал, Тип посадки) — это разные модели, и должны оказаться в разных карточках товара.

Атрибуты товара

Для каждой категории в системе ALiExpress есть готовый набор атрибутов и их значений. Вы можете использовать их или задать свои.
  1. Получите список атрибутов LAliExpress. Для этого используйте метод POST /api/v1/categories/get. В его ответе, в массиве properties будут атрибуты для нужной категории. Обязательные атрибуты помечены `is_required`:true.

    Пример атрибутов для категории Джинсы

  2. Добавьте массив объектов attribute_list — это будет список атрибутов товара. Например, для джинс — длина, материал, стиль, тип посадки и т. д.

    Пока не добавляйте атрибут Название бренда. О нём речь пойдёт в следующем шаге.
    Один атрибут — один объект.
    Каждый объект содержит такие параметры:
    • attribute_name (string) — название атрибута;
    • attribute_name_id (string) — ID атрибута;
    • attribute_value (string) — значение атрибута;
    • attribute_value_id (string) — ID значения.
      Название и ID атрибута возьмите из списка атрибутов, полученного на предыдущем шаге:
    • attribute_name — из properties.name;
    • attribute_name_id — из properties.id.

      Пример массива с атрибутами товара

  3. Задайте значения атрибутов (например, материал, из которого сшиты джинсы). Возьмите их из списка значений LAliExpress. Для этого используйте метод POST /api/v1/categories/values-dictionary, указав в запросе `is_sku_property`: false. Передайте их в attribute_value и attribute_value_id.

    Пример атрибутов при создании товара

  4. Задайте атрибут Название бренда:
    1. Убедитесь, что он входит в список брендов вашего магазина. Если нужного бренда в списке нет, добавьте его в свой магазин.
    2. Передайте три параметра: attribute_name, attribute_name_id и attribute_value_id.

      Не передавайте параметр attribute_value, чтобы избежать ошибок. Он будет добавлен автоматически.
      • attribute_name — это название бренда.
      • attribute_name_id — это ID названия атрибута. Для атрибута Бренд передайте значение 2.
      • attribute_value_id — это ID бренда. Передайте одно из следующих значений:
  5. [Опционально] Задайте свой атрибут. Для этого добавьте такой объект:
    • attribute_name — имя вашего атрибута;
    • attribute_name_id — укажите "-1";
    • attribute_value — значение вашего атрибута;
    • attribute_value_id — укажите "-1".

      Пример создания вашего атрибута

Шаг 5. Задайте вариации товара

Что такое вариация
Вариация товара — это товар с его уникальным набором атрибутов, немного отличающих его от всех остальных разновидностей того же товара.
Если две вещи имеют настолько небольшие отличия, что они должны оказаться в одной карточке товара, значит это две вариации одного товара.
Пример вариации
Например, одни и те же джинсы, но разного цвета и размера должны оказаться в одной карточке товара — это вариации одного товара.
При этом разные вариации могут иметь разную цену и остаток.
Как вариация появляется в системе
Когда вы создаёте товар на LAliExpress, вы неизбежно добавляете как минимум одну вариацию, потому что цену и остаток можно указать только для вариации.
Каждая вариация должна иметь SKU-код.
SKU — Stock Keeping Unit — это уникальный код, присваиваемый каждой вариации с целью управления запасом.
SKU-коды вам нужно придумать самим.
Ограничения при добавлении вариации
Набор атрибутов должен быть уникальным для каждой вариации: не может быть двух пар джинс с одинаковыми атрибутами вариации — обе красные, обе размера 34 и всё остальное тоже одинаковое.
Добавление вариаций
  1. Добавьте в запрос параметр sku_info_list, который содержит массив объектов . Это будет список вариаций товара.
  2. Внутрь массива добавьте столько объектов, сколько вариаций товара у вас есть.
    Каждый объект вариации содержит такие параметры:
    • sku_code (string) — артикул или штрихкод вариации — ваше значение. Например, из системы складского учёта;
    • price (string) — цена;
    • [опционально] discount_price (string) — цена со скидкой;
    • inventory (int) — остаток на складе;
    • sku_attributes_list (array of objects) — атрибуты вариации (описаны в следующем шаге).

      Пример объекта для вариации товара

  3. Получите список атрибутов для вариаций LAliExpress. Для этого используйте метод POST /api/v1/categories/get. В его ответе, в массиве sku_properties будут атрибуты вариаций для нужной категории. Обязательные атрибуты помечены `is_required`:true.

    Пример полученных атрибутов вариации

    Атрибуты вариаций в карточке товара

  4. Для каждой вариации заполните список атрибутов в объекте sku_attributes_list.
    Каждый атрибут — это объект с такими параметрами:
    • sku_attribute_name_id (string) — Идентификатор атрибута. Укажите значение sku_properties.id из ответа метода POST /api/v1/categories/get.
    • sku_attribute_value_id (string) — Идентификатор значения атрибута. Укажите значение values.id из ответа метода POST /api/v1/categories/values-dictionary, указав в запросе is_sku_property: true.
    • [Опционально] sku_attribute_value_definition_name (string) — Ваше собственное название атрибута. До 40 символов.
    • [Опционально] sku_image_url (string) — Ссылка на изображение атрибута — для атрибутов, у которых параметр has_customized_pic имеет значение true. Учтите требования к изображению вариации — смотрите раздел Требования к файлам.
      Если у товара несколько вариаций (как в примере с джинсами), передайте в поле sku_attributes_list несколько размеров или цветов по числу сочетаний. В примере ниже 2 цвета и 2 размера, то есть 4 сочетания параметров.

      Пример

  5. Получите системные значения для атрибутов вариаций (например, для атрибута вариации Цвет значения это Синий, Белый, Чёрный). Для этого используйте метод POST /api/v1/categories/values-dictionary, указав в запросе `is_sku_property`: true. Передайте полученное значение в sku_attribute_value_id.
  6. Чтобы добавить собственное название атрибуту вариации, укажите это название в параметре sku_attribute_value_definition_name. Например, цвет Беленький.

    Пример атрибутов вариации при создании товара

    В результате добавления, в системе появятся не только те вариации, которые вы сами добавите, но и автоматически сгененированные вариации — путём комбинирования атрибутов: если вы добавите чёрные джинсы размера 32 и белые джинсы размера 34, то автоматически будут добавлены белые размера 32 и чёрные размера 34, с автоматически сгенерированными артикулами, но без цены и количества.

Шаг 6. Привяжите шаблон доставки

Укажите идентификатор шаблона доставки — в параметре freight_template_id передайте значение templates.templateId из ответа метода GET /api/v1/sellercenter/get-count-product-on-onboarding-template.
Если вы используете свою доставку, откройте в личном кабинете продавца раздел Магазин → Шаблоны доставки и скопируйте идентификатор из столбца ID.

ID шаблона доставки на старой версии

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

curl --location --request POST 'https://openapi.ru.laliexpress.com/api/v1/product/create' \
--header 'Content-Type: application/json' \
--header 'x-auth-token: <YOUR_API_TOKEN>' \
--header 'x-request-locale: ru_RU' \
--data-raw '{
    "products": [
        {
            "aliexpress_category_id": 200000361,
            "external_id": "1005006950054494",
            "attribute_list": [
                {
                    "attribute_name": "Стиль",
                    "attribute_name_id": "326",
                    "attribute_value": "Повседневные",
                    "attribute_value_id": "200000072"
                },
                {
                    "attribute_name": "Пол",
                    "attribute_name_id": "284",
                    "attribute_value": "Жен",
                    "attribute_value_id": "494"
                },
                {
                    "attribute_name": "Длина",
                    "attribute_name_id": "380",
                    "attribute_value": "До щиколоток",
                    "attribute_value_id": "200660989",
                    "attribute_unit": "inch"
                },
                {
                    "attribute_name": "Стирка",
                    "attribute_name_id": "200000355",
                    "attribute_value": "Холодная стирка",
                    "attribute_value_id": "201450895"
                },
                {
                    "attribute_name": "Фактура ткани",
                    "attribute_name_id": "100002012",
                    "attribute_value": "Хлопковый деним",
                    "attribute_value_id": "58832792"
                },
                {
                    "attribute_name": "Фит",
                    "attribute_name_id": "200000277",
                    "attribute_value": "Обычный",
                    "attribute_value_id": "200004119"
                },
                {
                    "attribute_name": "Стиль джинсов",
                    "attribute_name_id": "200001084",
                    "attribute_value": "Прямые",
                    "attribute_value_id": "200001036"
                }
            ],
            "freight_template_id": 24117182098,
            "language": "ru",
            "main_image_urls_list": [
                     "https://st.aestatic.net/scqa-storage/open-async-pictures/PIC209.jpeg",
                     "https://st.aestatic.net/scqa-storage/open-async-pictures/PIC201.jpeg",
                     "https://st.aestatic.net/scqa-storage/open-async-pictures/PIC210.jpeg",
                     "https://st.aestatic.net/scqa-storage/open-async-pictures/PIC03.png",
                     "https://st.aestatic.net/scqa-storage/open-async-pictures/PIC207.jpeg"
            ],
            "multi_language_description_list": [
                {
                    "language": "ru",
                    "web": "test",
                    "mobile": "<p>Lorem ipsum dolor sit amet consectetur, adipisicing elit.</p>"
                }
            ],
            "multi_language_subject_list": [
                {
                    "language": "ru",
                    "subject": "Джинсы прямого кроя с необработанным краем"
                },
                {
                    "language": "en",
                    "subject": "Straight cut jeans with a raw edge"
                }
            ],
            "package_length": 30,
            "package_width": 30,
            "package_height": 5,
            "weight": "2",
            "shipping_lead_time": 5,
            "product_unit": 100000015,
            "bulk_discount": 10,
            "bulk_order": 3,
            "sku_info_list": [
                {
                    "sku_code": "123456789",
                    "price": "999999",
                    "discount_price": "888888",
                    "inventory": 999,
                    "sku_attributes_list": [
                        {
                            "sku_attribute_name_id": "14",
                            "sku_attribute_value_id": "29",
                            "sku_attribute_value_definition_name": "Беленькие",
                            "sku_image_url": "https://st.aestatic.net/scqa-storage/open-async-pictures/202.jpeg"
                        },
                        {
                            "sku_attribute_name_id": "5",
                            "sku_attribute_value_id": "4183",
                            "sku_attribute_value_definition_name": "Большие"
                        }
                    ]
                }
            ],
            "video": {
                    "preview_url": "https://ae01.alicdn.com/kf/S6b61a0ee7d314042bd117b2b4bf49789w.jpg",
                    "video_url": "https://ae01.alicdn.com/kf/jeans.avi"
            }
/* Turkish sellers also should pass HS codes */
        }
    ]
}'

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

ПараметрТипОписание
group_idstringИдентификатор запроса. По нему можно будет посмотреть статусы загрузки и обновления товаров.
resultsarray of objectsРезультаты запроса.
okbooleanБыл ли запрос успешным.
task_idstringИдентификатор задания.
errorsobjectСообщения об ошибках.
external_idstring
Ваш собственный идентификатор товара. Используйте, чтобы сопоставить задание на создание товара с самим товаром.

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

200 OK. Успешный запрос

200 OK. Ошибка в запросе