Документация

Полная информация для оперативного решения ваших вопросов

API для магазина

1С передает в Гутакс

  • Каталог товаров с разделами
  • Актуальные остатки

Гутакс отправляет запросы

  • Расчет цены
  • Создание заказа
  • Информация по заказу

1. Вы отправляете в Гутакс список товаров и разделов:

Для первой загрузки и для обновления разделов/товаров. Всегда отправляете к нам весь каталог всех разделов и товаров (и доступных к продаже, и временно отсутствующих).

POST {url нашего сервера}/.../домен_арендатора/ид_поставщика/menuList/ POST {{exchangeApiUrl}}//tenants//shop/ HEADERS

X-AccessToken: {Секретный ключ}

Тело запроса

{ "categories":[
{
"id":"5af86d5a-d92d-4e07-9271-aea0f7ef95a6″,
"parentId":"4k6j6d5a-6927-4e07-9271-aea0f7ef95g8″, // 2-уровня вложенности
"name":"Супы",
"image":"https://mirs.com/uploads/categories/03f4fc5c-388e-11e6-9ece-0025907ad560.jpg",
"visibility":1
},
{
"id":"5af86d5a-d92d-4e07-9271-aea0f7ef95a6″,
"parentId":null, // null или пусто
"name":"Супы",
"image":"http://example.com/",
"visibility":0
}
],
"items":[
{
"id":"e6709e9a-d3ab-4d1e-aa69-7ce30073cbc9″,
"categoryIds":["fa494dc1-2578-4adb-a8fa-e270de8c3d28","fa494dc1-2578-4adb-a8fa-e270de8c3d28″],
"name":"Вареники с творогом и вишней",
"description":"Мука, вода, яичный порошок, вишня замороженная, творог 5%",
"modifiers":[
{
"id":"9987c815-3069-46ad-9626-74799fb22210″,
"name":"Обычный",
"measure":"666 гр",
"price_discount":1000.50,
"price":1200.50,
"stock":20 // 0 — значит отсутствует
}
],
"image":«http://example.com"
}
]
}

В ответ вернем

{ «code»: 0, «info»: «OK», «result»: null }

Или ошибку

{ «code»: 1, «info»: «Error», «result»: {} }

Варианты ошибок

  • 403 — ошибка доступ запрещен, ключ не правильный

2. Вы отправляете в Гутакс лист стоп товаров:

POST {url нашего сервера}/домен_арендатора/ид_поставщика/stopList/
POST {{exchangeApiUrl}}//tenants//shop/
HEADERS
X-AccessToken: {Секретный ключ}

Тело запроса

{
"itemId":[
{
"itemId":"eff0cec0-058c-4d53-b524-1c04ac24fb51″,
"modifiers":[
{
"modifierId":"32r3ffdd-058c-4d53-b524-1c04ac24fb51″,
"Stock":10 // появился в продаже снова
},
{
"modifierId":"32r3ffdd-058c-4d53-b524-1c04ac24fb51″,
"stock":0 // 0 — значит отсутствует
}
],
},
{
"itemId":"eff0cec0-058c-4d53-b524-1c04ac24fb51″,
"modifiers":[
{
"modifierId":"32r3ffdd-058c-4d53-b524-1c04ac24fb51″,
"Stock":10
},
{
"modifierId":"32r3ffdd-058c-4d53-b524-1c04ac24fb51″,
"stock«:0
}
}
]
}
]
}

В ответ вернем

{ «code»: 0, «info»: «OK», «result»: null }

Или ошибку

{ «code»: 1, «info»: «Error», «result»: {} }

  • 403 — ошибка доступ запрещен, ключ не правильный

3. Запрос расчета цены. Гутакс шлет к вам запрос расчета цены

POST-запрос {url вашего сервера}/calcOrder
HEADERS
X-AccessToken: {Секретный ключ}

Тело запроса

