HTTP статус-коди та їх опрацювання
На цій сторінці ви знайдете інформацію про помилки, що можуть бути отримані при направленні запиту до API Financial Line.
Загальний перелік HTTP статус-кодів з помилками:
Код помилки | Опис помилки | Рекомендації |
---|---|---|
400 | Bad Request | Цей тип помилки свідчить про недопустимість запиту. Для її усунення перегляньте параметри запиту, щоб пересвідчитися у їх правильності та повноті. |
401 | Unauthorized | Ця помилка вказує на те, що один або кілька параметрів автентифікації (POS_ID , API_KEY , API_SECRET , ENDPOINTS_KEY ) мають невірне або недопустиме значення. Для усунення помилки перевірте значення, що використовуються для автентифікації та використайте актуальні. |
404 | Not Found | Помилка вказує на неможливість знайти ендпоїнт або запис про платіж. Для її усунення перевірте правильність URL-адреси, на яку відправляється запит. Можливо, в ній містяться одруки чи пропущено частину адреси. |
405 | Method Not Allowed | Ця помилка свідчить про використання недопустимого HTTP-методу у запиті. Перевірте вимоги документації для відповідного типу запитів, а також HTTP-метод, що ви використовуєте. |
406 | Not Acceptable | Помилка вказує на необхідність включення до запиту за HTTP-методом POST контенту типу application/json . Включіть до відповідного запиту контент необхідного формату. |
429 | Too Many Requests | Ця помилка вказує на завелику кількість запитів протягом короткого проміжку часу. Спробуйте повторити свій запит після невеликої паузи. |
500 | Internal Server Error | Цей тип помилок відноситься до внутрішніх помилок на стороні Financial Line. Зв’яжіться зі Службою підтримки Financial Line для отримання додаткової інформації щодо вирішення цієї проблеми. |
503 | Service Unavailable | Ця помилка також відноситься до внутрішніх помилок на стороні Financial Line і вказує на неможливість зв’язатися із сервером. Спробуйте повторити свій запит після невеликої паузи, а якщо це не допомогло, то зв’яжіться зі Службою підтримки Financial Line для отримання додаткової інформації щодо вирішення цієї проблеми. |
Відповідь з інформацією про помилку на стороні клієнта (4ХХ
статус-коди) має таку структуру:
Field | Type | Required |
---|---|---|
message | String(512) | ✅ |
args | JSON | ✅ |
args.code | String(16) |
Приклад такої відповіді:
{
"message": "Invalid pos_id field or credentials",
"args": {
"code": "S-403"
}
}
Отримання у відповідь на запит помилки з 4ХХ
статус-кодом вказує на те, що платіж не було створено або створено одразу з неуспішним статусом. При отриманні статус-коду 404 ви можете зробити повторний запит.
Відповідь з інформацією про помилку на стороні сервера (5ХХ
статус-коди) має таку структуру:
Field | Type | Required |
---|---|---|
message | String(512) | ✅ |
args | Object | ✅ |
args.error_id | String(16) |
Приклад такої відповіді:
{
"message": "Internal error occurred",
"args": {
"error_id": "NYdKYdA4Zv3iOJSw"
}
}
Параметр args
також може містити поле Obj
, що є масивом даних.
Приклад відповіді:
{
"message": "Invalid values provided",
"args": {
"obj": [
{
"msg": [
"The card is expired: expiry month and year must be numbers that are gte than today"
],
"args": []
}
]
}
}
У окремих випадках параметр args
також може передаватися як масив.
Приклад відповіді:
{
"message":"Invalid amount provided",
"args":[
{
"field_name":"amount",
"violation":"Invalid value for 'amount': must be a Number in range of [500 - 100000] INR, actual - 300"
}
]
}
При отриманні статус-коду 500 або 503 необхідно здійснити переопит статусу транзакції, використовуючи значення параметру order_id
, що встановлювалося в запиті на створення платежу. Переопит статусу транзакції необхідно провести не раніше ніж через 1 хвилину після отримання помилки.
Ще один тип помилки може бути отримано у випадку відправки запиту до неіснуючого ендпоїнту.
Приклад відповіді:
{
"code": 5,
"details": [
{
"@type": "type.googleapis.com/google.rpc.DebugInfo",
"detail": "service_control",
"stackEntries": []
}
],
"message": "Method does not exist."
}
При отриманні такої помилки рекомендуємо перевірити правильність адреси ендпоїнту, до якого відправляються запити.
При неправильному формуванні запитів, можуть бути отримані такі помилки:
Повідомлення про помилку | Рекомендації |
---|---|
API key not valid. Please pass a valid API key. | Перевірте значення параметру ENDPOINTS_KEY |
Method doesn't allow unregistered callers (callers without established identity). Please use API Key or other form of API consumer identity to call this API. | Перевірте, чи передається хедер X-API-KEY |
Invalid pos_id field or credentials | Перевірте коректність X-API-Auth та POS_ID |