Коротка відповідь: Хорошоп API це JSON-інтерфейс, який працює на домені вашого магазину за адресою https://ваш-домен/api/ і дає змогу зовнішнім програмам читати й змінювати товари, замовлення, клієнтів, категорії та комплекти. За сторінкою тарифів horoshop.ua, API доступне з тарифу Pro, а на B2B до нього додається B2B API для груп покупців і рівнів цін. Для підключення в адмінці створюють окремого користувача, від імені якого програма отримує токен.
Більшості магазинів писати код під API не доводиться: CRM, облікові системи й сервіси доставки мають готові інтеграції, які налаштовуються без власного коду. Самостійна робота з ним потрібна, коли готового рішення немає, наприклад для власної синхронізації з постачальниками чи нестандартної аналітики. Нижче розібрано, що в API є, і як ним користуються на практиці.
Швидкий старт: як почати працювати з Horoshop API
- Перевірте тариф і модуль API. API є в тарифах Pro і B2B (сторінка тарифів horoshop.ua). Окремого перемикача в адмінці немає: якщо будь-який запит повертає 409 «Api module is not available», модуль у магазині вимкнений, і ввімкнути його може тільки підтримка Хорошоп (чат в адмінці або support@horoshop.ua). Усі типові помилки розібрано в статті помилки Хорошоп API.
- Створіть користувача для API: Налаштування → Адміни. Запам’ятайте поле «Логін». Для авторизації через API потрібен саме логін, а не email: в адмінку Хорошоп пускає і за email, а /api/auth/ відповідає, що користувача не знайдено.
- Отримайте токен. Надішліть POST-запит із заголовком Content-Type: application/json на адресу https://ваш-домен/api/auth/. Токен має 32 символи і живе 600 секунд.
- Викличте функцію. Токен передають у тілі кожного наступного запиту. Нижче приклад експорту каталогу: функція повертає ціни, залишки й артикул для показу на вітрині.
Авторизація: curl -X POST https://ваш-домен/api/auth/ -H 'Content-Type: application/json' -d '{"login":"api","password":"ваш-пароль"}'
Успішна відповідь має вигляд {"status":"OK","response":{"token":"3199c39700714eec4f6ada0b4242335b"}}. Якщо логін або пароль неправильні, status буде ERROR, а причина в response.message.
Експорт каталогу: curl -X POST https://ваш-домен/api/catalog/export/ -H 'Content-Type: application/json' -d '{"token":"ВАШ_ТОКЕН","offset":0,"limit":500}'
У відповіді масив товарів лежить у response.products. Один запит повертає не більше 500 товарів, тому великий каталог читають сторінками: збільшуйте offset на 500, поки не прийде статус EMPTY. Для вибірки офіційна документація описує параметри expr (розділ, артикул), includedParams і excludedParams. Для інтеграції з обліком дивіться також статтю про інтеграцію Хорошоп з 1С.
Які дані можна передавати через Хорошоп API?
Офіційна документація Хорошоп API ділить функції на кілька розділів. Ось що в них є станом на жовтень 2026 року:
| Розділ | Що можна зробити | Типова задача |
|---|---|---|
| Каталог товарів | Імпорт товарів, експорт товарів, експорт стікерів та іконок | Оновити ціни й залишки з прайсу постачальника або облікової системи |
| Замовлення | Отримати список замовлень, отримати статуси, оновити замовлення | Передавати замовлення в CRM і повертати статуси на сайт |
| Користувачі | Імпорт користувачів, експорт активних користувачів | Синхронізувати базу клієнтів із CRM або розсилкою |
| Сторінки (категорії) | Експорт категорій | Зіставити структуру каталогу з обліковою системою |
| Комплекти товарів | Імпорт і видалення комплектів | Масово створити набори товарів |
| Валюти, доставка, оплата | Довідники валют, варіантів доставки й оплати | Правильно зіставити способи доставки й оплати в CRM |
| Хорошоп B2B | Експорт груп покупців, рівнів цін, дані дропшипінгу в замовленнях | Інтеграція гуртових і дилерських цін, обробка дроп-замовлень |
Окремо є вебхуки, про них нижче. Повний перелік параметрів кожної функції, приклади запитів і можливі помилки описані в документації, посилання на неї є в довідці Хорошоп і в кінці статті.
Як працює запит до API: логін, токен, відповідь
- Створіть користувача для API в адмінці: Налаштування → Адміни. Логін і пароль цього користувача програма використовує для входу. Краще окремий користувач на кожну інтеграцію, щоб за потреби вимкнути одну, не чіпаючи решту.
- Отримайте токен. Програма надсилає логін і пароль на адресу https://ваш-домен/api/auth/ і отримує токен довжиною 32 символи. За документацією, токен живе 600 секунд, тож довгі синхронізації мають уміти оновлювати його.
- Викликайте функції. Кожен запит іде на адресу https://ваш-домен/api/назва-функції/ і містить токен. Хорошоп наполегливо радить JSON POST із заголовком Content-type: application/json і кодуванням UTF-8 без BOM. Приклади GET-запитів із документації прибрали як небезпечні, бо їх можна перехопити.
- Розберіть відповідь. Вона завжди у форматі JSON із полем status: OK означає успіх, EMPTY немає даних (наприклад, сторінки експорту скінчилися), UNAUTHORIZED потрібна повторна авторизація, ERROR чи HTTP_ERROR помилка з поясненням у response.message.
Що таке вебхуки Хорошоп і навіщо вони?
Вебхук це повідомлення, яке Хорошоп сам надсилає на адресу вашої системи, коли на сайті щось сталося. Без нього CRM мусила б щохвилини питати «чи є нові замовлення», навантажуючи і свій сервер, і сайт. За документацією, підписатися можна на такі події:
- оформлення замовлення (order_created) і зміна його статусу (order_update);
- зміна статусу оплати замовлення (order_paid);
- реєстрація користувача (user_signup) і зміна його даних (user_update);
- запит зворотного дзвінка (request_call_me);
- новий коментар на сайті (comments_created).
Дві деталі, які варто знати розробнику. Черга вебхуків відправляється планувальником раз на 5 хвилин, тому затримка в кілька хвилин нормальна. Якщо ваша система відповіла кодом, відмінним від 2xx, Хорошоп повторить спробу приблизно через 10 хвилин, до 10 разів. Події про зміну статусу замовлення і даних клієнта, за журналом оновлень API, з’явилися в грудні 2025 року, про новий коментар у лютому 2026.
Коли магазину справді потрібне API, а коли досить готової інтеграції?
- CRM і облік. Якщо ваша CRM є на сторінці інтеграцій Хорошоп, підключайте її готову інтеграцію: її підтримує розробник CRM. Огляд таких систем є у статті яку CRM підключити до Хорошоп, а про облік у статті про інтеграцію з 1С.
- Прайси постачальників. Якщо постачальників кілька і їхні файли треба оновлювати щодня, часто вистачає вбудованого імпорту з функцією «Постачальник». API потрібне, коли оновлення має йти автоматично за розкладом. Схему розібрано в статті про дропшипінг на Хорошоп.
- Прості передачі даних. Нове замовлення в Google Таблицю чи новий клієнт у розсилку зручніше зробити через Zapier без коду.
- Власна аналітика й нестандартні задачі. Тут API і є правильним інструментом, але закладіть бюджет на розробника і на підтримку інтеграції після оновлень.
Як widgetis використовує Хорошоп API
Більшості віджетів widgetis доступ до API не потрібен: вони працюють через один рядок скрипта на сайті. API ми підключаємо лише для віджетів, яким потрібен точний каталог магазину, і лише коли власник магазину сам дає логін і пароль окремого користувача. Пароль зберігається у зашифрованому вигляді. Ми тільки читаємо дані: викликаємо авторизацію, експорт товарів і експорт користувачів, і нічого не записуємо в магазин.
- Експорт товарів щоночі оновлює ціни, наявність і артикули товарів у нашій копії каталогу. Для віджета 1+1=3 з активною акцією каталог додатково оновлюється чотири рази на день, щоб товар, який розпродали вдень, перестав потрапляти в подарунок за кілька годин, а не наступного дня. Рекомендації в кошику теж беруть з API свіжу ціну й наявність, щоб не пропонувати те, чого вже немає.
- Експорт користувачів потрібен 1+1=3, щоб покупці з окремих груп цін, наприклад гуртові чи дропшипери, не отримували товар у подарунок.
Два спостереження з нашої практики, які стануть у пригоді розробнику. Один запит експорту каталогу повертає до 500 товарів, тому великий каталог читається десятками запитів. Хорошоп обмежує кількість запитів за годину і на перевищення відповідає помилкою з кодом 429 у тілі відповіді, тож синхронізація має вміти чекати й продовжувати з того самого місця.
Доступ до API це ключ від даних магазину. Давайте його окремому користувачу під конкретну інтеграцію і лише тим, хто пояснив, що саме читатиме і що записуватиме.Подивитися віджети для середнього чека
Часті питання
Що таке Horoshop API?
Horoshop API (Хорошоп API) це JSON-інтерфейс на домені вашого магазину, адреса https://ваш-домен/api/. Через нього зовнішня програма читає й змінює товари, замовлення, клієнтів і категорії, а вебхуки повідомляють про нові події. Усі запити надсилають POST із токеном, який видає функція /api/auth/.
На якому тарифі доступне API Хорошоп?
За офіційною сторінкою тарифів horoshop.ua, API доступне в тарифах Pro і B2B. На B2B додатково є B2B API з експортом груп покупців і рівнів цін для гуртової торгівлі. На Basic і Standard API у переліку функцій немає, тому перед вибором інтеграції уточніть у її розробника, чи працює вона на вашому тарифі.
Де знайти документацію Хорошоп API?
Офіційна документація опублікована на сторінці horoshop.notion.site/api-doc, посилання на неї є в довідковому центрі Хорошоп і на сторінці інтеграцій. Українська версія вважається основною. Питання щодо API Хорошоп просить ставити в чаті в адмінці сайту або на support@horoshop.ua.
Як отримати токен Хорошоп API?
Створіть користувача в Налаштування → Адміни, потім надішліть його логін (не email) і пароль POST-запитом на https://ваш-домен/api/auth/. У відповіді в полі response.token прийде токен на 32 символи, який передають у кожному наступному запиті. Токен діє 600 секунд, після чого авторизацію повторюють. Якщо замість токена приходить 409, див. [помилки Хорошоп API](/blog/horoshop-api-pomylky).
Чи можна отримувати нові замовлення з Хорошоп без постійних запитів?
Так, для цього є вебхуки. Ваша система підписується на подію, наприклад оформлення замовлення або зміну статусу оплати, і Хорошоп сам надсилає дані на її адресу. Черга вебхуків відправляється раз на 5 хвилин, а при помилці на вашому боці Хорошоп повторює спробу до 10 разів.