Описание метода в api версии 2

Назначение

Используется для создания новых  или обновления существующих товаров на торговой площадке.

Пример запроса JSON (v2)

Пример демонстрирует вызов метода /v2/product/create.

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

POST /ExternalExchange/v2/product/create HTTP/1.1 
Content-Type: application/json; 

{
 "externalSystemId": "000000001",
 "nomenclatureSearchAttribute": "article",
 "products": [
	{
	  "externalSystemProductId": "00-07030193",
	  "updateExistingProduct": true,
	  "productName": "Шкаф для посуды",
	  "productPrintName": "Шкаф для посуды",
	  "productArticle": "00-00011111",
	  "productFullDescription": "Очень красивый шкаф для посуды",
	  "productGroups": "Корпусная мебель",
	  "productGuid": "b0d4ce5d-2757-4699-948c-cfa72ba94f87",
	  "productCharacteristicGuid": "b0d4ce5d-2757-4699-948c-cfa72ba94f84",
	  "productCharacteristicName": "Размер 10",
	  "kindName": "Товары",
	  "unitCode": "796",
	  "vat": "20",
	  "barcodes": [
	     {
			"barcode": "2000000049427"
		 }
		]
	  }
   ]
}
JS

Пример успешного ответа

{
  "message": "All products were successfully processed",
  "externalSystemId": "000000002",
  "success": true,
  "successInAllSubrequests": true
  "resultList": [
    {
      "message": "",
      "updated": true,
      "externalSystemProductId": "00-00011111",
      "success": true
    }
  ]
}
JS

Пример ответа c ошибками

Пример 1 
{
  "resultList": [],
  "message": "External system wan not found by externalSystemId",
  "externalSystemId": "000000001",
  "success": false,
  "successInAllSubrequests": false
}

Пример 2
{
  "message": "All products were successfully processed",
  "resultList": [
    {
      "message": "Product already created for externalSystemId = 00-07030193",
      "updated": false,
      "externalSystemProductId": "00-07030193",
      "success": true
    }
  ],
  "externalSystemId": "123",
  "success": true,
  "successInAllSubrequests": true
}
JS

Описание параметров запроса


ПараметрТипОбязателенОписание
1externalSystemIdstringНетКод внешней системы откуда идет подключение к базе маркета
2nomenclatureSearchAttributestringДа

Код параметра поиска товара:

  • name - поиск по наименование
  • article - поиск по артикулу
  • code - поиск по коду
  • none - не определено. Поиск товаров не будет выполняться.

productsМассивДаМассив товаров для создания или обновления
3externalSystemProductIdstringДа

Идентификатор товара во внешней системы. Например, код справочника "Номенклатура" во внешней системе 1С.

В общем случае является идентификатором комбинации Номенклатура + Характеристика.

4updateExistingProductbooleanДаПризнак, разрешающий или запрещающий обновлять существующий товар
5productCodestringНетКод товара
6productGuidstringДаИдентификатор номенклатуры (без характеристики) внешней системы для однозначной идентификации элементов во время загрузки
7productNamestringДаКраткое наименование товара
8productPrintNamestringНетПолное наименование товара
9productCharacteristicGuidstringНет (warning)

Идентификатор характеристики внешней системы для однозначной идентификации элементов во время загрузки

Является обязательным, если заполнено поле "productCharacteristicName"

10productCharacteristicNamestringНет (warning)

Наименование характеристики товара

Является обязательным, если заполнено поле "productCharacteristicGuid"

11productArticlestringНетАртикул товара
12productFullDescriptionstringНетОписание товара
13productGroupsstringНет

Строка иерархии групп, уровни групп разделяются символом "$$", например:

  • Спортивные товары$$Велосипеды$$Горные
14kindNamestringНетНаименование вида товара
15unitCodestringДаКод единицы измерения по классификатору (в v1 - measureUnitCode)
16vatstringДа

Код ставки НДС:

  • "10" - НДС10
  • "18"- НДС18
  • "20"- НДС20
  • "NoVat"- БезНДС

barcodesarrayНетМассив штрихкодов номенклатуры для добавления, существующие штрихкоды не удаляются (добавлено в v2)
17barcodestringДа

Добавляемый штрихкод номенклатуры. Если используется для другой номенклатуру, то он переназначается на текущую

18packageNamestringНетНаименование упаковки товара. Выполняется поиск по полям: Наименование + Владелец (номенклатура или набор упаковок)

marketplacesDataarrayНетМассив идентификаторов площадок для привязки товара
19merchantIdstringДаИдентификатор личного кабинета (код элемента справочника)
20marketplaceProductIdstringНетИдентификатор товара на площадке

Описание параметров ответа


ПараметрТипОбязателенОписание

Параметры
1externalSystemIdstringДаКод внешней системы
2messagestringДа

Описание результата запроса:

  • "Request was valid but all products have errors" - все товары не удалось создать или обновить
  • "Request was valid but some products have errors" - некоторые товары не удалось создать или обновить
  • "All products were successfully processed" - все товары успешно созданы или обновлены
3successInAllSubrequestsbooleanДа

Статус выполнения подзапросов метода

  • true - все подзапросы метода выполнены успешно
  • false - подзапрос выполнен с ошибкой. Описание ошибки см. в параметре message
4successbooleanДа

Общий статус запроса

  • true - запрос успешный
  • false - выполнен с ошибкой

resultListМассивНет

Массив созданных или обновленных товаров

5messagestringДа

Описание результата запроса по позиции товара

  • "Product already created for externalSystemId" - Попытка обновить существующий товар, где updateExistingProduct=false 
  • "For externalSystemId = 111 there are more than one entry with externalSystemProductId = 111 in request" - передан неуникальный идентификатор товара во внешней системе (externalSystemProductId)
  • "Empty externalSystemProductId is not permitted" - пустой идентификатор товара во внешней системе (externalSystemProductId)
6updatedbooleanДа

Признак обновления товара

  • true - товар создан или обновлен
  • false - не удалось создать или обновить (описание ошибки в параметре message)
7externalSystemProductIdstringДаИдентификатор товара во внешней системы. Например, код справочника "Номенклатура" во внешней системе 1С.
8successbooleanДа

Статус выполнения изменений по позиции товара

  • true - запрос успешный
  • false - выполнен с ошибкой