С помощью API можно создать категории, товары, варианты (свойства) к товарам, а также обновлять остатки товаров.
Как создать категорию и подкатегорию товара
Если категории созданы в кабинете, то получите их GET запросом или создайте нужные по API:
- Для новой категории нужно только указать ее название;
- Чтобы добавить подкатегорию, в запросе передайте название и параметр «parent_id» (родительскую категорию).
Как создать товар по API
Создать товары можно по одному или списком до 100 шт. за один запрос и сразу передать данные в кастомные поля.
Учитывайте основные моменты:
- Каждый товар должен иметь свой уникальный артикул, название и штрихкод, поскольку выступает отдельной единицей складского учета;
- Если товар с вариантами, то название товара общее, а каждый вариант имеет уникальный артикул и штрихкод;
- Синхронизация данных между системами происходит по артикулу товара. Поэтому убедитесь, что он одинаковый в одном товаре во всех системах и передайте его в параметре sku;
- Чтобы поле штрихкод было доступно, сначала нужно включить в разделе «Настройки» → «Товары» переключатель «Использовать штрихкоды».
После создания товара в ответе вы получите идентификатор товара (productId), который можно использовать для обновления товаров или создания вариантов к ним.
Как создать вариант товара
Чтобы создать вариант товара, нужно:
- Получить идентификатор товара (productId) к которому планируете добавить вариант товара. Вы получаете его в параметре «id» в ответе после создания товара или можно получить список товаров используя фильтры, чтобы найти нужный и сохранить его «id»;
- Отправить запрос для добавления вариантов к этому товару (до 100 шт. в запросе), указав идентификатор товара (productId) в формате JSON.
Пример URL для товара №12:POST https://openapi.keycrm.app/v1/products/12/offers
Как обновить остатки по API
В одном запросе доступна передача остатков для до 10000 товаров с одного склада.
Остатки можно обновить только передав артикул (sku) и количество:
{
"warehouse_id": 1, // идентификатор склада, отображается в списке складов
"stocks": [
{
"sku": "001-242", // артикул товара
"quantity": 3 // количество остатков
},
{
"sku": "002-242", // артикул товара
"quantity": 5 // количество остатков
}
]
}
Для обновления остатков по идентификаторам вариантов нужно:
- Получить из списка вариантов товаров offer_id (идентификатор варианта товара);
- Отправить запрос на обновление остатков указав offer_id в параметре «id». Если передать также артикул (sku), то система сначала будет искать нужный товар по «id», а если не найдет — попытается найти по «sku».
Даже если у вас товары без вариантов, каждый из них имеет offer_id. Поскольку для системы товар без вариантов означает товар в одном варианте.
После передачи остатков в этом товаре будет обновлен остаток на указанном складе.
Отменить переданный остаток по API нельзя, запись об обновлении остатка будет отображаться в истории изменений по каждому товару и в разделе движение товаров.