Главная
api-pay api-b2b api-b2b-agent api-bonus api-bonus-lk api-support
api-benzuber api-benzuber (goods) api-benzuber (с эквайрингом) webview-benzuber Сценарии заправки Случаи изменения заказов Чек-лист приложений
GS-Планшет GS-Desktop GS-Carwash
Поиск документов

Авторизация

или просто отсканируйте QR-код телефоном с установленным приложением Benzuber
Для получения полного доступа к документации введите свой номер сотового телефона.
При необходимости обращайтесь в службу поддержки Benzuber или по телефону 8 (800) 250-98-93.

API-BENZUBER (goods)

API Benzuber (goods) – расширение протокола API-Benzuber для получения информации о предлагаемых на АЗС сопутствующих товарах, и возможности оформления заказа на покупку доступных товаров.

Для реализации взаимодействия партнёру необходимо реализовать запросы:


Получение информации о товарах

Для получения информации о станциях, предоставляющих товары, и детальной информации о каждой станции реализовано несколько запросов:

/stations Получение списка станций доступных партнеру, с указанием признака доступности товаров на станции.

/stations/{StationId}/goods Получение информации о доступных товарах на АЗС.

/stations/{StationId}/goods/image/{ProductImage} Получение изображение товара


Получение списка АЗС и структуры ТРК

Получение информации о станциях доступных для партнера, с указанием признака доступности товаров на станции.
В ответе содержится полный список доступны АЗС для партрёнра. Станции на которых доступны товары отмечены признаком IsGoods=true

Запрос

(GET) URL_BZ + /v1/stations?apikey={apikey}&stationId={id}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
stationId Число
Идентификатор станции. Если не передано, то в ответе будет полный список станций

Ответ

Content type: application/json

[
  {
    "StationID": "Номер",
    ...
    "IsGoods": true,
    ...
  },
  {"StationID": ...},
  ...
]
Параметр Описание
Обязательный
stationID
Число
Идентификатор станции
Обязательный
IsGoods
Boolean
Доступность товаров на АЗС
true - товары доступны,
false - товары не доступны

Получение информации о товарах на АЗС

Получение информации о доступных товарах на станции, предоставляется информация о товарных группах и самих товарах с указанием цены.

Запрос

(GET) URL_BZ + /v1/stations/{StationId}/goods?apikey={apikey}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
StationId
Число
Идентификатор станции

Ответ

Content type: application/json

[
  {
    "GroupName": "Капучино",
    "GroupImage": "23d4jh3",
    "GroupItems": [
      {
        "ProductId": "52",
        "ProductName": "Капучино S",
        "ProductDescr": "Вкуснейший Капучино (200 мл.)",
        "ProductUnit": "200 мл"
        "ProductImage" : "fd34dsf"
        "ProductPrice": "168.00"
      },
      ...
    ],
  },
  {"GroupName": ...},
  ...
]
Параметр Описание
Обязательный
GroupName
Строка
Название группы товаров
Обязательный
GroupImage
Строка
Идентификатор изображения
Обязательный
GroupItems
Массив
Информация о товарах, входящих в группу
ProductId - Идентификатор товара
ProductName - Название товара
ProductDescr - Описание товара
ProductUnit - Объем товара (в литрах, мл. кг. шт.)
ProductImage - Идентификатор изображения товараProductPrice - Цена за единицу товара

Получение изображения товара

Получение файла с изображением товарной группы или товара.

Запрос

(GET) URL_BZ + /v1/stations/{StationId}/goods/image/{ProductImage}?apikey={apikey}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
StationId
Число
Идентификатор станции
Обязательный
ProductImage
Число
Идентификатор изображения товарной группы или товара

Ответ
Файл с изображением


Обработка заказа

Сценарий обработки заказа предполагает передачу информации о заказе от партнера, и передачу информации о ходе выполнения заказа от сервера Benzuber.


Создание нового заказа на товары

Запрос PURCHASE применяется для передачи партнёром нового заказа на товары.

Запрос

(POST)URL_BZ + /v1/purchase?apikey={apikey}
Request body schema application/json

