Метод checkCertificate
Описание
Метод предназначен для получения информации о сертификате. Можно проверить правильность ввода кода и пина, срок действия сертификата, доступный номинал сертификата. После проверки параметров сертификата можно вызывать метод redeemCertificate.
Параметры запроса (data)
| Параметр | Тип | Описание |
|---|---|---|
| code | string | Обязательное. Код сертификата. |
| pin | string | Секретный пин-код сертификата |
Параметры ответа (data)
| Параметр | Тип | Описание |
|---|---|---|
| order_id | integer | Идентификатор заказа |
| product_id | integer | Идентификатор продукта |
| face | integer | Доступный номинал сертификата. Номинал не изменяется в течение жизни сертификата. |
| balance | integer | Доступный баланс сертификата. Баланс уменьшается после выполнения частичного или полного погашения. В отдельных случаях баланс сертификата может быть меньше номинала изначально. При отображении в интерфейсе необходимо показывать баланс сертификата вместо номинала серфтикиата. |
| allow_partial_redeem | boolean | Возможность выполнения частиного погашения |
| available_number_of_uses | int | Количество оставшихся частичных погашений. Значение может быть 0, в таком случае количество погашений не ограничено. |
| number_of_uses | int | Количество использованных частичных погашений |
| expire_date | string | Дата и время окончания срока действия сертификата |
| redeemed | boolean | Был ли сертификат уже погашен |
| expired | boolean | Истёк ли срок действия сертификата |
| pin_is_correct | boolean | Правильно ли был введён пин-код сертификата |
| product_title | string | Название продукта |
Пример
bash
# Получаем значение для подстановки SIG
# SECRET в данном случае - это хранящийся у клиента ключ для подписи запросов к API
$ echo -n 'checkCertificate{"code":"00342-999-999-999","pin":"9999"}SECRET' | sha256sum - | awk '{print $1}'
# Используем известный клиенту ID и сгенерированный SIG для выполнения запроса
$ curl 'https://ssl-api.giftery.ru/?cmd=checkCertificate&id=ID&in=json&out=json&data=%7B%22code%22%3A%2200342-999-999-999%22%2C%22pin%22%3A%229999%22%7D&sig=SIG'Результат успешного запроса
JSON
{
"status": "ok",
"data": {
"order_id": 9999999,
"product_id": 9999,
"face": 10000,
"balance": 9000,
"allow_partial_redeem": true,
"available_number_of_uses": 10,
"number_of_uses": 0,
"expire_date": "2021-02-05 15:21:20",
"redeemed": false,
"expired": false,
"pin_is_correct": true,
"product_title": "Giftery Card"
}
}Результат в случае ошибки
JSON
{
"status": "error",
"error": {
"code": 1402,
"text": "Сертификат не найден"
}
}| Код ошибки | Описание |
|---|---|
| 1402 | Не удалось найти сертификат по предоставленному коду. Нужно проверить правильность передачи кода. Проверка пин-кода происходит только если сертификат был найден. |
| 1403 | Сертификат был заблокирован. Причину блокировки можно уточнить и персонального менеджера. |