API партнера Slevomat.cz

Это машинный перевод статьи.

API используется для передачи информации о ваучерах между Discountomat и системой продавца. Он позволяет партнеру проверять действительность ваучеров в своей системе и выкупать ваучеры. Партнеру не нужно использовать интерфейс партнера для этой цели.

Возможные примеры использования:

  • Клиент приобретает ваучер, где условием услуги является ввод кода на сайте партнера при создании заказа. Благодаря API ваучер сразу же проверяется на действительность после этого ввода. Затем его стоимость вычитается в корзине партнера, и в то же время ваучер автоматически погашается в Discountomat.
  • Аналогичным образом можно проверить действительность ваучеров в системе бронирования партнера или загрузить купленный кредит определенной стоимости на счет клиента непосредственно на сайте партнера.

API партнера требует токен, который уникален для каждого партнера и отправляется как часть каждого запроса. Чтобы использовать API партнера, свяжитесь с вашим/нашим торговцем.

Формат запроса

Точка доступа API находится по адресу /api.

Формат запроса:

<URL přístupového bodu>/<akce>[<pa­rametry>]

Все запросы представляют собой стандартные HTTP GET-запросы, т.е. запрос на проверку действительности ваучера может выглядеть следующим образом:

https://www.zlavomat.sk/api/vouchercheck?code=1234-5677-77-111&token=123456789012345.

Формат ответа

Ответ сервера всегда в формате JSON с соответствующим заголовком Content-type. Базовая структура ответа следующая.

{
 "result": true,
 "data": {
 ...
 },
 "error": {
 "code": 0,
 "message": null
 }
}

Значением элемента результата является true (в случае успеха) или false (в случае ошибки). В случае ошибки запись об ошибке содержит код ошибки (code ) и ее описание (message ). Помимо указания в поле ошибки, система возвращает соответствующий код статуса HTTP (400, 401, 403, 404) в случае ошибки.

Элемент данных содержит данные, возвращаемые вызванным действием, и его содержимое является индивидуальным.

Все данные представлены в формате ГГГГ-ММ-ДДТЧЧ:ММ:ССЗ (ISO8601; например, 2011–01–01T10:10:10+02:00).

Проверка ваучера

  • действие: voucherCheck
  • параметры: токен (обязательно; уникальный токен партнера), код (обязательно; код ваучера)

Существует три кода тестовых ваучеров:

  • 1234–5677–77–111 (платный, неиспользованный),
  • 2234–5688–88–222 (платный, б/у),
  • 3234–5699–99–333 (бесплатно, неиспользованный).

Если приложение использует один из этих кодов, сервер вернет соответствующий ответ (в случае оплаченного и неиспользованного ваучера он также вернет образец ваучера и данные о событии).

Формат данных ответа

{
 "token": <autentizační token>,
 "code": <kód voucheru>,
 "voucherData": <data voucheru>
}

Параметр voucherData содержит определение ваучера в следующем формате.

{
 "id": <ID voucheru>,
 "orderId": <ID objednávky>,
 "title": <název voucheru>,
 "ordered": <datum a čas objednávky; datum a čas>,
 "paidDate": <datum zaplacení objednávky; datum>
 "validFrom": <začátek platnosti voucheru; datum>,
 "validTo": <konec platnosti voucheru; datum>,
 "key": <kód voucheru>,
 "code": <kód voucheru>,
 "product": <ID akce>,
 "productName": <název akce>,
 "variant": <ID varianty akce>,
 "variantName": <název varianty akce>,
 "imageUrl": <URL obrázku>,
 "smallImageUrl": <URL náhledu>,
 "productUrl": <URL akce>
}

Поля option и variantName содержат идентификатор или имя заказанного варианта события, если событие содержит варианты. Если нет, оба атрибута имеют значение NULL .

Ошибочные состояния

  • Код 1101 (код статуса HTTP 400): токен аутентификации или код ваучера не был введен,
  • Код 1102 (код статуса HTTP 403): токен отсутствует в базе данных,
  • код 1103 (код статуса HTTP 404): ваучер с указанным кодом не существует,
  • код 1104 (код статуса HTTP 401): заказ, по которому был выдан ваучер, не был оплачен,
  • код 1105 (код статуса HTTP 401): ваучер уже был использован,
  • код 1106 (код статуса HTTP 401): ваучер был возвращен,
  • код 1107 (код статуса HTTP 401): заказ или ваучер был отменен,
  • код 1108 (код статуса HTTP 401): счет за мероприятие уже был выставлен партнеру; дальнейшие ваучеры не могут быть востребованы,
  • код 1109 (код статуса HTTP 401): срок действия ваучеров на это мероприятие еще не начал истекать.
  • код 1111 (код состояния HTTP 500): внутренняя ошибка сервера

Пример запроса

https://www.zlavomat.sk/api/vouchercheck?code=1234-5677-77-111&token=123456789012345

Пример ответа

{
 "result": true,
 "data": {
 "token": "123456789012345",
 "code": "1234567890-123",
 "voucherData": {
 "title": <název voucheru>,
 ...
 }
 },
 "error": {
 "code": 0,
 "message": null
 }
}

Использование ваучера

  • Действие: ваучерПрименить
  • параметры: токен (обязательно; уникальный токен партнера), код (обязательно; код ваучера)

Попытки использовать ваучер указанного кода.

Номер тестового ваучера может быть использован для целей тестирования. В этом случае ваучер не будет погашен, но система вернет ответ, как будто он был погашен.

Формат данных ответа

Формат ответа точно такой же, как и в случае проверки действительности ваучера.

Ошибочные состояния

  • Код 1201 (код статуса HTTP 400): токен аутентификации или код ваучера не был введен,
  • код 1202 (код статуса HTTP 403): токен отсутствует в базе данных,
  • код 1203 (код статуса HTTP 404): ваучер с указанным кодом не существует,
  • код 1204 (код статуса HTTP 401): заказ, по которому был выдан ваучер, не был оплачен,
  • код 1205 (код статуса HTTP 401): ваучер уже был использован,
  • код 1206 (код статуса HTTP 401): ваучер был возвращен,
  • код 1207 (код статуса HTTP 401): заказ или ваучер был отменен,
  • код 1208 (код статуса HTTP 401): счет за мероприятие уже был выставлен партнеру; дальнейшие ваучеры не могут быть востребованы,
  • код 1209 (код статуса HTTP 401): срок действия ваучеров на это мероприятие еще не начал истекать.
  • код 1211 (код состояния HTTP 500): внутренняя ошибка сервера

Пример запроса

https://www.zlavomat.sk/api/voucherapply?code=1234-5677-77-111&token=123456789012345

Пример ответа

{
 "result": true,
 "data": {
 "token": "123456789012345",
 "code": "1234567890-123",
 "voucherData": {
 "title": <název voucheru>,
 ...
 }
 },
 "error": {
 "code": 0,
 "message": null
 }
}

Примечание: Чтобы использовать API партнера для вычета стоимости или продуктов в вашей корзине, рассмотрите возможность включения нескольких атрибутов в параметр voucherData. Это важно, особенно если вы хотите использовать параметр voucher. Это важно, когда у вас есть несколько запущенных акций с разной стоимостью продуктов. В частности, мы рекомендуем использовать атрибуты product или variation.

Вернуться к списку статей

Похожие статьи


Вверх