Зміни¶
2026-10-20¶
- Товари — нові
PUT /products/{id}іPUT /productsзмінюють лише передані поля: назву, опис, категорію, бренд, штрихкод, одиницю,extra(зливається з додатковими полями товару) іstockпо складах. Див. Зміна товарів. - Товари (несумісна зміна) —
POST /productsтепер лише створює:idу тілі —422, наявний товар із тим самимsku/barcode—409зdetails.product_id, а помилка в запиті не створює нічого. Раніше такий запит відповідав201і міг лишити товар без змін. Див. Створення товарів. POST /product_stock— приймаєcost_price;"price": 0тепер зберігається.updatedу відповіді — список id товарів.
2026-10-19¶
- Акції — у
stockтовару нове полеpromotion: акція, що діє на товар на складі, зокрема на додаткову ціну (price_type; ціна до й після акції, кінець акції).promotion_idу позиції продажу зараховує продаж до акції в HugeProfit;priceтакої позиції можна не передавати — ціну акції підставимо самі. Нові коди помилокpromotion_*. Див. Продаж за акцією. - Товари — ціна акції в
sale_priceтепер із двома знаками після коми ("5.40", а не"5.4"). - Продажі — усі поля запиту
POST/PUT /salesтепер описані в одному блоці;PUTзамінює продаж повністю. Див. Sales.
2026-10-17¶
- Кур'єрська доставка (Нова Пошта) —
deliveryпродажу приймає адресу для кур'єра (settlement_ref,street,house,flat), аPOST /sales/{id}/waybillвідправляє посилку до дверей. Нові довідникиGET /delivery/settlementsіGET /delivery/streets. Див. Доставка.
2026-10-16¶
- ТТН Нової Пошти — новий
POST /sales/{id}/waybillстворює ТТН через підключений акаунт Нової Пошти (накладений платіж, оголошена вартість, платник, розміри посилки) і зберігає її номер у продажі; нове правоdelivery:write. Див. ТТН Нової Пошти. - Продажі — нове поле
deliveryзберігає разом із продажем адресу клієнта у відділенні Нової Пошти; описаноclient_delivery_id,delivery_infoіtracking_number. Див. Sales. - Довідник —
carrier_accountsНової Пошти містятьsenders. Див. Reference. - Безпечний повтор
POST /sales— нове полеexternal_id(ваш номер замовлення): повтор із тим самим номером не створює другий продаж, а відповідає409зdetails.sale_id; фільтрGET /sales?external_id=; номер є в об'єкті продажу й у вебхукахorder_*. Див. Безпечний повтор запиту. - Продажі —
amountбільше не обов'язковий і рахується з позицій; переданий має збігатися із сумою позицій, інакше422зdetails.expected.sale_amountза замовчуванням —amountмінус знижка (раніше знижка не віднімалася). Нечислові або завеликі суми, кількості й знижки —422(раніше500або тихий нуль). Нестача залишку —422зdetails.shortages. - Виправлено —
PUT /salesповертає новийidпродажу (редагування створює продаж під новимid), а не старий. - Опитування змін — фільтри
updated_from/updated_toуGET /salesі/query;after_idпродовжує список після останнього отриманого продажу. Див. Продажі. - Вебхуки —
order_updateтепер приходить і на зміну статусу (зокрема від відстеження доставки), і на додану ТТН; уdataєstatus,tracking_number,external_id,previous_status,previous_id. Див. Вебхуки. - Наклейка ТТН — новий
GET /sales/{id}/waybill/labelповертає PDF. Див. Наклейка ТТН. - Товари — фільтри
skuіbarcode(до 500 значень через кому) уGET /productsі/query. - Доставка —
GET /delivery/warehouses: точний фільтрnumber, сортування за номером,limitдо 500. - Помилки — помилки, що раніше мали
codeна кшталтNotCorrectInstockError, тепер мають стабільні коди з таблиці: відхилена операція —422 validation_error, вичерпаний ліміт тарифу — новий403 limit_exceeded.
2026-10-07¶
- Ліміт запитів — кожен ключ може робити 120 запитів на хвилину; відповіді містять заголовки
X-RateLimit-*, а понад ліміт API відповідає429зRetry-After. Див. Ліміт запитів.
2026-10-06¶
- Поставки — новий список
payments: усі оплати за товар із датою, зокрема відкладені та часткові. Див. Shipments. - Витрати — новий фільтр
shipment_idуGET /expensesі в/query; без дат повертає всі оплати поставки незалежно від дати. Див. Expenses. - Товари —
typeтепер повертає такожbundleіservice(раніше вони приходили якsimple); комплекти містять склад уbundle_items; новийGET /products/{id}/similar; URL зображень закінчуються версією?c=, яка змінюється при заміні фото. Див. Products. - Замовлення —
GET /orders/{id}повертаєtracking_numberіsale_status; новийPUT /orders/{id}скасовує замовлення, створене цим самим ключем (знімаючи резерв), або задає йогоorder_text. Див. Orders. - Доставка — пошук міст і відділень Нової Пошти та Meest:
GET /delivery/cities,GET /delivery/warehouses. Див. Delivery. - Довідник — нова секція
carrier_accounts: підключені служби доставки, їхнійid— цеaccount_idдля пошуку Meest. Див. Reference. - Медіа — хостинг зображень:
POST /mediaзавантажує зображення й повертає публічні посилання,GET /media— файли акаунта. Див. Media. - Виробництво — новий
POST /productions/{id}/runзапускає рецепт: списує компоненти, оприбутковує результати, записує витрати. Див. Запуск рецепта. - Списання — новий
POST /write_offsсписує товар зі складу одним викликом; категорії — уwrite_off_categoriesз/reference. Див. Write-offs. - Виправлено — залишки, змінені через
POST /product_stock, тепер доходять до підключених маркетплейсів.
2026-10-05¶
- Вебхуки —
urlмає вказувати на публічнийhttp(s)-хост: localhost і адреси приватних мереж відхиляються з422(зокрема в/webhooks/test), редиректи більше не виконуються. Див. Підписки.
2026-09-30¶
- Клієнти — пошук за телефоном у
GET /clientsі в/query:phoneтепер збігається з повним номером у будь-якому записі (380671234567,0671234567,+38 (067) 123-45-67), а новий фільтрphone_containsзнаходить клієнтів, у номері яких є вказані цифри (щонайменше 3). Див. Clients.
2026-09-17¶
- Клієнти — новий фільтр
with_chats=telegramуGET /clients,GET /clients/{id}і в/query: вбудовує чати клієнта в месенджерах масивомchats(type,integration_id,chat_id). Див. Clients.
v2.0 — перший реліз¶
Публічний API v2 запускається паралельно з v1 (/bapi), який продовжує працювати без змін.
- Чиста, стабільна схема — впорядковані назви полів, один конверт відповіді, вкладені
items. - Ресурси — reference, склади, постачальники, товари (+ залишки, синк), категорії, клієнти (+ теги), продажі, замовлення з маркетплейсів, поставки, витрати, виробництво.
- Composite
/query— кілька ресурсів одним викликом, з?include=на кожному ресурсі. - Нативні вебхуки — надійна черга доставки, HMAC-підписи, ретраї з backoff, журнал доставок
і синхронний
/webhooks/test. - Хешовані API-ключі зі scopes; інтроспекція через
GET /me.
Ще не доступно
Запуск виробництва (списання зі складу) поки не доступний через API — рецепти можна створювати й читати, але не виконувати.