Получение информации об оплате

Запрос

URL

https://api.enot.io/invoice/info

Метод отправки

GET

Параметры запроса:

nametypedescription
shop_id *uuidИдентификатор кассы (используется для авторизации)
invoice_id **uuidID транзакции
order_id **string max:255Уникальный идентификатор платежа в системе мерча
type
uuid
description
Идентификатор кассы (используется для авторизации)
type
uuid
description
ID транзакции
type
string max:255
description
Уникальный идентификатор платежа в системе мерча

* Поля обязательные для заполнения

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

Ответ после запроса:

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

JSON

nametypedescription
invoice_iduuidID операции в нашей системе
order_idstringID операции в вашей системе
shop_iduuidID кассы
statusstringСтатус транзакции
Варианты:
created - создан/в процессе
success - успех
fail - транзакции отклонен
expired - истек по времени
invoice_amount *numberСумма платежа
creditednumber|nullСумма зачисление на баланс
currencystringВалюта платежа (RUB, USD, EUR, UAH)
pay_servicestring|nullМетод оплаты (В случае успеха)
payer_detailsstring|nullРеквизиты плательщика (Может быть пустым)
commission_amountnumberОбщая комиссия в рублях
commission_percentnumberОбщая комиссия в процентах
shop_commission_amountnumberСумма комиссии c кассы
user_commission_amountnumberСумма комиссии, взимаемая с клиента
user_commission_percentnumberПроцент комиссии, взимаемый с клиента
custom_fieldarrayСтрока, которую вы передавали в параметрах при создании платежа
created_atdatetime
(Y‑m‑d H:i:s)
Время создания инвойса
expired_atdatetime
(Y‑m‑d H:i:s)
Время истечения времени жизни
paid_atdatetime
(Y‑m‑d H:i:s)
Время оплаты инвойса
type
uuid
description
ID операции в нашей системе
type
string
description
ID операции в вашей системе
type
uuid
description
ID кассы
type
string
description
Статус транзакции
Варианты:
created - создан/в процессе
success - успех
fail - транзакции отклонен
expired - истек по времени
type
number
description
Сумма платежа
type
number|null
description
Сумма зачисление на баланс
type
string
description
Валюта платежа (RUB, USD, EUR, UAH)
type
string|null
description
Метод оплаты (В случае успеха)
type
string|null
description
Реквизиты плательщика (Может быть пустым)
type
number
description
Общая комиссия в рублях
type
number
description
Общая комиссия в процентах
type
number
description
Сумма комиссии c кассы
type
number
description
Сумма комиссии, взимаемая с клиента
type
number
description
Процент комиссии, взимаемый с клиента
type
array
description
Строка, которую вы передавали в параметрах при создании платежа
type
datetime
(Y‑m‑d H:i:s)
description
Время создания инвойса
type
datetime
(Y‑m‑d H:i:s)
description
Время истечения времени жизни
type
datetime
(Y‑m‑d H:i:s)
description
Время оплаты инвойса

* Только в случае ошибки

Возможные статусы ответа:

  • 200 : Успех
  • 401 : Ошибка авторизации (неверный shop_id или секретный ключ)
  • 404 : Транзакция не найдена
  • 422 : Ошибка валидации
  • 500 : Внутренняя ошибка системы

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

URL

https://api.enot.io/invoice/info?invoice_id=3fa85f64-5717-4562-b3fc-2c963f66afa6&shop_id=3fa85f64-5717-4562-b3fc-2c963f66afa6

Метод отправки

GET

Curl

  1. 1.curl -X 'GET' \
  2. 2.'https://api.enot.io/invoice/info?
  3. 3. invoice_id=3fa85f64-5717-4562-b3fc-2c963f66afa6&
  4. 4. shop_id=3fa85f64-5717-4562-b3fc-2c963f66afa6' \
  5. 5.-H 'accept: application/json' \
  6. 6.-H 'x-api-key: d6be996241deef230e9a0ca9dc60679da8720d14'

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

Responses

