====== API передачи заказов Qnits ====== ===== Основная информация ===== Для обмена данными с API Qnits используется формат JSON. Запросы в формате JSON передаются методом HTTP POST на следующий адрес: [[http://api.qnits.ru/api|http://api.qnits.ru/api]] либо [[http://ваш_домен/api|http://ваш_домен/api]] Запрос всегда содержит: * ключ method с именем вызываемого метода * ключ qnit_id с номером витрины * ключ token - авторизационный токен * ключ params - список параметров для вызываемого метода Параметры qnit_id и token можно узнать в менеджер панели по адресу [[http://panel.qnits.ru/manager_mvc/settings/api|http://panel.qnits.ru/manager_mvc/settings/api]] ==== Метод "CreateOrder" ==== Используется для передачи заказов в Qnits. Пример запроса ''{ "token": "541c4a59bdad87039c7ae8df6af14785сaf7526f01a613f5bd894d615ee811e5", "qnit_id": 1, "method": "CreateOrder", "params": { "name": "Иванов Иван", "phone": "79123211232", "external_id": "2643", "products": [ { "id": 1000587, "quantity": 1, }, { "id": 3044, "quantity": 2 } ] } }'' === Параметры === Параметры метода передаются в массиве '''params'''. Параметры, помеченные звездочкой* обязательны, остальные можно не передавать. |Ключ |Тип |Описание ||| |name* |Строка |Имя клиента в свободной форме ||| |phone* |Строка |Номер телефона клиента в свободной форме ||| |external_id* |Строка |Идентификатор заказа на внешней витрине, необходим для защиты от дублирования заказов. Если вы не храните на внешней витрине заказы, то можно передавать в данный параметр текущие дату+время ||| |products* | Массив | Массив списка товаров для заказа состоит из списка объектов с полями ||| |::: |::: | Ключ |Тип |Описание | |::: |::: | id* |Число |Артикул товара можно узнать в библиотеке товаров | |::: |::: | quantity* |Число |Количество товаров в заказе | |::: |::: | price |Число | \\ Желаемая цена товара \\ \\ ​ \\ Если не передана или передан ноль/пустое значение, то устанавливается текущая розничная цена по платформе + доп. наценка витрины \\ \\ ​Может быть выше текущей розничной цены по платформе соответственно партнерский бонус с продажи будет выше \\ \\ Может быть ниже текущей розничной цены по платформе, за счет партнерского бонуса. Но не ниже уровня, при котором бонус равен нулю. | |::: |::: |name |Строка |Название товара в вашем магазине | |address |Строка |Адрес клиента в свободной форме ||| |secondaryPhone |Строка |Дополнительный телефон клиента, на случай если первый телефон не доступен ||| |email |Строка |Email клиента ||| |comments |Строка |Комментарий(Виден клиенту) ||| |clientIpAddress | Строка| ip адрес клиента в формате ipv4\\ \\ Осторожно используйте данный параметр — если переданный адрес не будет принадлежать клиенту, заказ может быть определен как подозрительный ||| |utmParams | Массив| Массив UTM меток ||| |::: |::: | Ключ | Тип | Описание | |::: |::: | utm_cid | Строка | субаккаунт | |::: |::: | utm_source | Строка | Метка utm_source | |::: |::: | utm_medium | Строка | Метка utm_medium | |::: |::: | utm_campaign | Строка | Метка utm_campaign | |::: |::: | utm_content | Строка | Метка utm_content | |::: |::: | utm_term | Строка | Метка utm_term | В ответ на запрос сервер вернёт: |Код |Описание ||| |201 |Заказ успешно создан, в ответе будет JSON массив со следующими полями: ||| |::: | Ключ |Тип |Описание | |::: | status |Строка |статус создания «Ок» | |::: | order_id |Число |Номер созданного заказа | |::: | order_url |Строка |ссылка на заказ на витрине платформы, по данной ссылке можно делать редирект для клиента, чтобы он мог выбрать способ оплаты или ознакомиться с заказом | |400 |Ошибка во вводных данных, в ответе будет JSON массив со следующими полями: ||| |::: | Ключ |Тип |Описание | |::: | status |Строка |статус создания, «ERROR» | |::: | errors |Массив |массив ошибок в формате JSON | \\