Розділи документації API
Документація API/Товари і склад/Товари

Товари

Каталог товарів і послуг. Право ролі: product.

Маршрути

GET/product
Список товарів з пагінацією, фільтрами й total.
право: product.view2 очк.
GET/product/{id}
Одна картка.
право: product.view1 очк.
GET/product/count
Лише кількість за тими самими фільтрами (голе число).
право: product.view2 очк.
POST/product
Створити.
право: product.create5 очк.
PUT/product/{id}
Оновити.
право: product.update5 очк.
DELETE/product/{id}
Видалити.
право: product.delete5 очк.
GET/product/search-by-barcode?barcode=…
Товар за штрихкодом.
право: product.view2 очк.
GET/product/link-price-book/{id}
Ціни товару в прайс-листах: value (копійки) і прайс з валютою.
право: product.view2 очк.
GET/product/{id}/units
Одиниці й упаковки товару (коробка = 12 шт.) для input_unit_id у позиціях.
право: product.view2 очк.
GET/product/remains/{id}
Залишки товару за складами.
право: product.view2 очк.
GET/product/deleted?since=…
Видалені записи: розділ Синхронізація.
право: product.view2 очк.

Усі поля

Обов’язкові name, sku (унікальний) і type. Теги й доп. поля описано в розділі Вкладені дані.

ПолеТипОбмеженняОпис
typeобов.рядокgoods | service, ≤ 20 симв.goods (товар) або service (послуга).
nameобов.рядок≤ 200 симв.Назва.
skuобов.рядок≤ 60 симв.Унікальний артикул, за ним синхронізуються товари.
attribute_nameрядок≤ 100 симв.Назва атрибута варіанта (напр. «Колір»).
attribute_valueрядок≤ 100 симв.Значення атрибута (напр. «Червоний»).
base_priceціле, копійки≤ 9999999999Базова ціна продажу, копійки валюти товару.
purchase_priceціле, копійки≤ 9999999999Ціна закупівлі, копійки.
store_category_idрядок≤ 60 симв.Id категорії в інтернет-магазині.
store_product_idрядок≤ 60 симв.Id товару в інтернет-магазині.
store_urlрядок≤ 255 симв.Посилання на товар у магазині.
image_file_ididФайл зображення.
weight_mgцілеВага одиниці в міліграмах (1 кг = 1 000 000).
volume_lчислоОб’єм одиниці, л.
storage_tempрядокany | ambient | cold, ≤ 10 симв.Умови зберігання: any, ambient (кімнатна), cold (холод).
planning_methodрядокnone | mrp | rop, ≤ 10 симв.Планування закупівель: none, mrp (від плану продажів), rop (точка дозамовлення).
lead_time_daysціле≤ 3650Термін поставки або виробництва, днів.
lot_size_ruleрядокlot | fixed | min_max, ≤ 10 симв.Розмір партії: lot (скільки треба), fixed (кратно fixed_lot_qty), min_max.
fixed_lot_qtyціле, ×1000Кратність партії, ×1000.
descriptionрядок≤ 10000 симв.Опис.
is_batch_trackedboolОблік партій.
is_serial_trackedboolОблік серійних номерів.
fractional_quantityboolДозволена дробова кількість (кг, м). Якщо ні, кількість кратна 1000.
outbound_strategyрядокfifo | fefo | manual, ≤ 10 симв.Списання партій: fifo, fefo (за терміном придатності), manual.
shelf_life_daysціле≤ 36500Термін придатності, днів.
min_stock_qtyчислоМінімальний залишок (точка дозамовлення), одиниць.
max_stock_qtyчислоМаксимальний залишок, одиниць.
external_idрядок≤ 100 симв.Ключ у вашій системі. Для товарів НЕ унікальний, тому ідентифікуйте товар за sku.
manufacturer_skuрядок≤ 100 симв.Артикул виробника.
kved_codeрядок≤ 20 симв.Код КВЕД послуги.
requires_actboolПослуга закривається актом.
requires_prepaymentboolПотрібна передоплата.
standard_durationцілеНормативна тривалість послуги, хвилини.
attribute_ididАтрибут варіанта (/lookup?type=prd_attr).
tax_ididСтавка ПДВ (/lookup?type=tax).
unit_ididОдиниця виміру (/lookup?type=unit).
currency_ididВалюта (/currency).
user_update_ididХто змінив останнім.
parent_ididБатьківський товар (для варіантів).
category_ididКатегорія (/product-category).
provider_ididОсновний постачальник (/account).
manufacturer_ididВиробник (/account).
finance_account_ididРахунок обліку (службове).
is_archivedboolВ архіві. Архівні записи приховує параметр is_archived=true.
is_adhocboolТехнічний товар під довільний рядок документа.
tagsмасив TagТеги: [{"id": 3}] або [{"name": "VIP"}]. Передані замінюють усі теги запису. Див. «Вкладені дані».
idлише читанняцілеІдентифікатор запису.
image_urlлише читаннярядокПосилання на зображення (лише у відповіді).
image_thumb_urlлише читаннярядокМініатюра (лише у відповіді).
weightлише читаннячислоВага в кілограмах (лише у відповіді, рахується з weight_mg).
created_by_idлише читанняidХто створив запис.
shop_idлише читанняidМагазин (філія), ставиться з профілю користувача.
created_atлише читаннядата-часЧас створення.
updated_atлише читаннядата-часЧас останньої зміни, на ньому будується інкрементальна синхронізація.
deleted_atлише читаннядата-часЧас видалення (у звичайних відповідях завжди null).
updated_userлише читанняоб’єкт UserХто змінив запис останнім.
subлише читаннярядокСлужбове поле, ігноруйте.
versionлише читанняцілеСлужбовий лічильник змін запису.

Вкладені масиви

  • product_extra_fields: пишеться в тілі POST/PUT, формат див. у розділі Вкладені дані.
  • entity_tags: звʼязки з тегами приходять лише у відповіді (з expand=EntityTags.Tag), а пишуться полем tags.
  • price_book: лише у відповіді (expand=PriceBook).
Повʼязані обʼєкти для ?expand= (12)

Без expand приходять як null; писати їх не можна, передавайте відповідне *_id.

Attribute → LookupTax → LookupUnit → LookupCurrency → CurrencyUserUpdate → UserCreatedBy → UserParent → ProductCategory → ProductCategoryProvider → AccountManufacturer → AccountShop → ShopFinanceAccount → FinanceAccount

Службові поля у відповіді, ігноруйте: PrimaryBarcode, Barcodes, OldProduct.

Приклади

Каталог для сайту: змінені товари з цінами

GET /api/v1/product
  ?filter[updated_at;gte]=2026-09-30 00:00:00
  &fields=id,sku,name,base_price,currency_id,updated_at
  &per-page=100

Знайти за артикулом

GET /api/v1/product?filter[sku;eq]=CH-93633&fields=id,name

Знайти за штрихкодом

GET /api/v1/product/search-by-barcode?barcode=4820000000017

Залишки всього каталогу одним запитом описано в розділі Залишки.