{
"cityId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ваш ИД филиала или города
"pointId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ваш ИД адреса
"deliveryInfo":{
"clientName":"Иванов Иван Иванович",
"phoneNumber":"79031111111″,
"deliveryType":"delivery", //pickup
"timeToOrder":{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // или null
"date":"17.03.2021″, // или null если заказ на сегодня
"value":"11:00 — 11:15″ // или null если заказ на ближайшее время
},
"deliveryAddress":{
"address":"Тишинский район, улица Тверская, 1стр4″, // данные с карты
"porch":"2″,
"floor":"6″,
"apartment":"4567″,
"domofon":1, // 1- есть домофон, 0 — нет
"latitude":"55.756994″,
"longitude":"37.614006″
}
},
"items":[
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ваш ИД товара
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ваш ИД модификатора
"quantity":3,
"selectedByUser":1 // или 0
}
],
"persons":2, // приборы
"bonus":200,
"promocode":"937c57″
}

Особенность

Первый запрос или клиент меняет дату

"timeToOrder":{
"id":null,
"date":null, // null если заказ на сегодня
"value":null // или null если заказ на ближайшее время
},

Далее получаем от вас список интервалов и передаем в расчет или заказ конкретный интервал

"timeToOrder":{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // или null если от вас его не получили
"date":"17.03.2021″, // конкретная дата
"value":"11:00 — 11:15″ // выбранный пользователем диапазон
},

Получаем в ответ

{
«code»: 0,
«info»: «OK»,
«result»: {
"cityId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"pointId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"items":[
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"name":"Вареники с творогом и вишней",
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"measure":"666 гр",
"price_discont":null, // скидок нет
"price":100.50, // итого за кол-во без скидки
"quantity":1,
"promo":0, // маркер наличия скидки, скидок нет
"selectedByUser":1 // 0 или 1
}
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"name":"Вареники",
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"measure":"666 гр",
"price_discont":200, // итого за кол-во со скидкой
"price":1200, // итого за кол-во без скидки
"quantity":3, //кол-во
"promo":1, // маркер наличия скидки
"selectedByUser":0 // 0 или 1
}
],
"itemsCost_discount":650.50, // итого за корзину со скидкой
"itemsCost":1200.50, // итого за корзину без скидки
"deliveryFee":50, // стоимость доставки
"useBonus":70, // сколько система позволяет списать бонусов
"totalCost":630.50, // итого к оплате
"comment_order":"5 бесплатных наборов. Закажи ещё на 100 руб и получи скидку. Скидка за день рождения",
"timeToOrder":[
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // можно null если у вас нет id
"date":"17.03.2021″,
"value":"11:00 — 11:15″
},
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // можно null если у вас нет id
"date":"17.03.2021″,
"value":"11:00 — 11:15″
},
]
}

4. Создание заказа

POST-запрос {url вашего сервера}/createOrder
HEADERS
X-AccessToken: {Секретный ключ}

Тело запроса

{
"cityId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // филиал, город
"pointId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // точка или ресторан
"deliveryInfo":{
"clientName":"Иванов Иван Иванович", // может быть пустым
"phoneNumber":"79031111111″, //обязательно
"deliveryType":"delivery", // delivery или pickup
"timeToOrder":{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // null, если не получили id от вас
"date":"17.03.2021″, // или null, если заказ на сегодня
"value":"11:00 — 11:15″ // или null, если заказ на ближайшее время
},
"deliveryAddress":{
"full":"Москва, улица Тверская, дом 1 строение 4″, // Название места, город, улица, сроение, дом
"porch":"2″, // подъезд
"floor":"6″, // этаж
"apartment":"4567″, // квартира или офис
"domofon":1, // 1- есть домофон, 0 — нет
"latitude":"55.756994″,
"longitude":"37.614006″
}
},
"paymentInfo":{
"paymentType":"CARD", // CASH , TERMINAL, CORP, CARD
"panCard":"4276****1234″, // Зашифрованный код карты если paymentType=CARD
"paymentStatus":"Payed", // Payed — предоплата, Payment_upon_delivery — оплата при получении
"change":1000, // с какой суммы сдача или null
"bonusAmount":100 // кол-во бонусов для списания
},
"items":[
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ИД товара
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ИД модификатора или null
"quantity":3, // кол-во товара
"selectedByUser":1 // 0 или 1
},
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″, // ИД товара
"modificationId":null, // ИД модификатора или null — когда нет мобификаторов
"quantity":1, // кол-во товара
"selectedByUser":0 // 0 или 1
}
],
"persons":2, // кол-во приборов
"comment":"Дополнительная информация о заказе: ...", // комментарий к заказу
"promocode":"937c57″ // промокод к заказу
}