При успешном запросе: код ответа - 200.

  1. 1.{
  2. 2. "data": {
  3. 3. "invoice_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  4. 4. "order_id": "123",
  5. 5. "shop_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  6. 6. "status": "created",
  7. 7. "invoice_amount": 0,
  8. 8. "credited": 0,
  9. 9. "currency": "RUB",
  10. 10. "pay_service": "card",
  11. 11. "commission_amount": 0,
  12. 12. "commission_percent": 0,
  13. 13. "shop_commission_amount": 0,
  14. 14. "shop_commission_percent": 0,
  15. 15. "user_commission_amount": 0,
  16. 16. "user_commission": 0,
  17. 17. "custom_field": [
  18. 18. "paymentId": "123"
  19. 19. ]
  20. 20. "created_at": "2017-07-21 10:00",
  21. 21. "expired_at": "2017-07-21 10:00",
  22. 22. "paid_at": "2017-07-21 10:00"
  23. 23. }
  24. 24. "status": 200,
  25. 25. "status_check": true
  26. 26.}

При ошибке: код ответа - 401, 404, 422, 500.

  1. 1.{
  2. 2. "data": null,
  3. 3. "error": "Инвойс не найден",
  4. 4. "status": 404,
  5. 5. "status_check": false
  6. 6.}

Примеры кода:

  1. 1.import requests
  2. 2.
  3. 3.
  4. 4.# Invoice info
  5. 5.def get_invoice_info(api_key, invoice_id, shop_id):
  6. 6. session = requests.Session()
  7. 7. session.headers['Accept'] = 'application/json'
  8. 8. session.headers['x-api-key'] = api_key
  9. 9. params = {
  10. 10. 'invoice_id': invoice_id,
  11. 11. 'shop_id': shop_id
  12. 12. }
  13. 13. response = session.get('https://api.enot.io/invoice/info', params=params)
  14. 14. return response.json()
  15. 15.
  16. 16.
  17. 17.api_key = 'd6be996241deef230e9a0ca9dc60679da8720d14'
  18. 18.invoice_id = '3fa85f64-5717-4562-b3fc-2c963f66afa6'
  19. 19.shop_id = '3fa85f64-5717-4562-b3fc-2c963f66afa6'
  20. 20.
  21. 21.# Response full info
  22. 22.invoice = get_invoice_info(api_key, invoice_id, shop_id)
  23. 23.
  24. 24.# Response status
  25. 25.invoice['status']
  26. 26.
  27. 27.# Invoice data
  28. 28.invoice['data']
  29. 29.
  30. 30.# Invoice info
  31. 31.invoice['data']['invoice_id']
  32. 32.invoice['data']['status']
  33. 33.invoice['data']['invoice_amount']
  34. 34.invoice['data']['created_at']
  1. 1.function getInvoiceInfo(string $apiKey, string $invoiceId, string $shopId): array
  2. 2.{
  3. 3. $url = "https://api.enot.io/invoice/info";
  4. 4. $headers = [
  5. 5. "accept: application/json",
  6. 6. "x-api-key: {$apiKey}"
  7. 7. ];
  8. 8.
  9. 9. $ch = curl_init();
  10. 10. curl_setopt($ch, CURLOPT_URL, "$url?invoice_id={$invoiceId}&shop_id={$shopId}");
  11. 11. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  12. 12. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  13. 13. $response = curl_exec($ch);
  14. 14. curl_close($ch);
  15. 15. return json_decode($response, true);
  16. 16.}
  17. 17.
  18. 18.$apiKey = "d6be996241deef230e9a0ca9dc60679da8720d14";
  19. 19.$invoiceId = "3fa85f64-5717-4562-b3fc-2c963f66afa6";
  20. 20.$shopId = "3fa85f64-5717-4562-b3fc-2c963f66afa6";
  21. 21.
  22. 22.# Response full info
  23. 23.$invoice = getInvoiceInfo($apiKey, $invoiceId, $shopId);
  24. 24.
  25. 25.# Response status
  26. 26.$invoice['status'];
  27. 27.
  28. 28.# Invoice data
  29. 29.$invoice['data'];
  30. 30.
  31. 31.# Invoice info
  32. 32.$invoice['data']['invoice_id'];
  33. 33.$invoice['data']['status'];
  34. 34.$invoice['data']['invoice_amount'];
  35. 35.$invoice['data']['created_at'];