Merchant – Запросы
Подключение и выполнение запросов
API Точка (Endpoint)
https://api.click.uz/v2/merchant/
Конфиденциальные данные
При регистрации поставщик услуг получает следующие данные для подключения и отправки запросов к API:
- merchant_id
- service_id
- merchant_user_id
- secret_key
secret_key является конфиденциальным параметром и поставщик услуг несет полную ответственность за его безопасность.
Оставив secret_key незащищенным, вы может скомпрометировать ваши данные.
Аутентификация
HTTP Header “Auth: merchant_user_id:digest:timestamp”
digest — sha1(timestamp + secret_key)
timestamp — UNIX timestamp (10 digit seconds from epoch start)
Требуемые заголовки
Accept
Auth
Content-Type
Поддерживаемые виды контента
application/json
application/xml
Создать инвойс (счет-фактуру)
Запрос
POST https://api.click.uz/v2/merchant/invoice/create HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
{
“service_id”: :id сервиса,
“amount”: :сумма,
“phone_number”: :номер телефона,
“merchant_trans_id”: :параметр оплаты
}
“service_id”: :id сервиса,
“amount”: :сумма,
“phone_number”: :номер телефона,
“merchant_trans_id”: :параметр оплаты
}
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | amount | float | Сумма платежа |
3 | phone_number | string | Получатель инвойса |
4 | merchant_trans_id | string | ID заказа(для Интернет магазинов)/лицевого счета/логина в биллинге поставщика |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“invoice_id”: 1234567
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“invoice_id”: 1234567
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | invoice_id | bigint | ID инвойса |
Проверка статуса инвойса (счет-фактуры)
Запрос
GET https://api.click.uz/v2/merchant/invoice/status/:service_id/:invoice_id HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“invoice_status”: -99,
“invoice_status_note”: “Удален”,
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“invoice_status”: -99,
“invoice_status_note”: “Удален”,
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | invoice_status | bigint | Код статуса инвойса |
4 | invoice_status_note | string | Описание статуса инвойса |
Проверка статуса платежа
Запрос
GET https://api.click.uz/v2/merchant/payment/status/:service_id/:payment_id HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | payment_id | bigint | ID платежа |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567,
“payment_status”: 1
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567,
“payment_status”: 1
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | payment_id | bigint | ID платежа |
4 | payment_status | integer | Код статуса платежа |
Проверка статуса платежа c помощью merchant_trans_id
Запрос
GET https://api.click.uz/v2/merchant/payment/status_by_mti/:service_id/:merchant_trans_id/YYYY-MM-DD HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:15190515
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:15190515
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | merchant_trans_id | string | Идентификатор поставщика |
2 | YYYY-MM-DD | string | День когда платеж был создан |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: error_code,
“error_note”: “Error description”,
“payment_id”: 1234567,
“merchant_trans_id”: “user123”
}
“error_code”: error_code,
“error_note”: “Error description”,
“payment_id”: 1234567,
“merchant_trans_id”: “user123”
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | payment_id | bigint | ID платежа |
4 | payment_status | int | Код статуса платежа |
Снятие платежа (отмена)
Запрос
DELETE https://api.click.uz/v2/merchant/payment/reversal/:service_id/:payment:id HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | payment_id | bigint | Payment ID |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | payment_id | bigint | ID платежа |
Условия снятия (отмены) платежа
- Оплата должна быть успешно завершена
- Только платежи, созданные в текущем отчетном месяце, могут быть возвращены
- Выплаты из предыдущего месяца могут быть отменены только в первый день текущего месяца. Оплата должна производиться с помощью онлайн-карты.
- Отмена платежа может быть отклонена из-за отказа UZCARD
Частичный возврат (отмена)
Запрос
DELETE https://api.click.uz/v2/merchant/payment/partial_reversal/:service_id/:payment_id/:amount HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | payment_id | bigint | Payment ID |
2 | amount | float | Сумма возврата |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: 1234567
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
Создание токена карты
Запрос
POST https://api.click.uz/v2/merchant/card_token/request HTTP/1.1
Accept: application/json
Content-Type: application/json
Accept: application/json
Content-Type: application/json
{
“service_id”: :id сервиса,
“card_number”: :номер карты,
“expire_date”: :годен до, // (MMYY)
“temporary”: 1 // (0|1)
}
“service_id”: :id сервиса,
“card_number”: :номер карты,
“expire_date”: :годен до, // (MMYY)
“temporary”: 1 // (0|1)
}
temporary — создать токен для единичного использования.
Временные токены автоматически удаляются после оплаты.
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | card_number | string | Номер карты |
3 | expire_date | string | Card expire date |
4 | temporary | bit | Create temporary card |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“card_token”: “3B1DF3F1-7358-407C-B57F-0F6351310803”,
“phone_number”: “99890***1234”,
“temporary”: 1,
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“card_token”: “3B1DF3F1-7358-407C-B57F-0F6351310803”,
“phone_number”: “99890***1234”,
“temporary”: 1,
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | card_token | string | Токен карты |
4 | phone_number | string | User phone number |
4 | temporary | bit | Type of created token |
Подтверждение токена карты
Запрос
POST https://api.click.uz/v2/merchant/card_token/verify HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
{
“service_id”: :id сервиса,
“card_token”: :токен карты,
“sms_code”: :код смс
}
“service_id”: :id сервиса,
“card_token”: :токен карты,
“sms_code”: :код смс
}
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | card_token | string | токен карты |
3 | sms_code | int | Полученный смс код |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“card_number”: “8600 55** **** 3244”,
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“card_number”: “8600 55** **** 3244”,
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | card_number | string | Номер карты |
Оплата с помощью токена
Запрос
POST https://api.click.uz/v2/merchant/card_token/payment HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
{
“service_id”: :id сервиса,
“card_token”: :card_token,
“amount”: :amount,
“transaction_parameter”: :merchant_trans_id
}
“service_id”: :id сервиса,
“card_token”: :card_token,
“amount”: :amount,
“transaction_parameter”: :merchant_trans_id
}
transaction_parameter — пользователь или идентификатор контракта при выставлении счетов продавца
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | card_token | string | Токен карты |
2 | amount | float | Сумма платежа |
3 | merchant_trans_id | string | Номер транзакции |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: “598761234”,
“payment_status”: 1
}
“error_code”: код ошибки,
“error_note”: “Описание ошибки”,
“payment_id”: “598761234”,
“payment_status”: 1
}
Параметры ответа
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | error_code | integer | Код ошибки |
2 | error_note | string | Описание ошибки |
3 | payment_id | bigint | ID платежа |
4 | payment_status | int | Код статуса платежа |
Удаление токена карты
Запрос
DELETE https://api.click.uz/v2/merchant/card_token/:service_id/:card_token HTTP/1.1
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Accept: application/json
Content-Type: application/json
Auth: 123:356a192b7913b04c54574d18c28d46e6395428ab:1519051543
Параметры запроса
# | Наименование параметра | Тип данных | Описание |
---|---|---|---|
1 | service_id | integer | ID сервиса |
2 | card_token | string | токен карты |
Ответ
HTTP/1.1 200 OK
Content-Type: application/json
Content-Type: application/json
{
“error_code”: код ошибки,
“error_note”: “Error description”
}
“error_code”: код ошибки,
“error_note”: “Error description”
}