{
  "Id":(string),
  "StationExtendedId":(int),
  "Sum":(string),
  "Cart": [
    {
      "Id":(int),
      "Price": (string),
      "Quantity":(int),
      "Amount":(int)
    },
    ...
  ]
}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
Id
Строка
Идентификатор заказа у партнера
Обязательный
Sum
Строка
Общая сумма заказа (стоимость всех товаров в заказе)
Обязательный
Cart
Массив
Список товарных позиций в заказе
Id - Идентификатор товара
Price - Цена за единицу товара
Quantity - Количество товара
Amount - Стоимость товарной позиции

Ответ

HTTP коды ответа:

200 – заказ получен, параметры корректны.
400 – станция не найдена (не верный идентификатор станции или ТРК)
402 – некорректная цена на товар
404 - не найден товар на станции

При получении заказа от партнера сервер Benzuber проверяет обязательные параметры и даёт код ответа:


Запрос на попытку отмены заказа

Возможность инициировать отмену ранее созданного заказа партнёром.
При получении от партнёра запроса на отмену заказа, сервер Benzuber пытается отменить заказ на станции. Если это удается, тогда партнеру передается callback-запрос Canceled.
Если такой запрос не поступил, значит отменить заказ не получилось.

Запрос

(GET) URL_BZ + /v1/purchase/cancel?apikey={apikey}&Id={orderId}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
orderId
Строка
Идентификатор заказа партнёра

Ответ

HTTP коды ответа:

200 – запрос получен, будет выполнена попытка отмены заказа на АЗС.
401 – ошибка авторизации 
404 – заказ не найден (не верный идентификатор заказа)

Передача состояния заказа партнеру

Сервер Benzuber выполняет запросы, для передачи статусов заказов партнеру на согласованный адрес:

URL_PS + /api/purchase/команда?apikey={apikey}&параметры

Подтверждение заказа (Статус: accept)

Запрос сообщает партнеру о том, что заказ принят и обработан сервером Benzuber.
Данный запрос отправляет после того, как были произведены определённые действия с заказом, проверено соответствие параметров, заказ сохранен в базе данных, и система готова перейти на следующий шаг.

Запрос

(GET) URL_PS + /api/purchase/accept?apikey={apikey}&orderId={ordeId}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
orderId
Строка
Идентификатор заказа партнёра

Ответ В случае если партнер дал ответ отличный от 200 ОК, то сервер Benzuber отсылает запрос Canceled и прекращает обработку заказ.


Отмена заказа (Статус: canceled)

Запрос сообщает партнёру о том, что заказ не может быть исполнен и его следует отменить.

Запрос

(GET) URL_PS + /api/purchase/canceled?apikey={apikey}&orderId={ordeId}&reasonId={reason}&reason={reason}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
orderId
Строка
Идентификатор заказа партнёра
reasonId Строка
Код причины отмены заказа
Обязательный
reason
Строка
Описание причины отмены

Ответ
В случае если партнёр даёт ответ отличный от 200 ОК, то сервер Benzuber периодически, в течении некоторого времени, отсылает запросы повторно, до момента получения ответа 200 ОК


Завершение заказа (Статус: completed)

Запрос сообщает партнёру о том, что заказ выполнен и топливо залито.

Запрос

(GET) URL_PS + /api/purchase/completed?apikey={apikey}&orderId={ordeId}
                &extendedDate={extendedDate}&extendedOrderId={extendedOrderId}
Параметр Описание
Обязательный
apikey
Строка
Ключ авторизации
Обязательный
orderId
Строка
Идентификатор заказа партнёра
Обязательный
extendedDate
ДатаВремя
Дата и время фактического завершения заказа
Обязательный
extendedOrderId
Строка
Идентификатор заказа на станции выполнившей заказ

Ответ
В случае если партнёр даёт ответ отличный от 200 ОК, то сервер Benzuber периодически, неограниченное количество времени, отсылает запросы повторно, до момента получения ответа 200 ОК

Описание API-Benzuber Запрос списка станций Запрос информации о товарах АЗС Получение изображения товара Запрос на создание заказа Запрос на попытку отмены заказа Подтверждение заказа (callback) Отмена заказа (callback) Завершение заказа (callback)
© 2024 ООО ТД "Смарт-технологии"