Здесь показаны различия между двумя версиями данной страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
|
api_передача_заказов [2015/10/21 15:51] Максим |
api_передача_заказов [2017/06/05 11:18] (текущий) Алексей |
||
|---|---|---|---|
| Строка 6: | Строка 6: | ||
| Для обмена данными с API Qnits используется формат JSON. | Для обмена данными с API Qnits используется формат JSON. | ||
| - | Запросы в формате JSON передаются методом HTTP POST на следующий адрес: | + | Запросы в формате JSON передаются методом HTTP POST на следующий адрес: |
| - | http://ваш_домен/api | + | [[http://api.qnits.ru/api|http://api.qnits.ru/api]] либо [[http://ваш_домен/api|http://ваш_домен/api]] |
| Строка 17: | Строка 17: | ||
| * ключ params - список параметров для вызываемого метода | * ключ params - список параметров для вызываемого метода | ||
| - | Параметры qnit_id и token можно узнать в менеджер панели по адресу [http://panel.qnits.ru/manager_mvc/settings/api http://panel.qnits.ru/manager_mvc/settings/api] | + | Параметры qnit_id и token можно узнать в менеджер панели по адресу |
| + | [[http://panel.qnits.ru/manager_mvc/settings/api|http://panel.qnits.ru/manager_mvc/settings/api]] | ||
| Строка 23: | Строка 24: | ||
| Используется для передачи заказов в Qnits. | Используется для передачи заказов в Qnits. | ||
| - | |||
| Пример запроса | Пример запроса | ||
| - | ''{ | + | ''{ "token": "541c4a59bdad87039c7ae8df6af14785сaf7526f01a613f5bd894d615ee811e5", "qnit_id": 1, "method": "CreateOrder", "params": { "name": "Иванов Иван", "phone": "79123211232", "external_id": "2643", <nowiki>"products": [</nowiki> { "id": 1000587, "quantity": 1, }, { "id": 3044, "quantity": 2 } ] } }'' |
| + | === Параметры === | ||
| - | "token": "541c4a59bdad87039c7ae8df6af14785сaf7526f01a613f5bd894d615ee811e5", | + | Параметры метода передаются в массиве '''params'''. Параметры, помеченные звездочкой* обязательны, остальные можно не передавать. |
| - | "qnit_id": 1, | + | |Ключ |Тип |Описание ||| |
| + | |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 | | ||
| - | "method": "CreateOrder", | ||
| - | "params": { | + | В ответ на запрос сервер вернёт: |
| - | "name": "Иванов Иван", | + | |Код |Описание ||| |
| - | + | |201 |Заказ успешно создан, в ответе будет JSON массив со следующими полями: ||| | |
| - | "phone": "79123211232", | + | |::: | Ключ |Тип |Описание | |
| - | + | |::: | status |Строка |статус создания «Ок» | | |
| - | "external_id": "2643", | + | |::: | order_id |Число |Номер созданного заказа | |
| - | + | |::: | order_url |Строка |ссылка на заказ на витрине платформы, по данной ссылке можно делать редирект для клиента, чтобы он мог выбрать способ оплаты или ознакомиться с заказом | | |
| - | <nowiki>"products": [</nowiki> | + | |400 |Ошибка во вводных данных, в ответе будет JSON массив со следующими полями: ||| |
| - | + | |::: | Ключ |Тип |Описание | | |
| - | { | + | |::: | status |Строка |статус создания, «ERROR» | |
| - | + | |::: | errors |Массив |массив ошибок в формате JSON | | |
| - | "id": 1000587, | + | |
| - | + | ||
| - | "quantity": 1, | + | |
| - | + | ||
| - | }, | + | |
| - | + | ||
| - | { | + | |
| - | + | ||
| - | "id": 3044, | + | |
| - | + | ||
| - | "quantity": 2 | + | |
| - | + | ||
| - | } | + | |
| - | + | ||
| - | ] | + | |
| - | + | ||
| - | } | + | |
| - | + | ||
| - | }'' | + | |
| - | + | ||
| - | + | ||
| - | === Параметры === | + | |
| - | + | ||
| - | Параметры метода передаются в массиве '''params'''. Параметры, помеченные звездочкой* обязательны, остальные можно не передавать. | + | |
| - | {{:pasted:20151021-154906.png}} | + | \\ |
| - | В ответ на запрос сервер вернет ответ: | ||
| - | {{:pasted:20151021-154824.png}} | ||