Протокол приема платежей использует для запросов API следующие HTTP-коды ошибок:
| Код ошибки | Описание |
|---|---|
| 400 | Bad Request — Ваш запрос некорректен (ошибка в данных или в формате запроса). |
| 401 | Unauthorized — Неправильный ключ доступа к API. |
| 403 | Forbidden — Доступ к API запрещен. |
| 404 | Not Found — Указанный ресурс не найден. |
| 405 | Method Not Allowed — Для создания платежа использовался неправильный метод. |
| 406 | Not Acceptable — Формат данных отличается от JSON. |
| 410 | Gone — Запрашиваемый ресурс удален. |
| 429 | Too Many Requests — Слишком много запросов. |
| 500 | Internal Server Error — Внутренняя ошибка сервиса. Если тело ответа пустое, повторите запрос с теми же параметрами. Если тело ответа не пустое, выполните запрос статуса платежа или статуса счета. |
| 502 | Bad Gateway — Нет связи с сервисом |
| 503 | Service Unavailable — Сервер временно недоступен по техническим причинам, попробуйте позже. |
Тип операции возвращается в поле {operation}.type уведомления.
| Тип операции | Описание |
|---|---|
| PAYMENT | Платеж. В уведомлении может присутствовать поле flags: [ "SALE" ] (обычный платеж) или flags: [ "AUTH" ] (платеж с холдированием средств). |
| CAPTURE | Операция подтверждения. |
| REFUND | Операция возврата. В уведомлении может присутствовать поле flags: [ "REVERSAL" ]. Это значит, что финансовой операции (списания средств со счета покупателя) не было, комиссия по операции удержана не будет. |
| PAYOUT | Операция выплаты. В уведомлении может присутствовать поле flags: [ "TEST" ]. Это значит, что операция тестовая. |
Статус операции отражает ее текущее состояние.
API возвращает синхронный статус операции в поле status.value.
В таблице перечислены возможные статусы и типы операций, в которых эти статусы используются.
| Тип операции | Статус операции | Описание статуса |
|---|---|---|
| PAYMENT | WAITING | Ожидание 3DS авторизации |
| PAYMENT | DECLINED | Запрос авторизации отклонен (в синхронном ответе) |
| PAYMENT | DECLINE | Запрос авторизации отклонен (в асинхронном ответе) |
| PAYMENT | COMPLETED | Запрос авторизации успешно обработан |
| CAPTURE | DECLINE | Запрос подтверждения отклонен |
| CAPTURE | DECLINED | Запрос подтверждения отклонен (в ответе API на запрос статуса) |
| CAPTURE | COMPLETED | Запрос подтверждения успешно обработан |
| REFUND | DECLINE | Запрос возврата отклонен |
| REFUND | COMPLETED | Запрос возврата успешно обработан |
| PAYOUT | WAITING | Выплата принята в обработку |
| PAYOUT | DECLINED | Выплата отклонена |
| PAYOUT | COMPLETED | Выплата успешно проведена |
В уведомлениях статус помещается в поле {operation}.status.value.
В таблице перечислены возможные статусы и типы операций, в которых эти статусы используются.
| Тип операции | Статус операции | Описание статуса |
|---|---|---|
| PAYMENT | DECLINE | Запрос авторизации отклонен |
| PAYMENT | SUCCESS | Запрос авторизации успешно обработан |
| CAPTURE | DECLINE | Запрос подтверждения отклонен |
| CAPTURE | SUCCESS | Запрос подтверждения успешно обработан |
| REFUND | DECLINE | Запрос возврата отклонен |
| REFUND | SUCCESS | Запрос возврата успешно обработан |
| PAYOUT | WAITING | Выплата принята в обработку |
| PAYOUT | DECLINED | Выплата отклонена |
| PAYOUT | SUCCESS | Выплата успешно проведена |
Ошибки API описывают причину отклонения операции и передаются:
- в ответах на запросы — в поле
status.reason; - в уведомлениях — в поле
status.reasonCode.
| Ошибка API | Описание |
|---|---|
| INVALID_STATE | Некорректный статус транзакции |
| INVALID_AMOUNT | Некорректная сумма |
| INVALID_RECEIVER_DATA | Ошибка при передаче данных о получателе |
| DECLINED_BY_MPI | Отклонено MPI |
| DECLINED_BY_FRAUD | Отклонено fraud-мониторингом |
| REATTEMPT_NOT_PERMITTED | Повторный запрос авторизации запрещен на основании правил Платежной системы |
| REATTEMPT_NOT_PERMITTED_BY_PS | Операция отклонена платежной системой. Детализация ошибки содержится в поле status.psErrorCode. По данной карте повторная операция невозможна |
| REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Операция отклонена платежной системой. Повторная операция возможна только при условии изменения одного из параметров исходной операции. Рекомендация по устранению ошибки содержится в поле status.psErrorCode. С теми же данными повторная операция невозможна |
| REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Операция отклонена платежной системой. Попытка перепроведения с теми же параметрами возможна не более одного раза в сутки, т. е. разрешено не более двух попыток с одними и теми же данными |
| GATEWAY_INTEGRATION_ERROR | Ошибка взаимодействия с банком |
| GATEWAY_TECHNICAL_ERROR | Техническая ошибка на стороне банка |
| ACQUIRING_MPI_TECH_ERROR | Техническая ошибка при проведении 3DS аутентификации |
| ACQUIRING_GATEWAY_TECH_ERROR | Техническая ошибка |
| ACQUIRING_ACQUIRER_ERROR | Техническая ошибка |
| ACQUIRING_AUTH_TECHNICAL_ERROR | Ошибка при проведении авторизации средств |
| ACQUIRING_ISSUER_NOT_AVAILABLE | Ошибка эмитента. Банк-эмитент не доступен |
| ACQUIRING_SUSPECTED_FRAUD | Ошибка эмитента. Подозрение на мошенничество |
| ACQUIRING_LIMIT_EXCEEDED | Ошибка эмитента. Превышен один из лимитов |
| ACQUIRING_NOT_PERMITTED | Ошибка эмитента. Операция не разрешена |
| ACQUIRING_INCORRECT_CVV | Ошибка эмитента. Некорректный CVV |
| ACQUIRING_EXPIRED_CARD | Ошибка эмитента. Неверный срок действия карты |
| ACQUIRING_INVALID_CARD | Ошибка эмитента. Проверьте корректность введенных данных |
| ACQUIRING_INSUFFICIENT_FUNDS | Ошибка эмитента. Недостаточно средств |
| ACQUIRING_UNKNOWN | Неизвестная ошибка |
| BILL_ALREADY_PAID | Счет уже оплачен |
| PAYIN_PROCESSING_ERROR | Ошибка при проведении платежа |
| PAYMENT_EXPIRED_3DS | Не пройдена 3DS-аутентификация |
| QW_LIMIT_ERROR | Ошибка превышения лимита пользователя QIWI Кошелька |
| QW_IDENTIFICATION_ERROR | Пользователю необходимо пройти идентификацию в QIWI Кошельке |
| QW_AUTH_ERROR | Ошибка авторизации в QIWI Кошельке |
| QW_INSUFFICIENT_FUNDS | Недостаточно средств в QIWI Кошельке |
| QW_AMOUNT_ERROR | Недопустимая сумма платежа |
| QW_REGISTRATION_ERROR | Ошибка регистрации пользователя QIWI Кошелька |
| QW_AGENT_ERROR | Ошибка при пополнении QIWI Кошелька пользователя |
| QW_ACCOUNT_ERROR | QIWI Кошелек заблокирован |
| QW_IDENTIFICATION_STATUS_ERROR | Достигнут лимит платежей в QIWI Кошельке |
| QW_CURRENCY_ERROR | Валюта QIWI Кошелька не найдена |
| QW_PAYMENT_ERROR | Ошибка проведения платежа в QIWI Кошельке |
| QW_PROVIDER_ERROR | Провайдер QIWI Кошелька заблокирован |
| QW_SMS_CONFIRM_EXPIRED | Истекло время СМС-подтверждения платежа в QIWI Кошельке |
| TRY_AGAIN_LATER | Повторите запрос через некоторое время |
Коды детализации ошибки и рекомендованных действий, полученные от платежной системы, возвращаются в поле status.psErrorCode.
| Код | Ошибка API, с которой возвращается | Описание |
|---|---|---|
| 03 | REATTEMPT_NOT_PERMITTED_BY_PS | Операция в данную категорию ТСП запрещена эмитентом |
| 04 | REATTEMPT_NOT_PERMITTED_BY_PS | Карта заблокирована |
| 12 | REATTEMPT_NOT_PERMITTED_BY_PS | Операция данного типа запрещена Правилами и Стандартами платежной системой |
| 13 | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Некорректная сумма. Повторите попытку совершения операции с другой суммой |
| 14 | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Некорректный номер карты. Введите корректный номер карты или используйте другую карту |
| 15 | REATTEMPT_NOT_PERMITTED_BY_PS | Эмитента с данной картой не существует |
| 30 | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Операция отклонена, обратитесь в Qiwi за дополнительной информацией |
| 33 | REATTEMPT_NOT_PERMITTED_BY_PS | Данная карта недоступна для использования |
| 41 | REATTEMPT_NOT_PERMITTED_BY_PS | Данная карта недоступна для использования |
| 43 | REATTEMPT_NOT_PERMITTED_BY_PS | Данная карта недоступна для использования |
| 51 | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции после пополнения счёта |
| 54 | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Срок действия карты отсутствует или передан неверно |
| 57 | REATTEMPT_NOT_PERMITTED_BY_PS | Операция данного типа недоступна для карты |
| 58 | REATTEMPT_NOT_PERMITTED_BY_PS | Операция данного типа недоступна для эквайера |
| 61 | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции в другой день — после переустановки Эмитентом лимита по общей сумме операций данного типа |
| 62 | REATTEMPT_NOT_PERMITTED_BY_PS | Операция недоступна из-за ограничений на карте или счёте Держателя карты |
| 63 | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Операция отклонена, обратитесь в Qiwi за дополнительной информацией |
| 65 | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции в другой день — после переустановки Эмитентом лимита по общему количеству операций данного типа |
| 76 | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение отмены запроса из-за отсутствия оригинального запроса |
| 78 | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение запроса из-за попытки использования закрытой карты |
| 91 | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции в другое время — после восстановления работоспособности Эмитента |
| 92 | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение Платежной Системой из-за невозможности проведения операции |
| 93 | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение запроса по причине нарушения требований законодательства |
| 94 | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение задублированного запроса |
| 96 | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции в другое время — после восстановления работоспособности Эмитента или Платформы |
| CB | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Отклонение запроса из-за некорректной даты рождения Держателя карты |
| CW | REATTEMPT_NOT_PERMITTED_BY_PS_CONDITIONAL | Отклонение запроса из-за несоответствия валюты для DCC валюте Эмитента |
| PB | REATTEMPT_NOT_PERMITTED_BY_PS_TEMPORARY | Клиенту может быть рекомендовано повторить попытку совершения операции в другое время — после восстановления работоспособности Эквайрера |
| TS | REATTEMPT_NOT_PERMITTED_BY_PS | Отклонение запроса в связи с отменой длительного поручения Держателя карты |