Интеграция по API
Интеграция по API позволяет получать заказы из внешних систем в Controlata.
Настройка интеграции по API требует технических знаний в области программирования и опыта работы с API-интерфейсами.
Если вы не являетесь разработчиком, вам потребуется помощь технического специалиста для реализации интеграции.
Интеграция подразумевает написание программного кода, который будет взаимодействовать с API Controlata согласно
документации ниже.
Перейдите в настройки Controlata, найдите блок "Интеграции" и нажмите "Подключить" напротив "Общее API".
- Ключ API понадобится для авторизации запросов.
- Префикс для номеров заказов будет добавлен в начало всех заказов, которые придут через API.
- Склад продуктов - это тот склад, с которого будут списаны продукты для заказа.
Запрос должен быть отправлен методом POST в формате JSON. Ключ API должен быть отправлен в теле запроса в поле key.
Адрес для отправки запросов:
- https://api.controlata.ru/connect/general/new_order.php
Обязательные параметры запроса:
- key — ключ API
- name — имя покупателя
- num - номер заказа
- products — массив продуктов, каждый продукт представлен в виде объекта с параметрами:
- sku — должен соответствовать sku из карточки продукта в Controlata
- amount — количество
- sum — сумма (цена * количество)
Опциональные параметры запроса:
- email - электронная почта покупателя
- phone - телефон покупателя
- address - адрес покупателя
- delivery_price - стоимость доставки
- discount - скидка
- notes - заметки
- production - если true, то под заказ будет создано отдельное производство, если false или отсутствует, то продукты
будут списаны со склада
Ответ будет возвращен также в формате JSON, и будет содержать следующие параметры:
- success - true / false
- num - номер заказа
- error - ошибка, если она случилась
Сопоставление продуктов происходит по полю SKU. Если продукт с соответствующим SKU не найден в системе, он не будет
добавлен в заказ, но это не приведет к ошибке. В заметки к заказу будет добавлено примечание, какой продукт был не
сопоставлен. Но если ни один продукт из заказа не будет сопоставлен, то это приведет к ошибке и такой заказ не будет
создан.
Пример запроса:
{
"key": "45c939581f5f6d2c0d21",
"num": "1237",
"name": "Fedor",
"email": "hi@controlata.ru",
"phone": "89121234567",
"address": "Volgina 3",
"delivery_price": 500,
"discount": "100",
"notes": "Test notes",
"production": false,
"products": [
{
"sku": "A001",
"amount": 2,
"sum": 1800
},
{
"sku": "A002",
"amount": 1,
"sum": 1000
}
]
}
Пример успешного ответа:
{
"success": true,
"num": "A-1237"
}
Пример ответа с ошибкой:
{
"success": false,
"error": "No products in input"
}