Получаем в ответ

{
«code»: 0,
«info»: «OK»,
«result»: {
"orderId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"stateId":"1«
}

  • 403 — ошибка доступ запрещен, ключ не правильный
  • 500 — ошибка, не могу принять заказ, время доставки не корректное и расшифровка в Info деталей ошибки

Если

stateId Описание статуса Статус Гутакс
1 Новый заказ, только что создан Не меняем статус в Гутаксе
2 Заказ принят в работу, начали готовить (собирать заказ) Не меняем статус в Гутаксе
3 Заказ готов, ждет курьера Не меняем статус в Гутаксе
4 Заказ готов, ждет самовывоз Не меняем статус в Гутаксе
5 Выполняется доставка Не меняем статус в Гутаксе
6 Заказ выполнен, оплачен 37
7 Заказ отменен 51

5. Получить статус заказа

GET-запрос {url вашего сервера}/getOrderInfo/orderId/
HEADERS
X-AccessToken: {Секретный ключ}

Получаем в ответ

{
«code»: 0,
«info»: «OK»,
«result»: {
"orderId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"stateId":"1″,
"items":[
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"name":"Вареники с творогом и вишней",
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"measure":"666 гр",
"price_discont":null, // скидок нет
"price":100.50, // итого за кол-во без скидки
"quantity":1,
"promo":0, // маркер наличия скидки, скидок нет
"selectedByUser":1 // 0 или 1
}
{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"name":"Вареники",
"modificationId":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"measure":"666 гр",
"price_discont":200, // итого за кол-во со скидкой
"price":1200, // итого за кол-во без скидки
"quantity":3, //кол-во
"promo":1 // маркер наличия скидки
"selectedByUser":0 // 0 или 1
}
],
"itemsCost_discount":650.50, // итого за корзину со скидкой
"itemsCost":1200.50, // итого за корзину без скидки
"deliveryFee":50,
"totalCost":550.50,
"comment_discount":"Скидку за день рождения",
"deliveryInfo":{
"clientName":"Иванов Иван Иванович", // может быть пусто
"phoneNumber":"79031111111″,
"deliveryType":"delivery", //pickup
"timeToOrder":{
"id":"937c57f6-4508-4858-be7f-20691a16fbb0″,
"date":"17.03.2021″,
"value":"17 марта 11:00 — 11:15″
},
"deliveryAddress":{
"full":"Москва, улица Тверская, дом 1 строение 4″,
"porch":"2″, // подъезд
"floor":"6″, // этаж
"apartment":"4567″, // квартира или офис
"domofon":1, // 1- есть домофон, 0 — нет
"latitude":"55.756994″,
"longitude":"37.614006″
},
"courierInfo":{ // все поля не обязательные
"fio":"Смирнов Иван Петрович",
"latitude":"55.756994″,
"longitude":"37.614006″,
"car":"Бежевая лада калина о877ку",
"raiting":4.5
}
},
"paymentInfo":{
"paymentType":"CARD", // CASH // TERNIMAL
"paymentStatus":"Payed", // Payment_upon_delivery
"change":1000
}
}

stateId Описание статуса Статус Гутакс
1 Новый заказ, только что создан Не меняем статус в Гутаксе
2 Заказ принят в работу, начали готовить (собирать заказ) Не меняем статус в Гутаксе
3 Заказ готов, ждет курьера Не меняем статус в Гутаксе
4 Заказ готов, ждет самовывоз Не меняем статус в Гутаксе
5 Выполняется доставка Не меняем статус в Гутаксе
6 Заказ выполнен, оплачен 37
7 Заказ отменен 51

Заказать звонок

Заполните ваши контактные данные, и мы свяжемся с вами в ближайшее время

Нажимая кнопку Отправить, я принимаю политику конфиденциальности

Успешно

Данные отправлены.
Мы свяжемся с вами в ближайшее время.

Закрыть

Попробовать

Оставить заявку