Автоматическая отмена
https://qrpay.tinkoff.ru/qrpay/external/api/v1/operations/AUTO_CANCEL
Метод для автоматической отмены QR-кода или платежа. Отмена производится самим терминалом или кассовым ПО в результате сбоя или запланированного поведения платежной сессии, когда что-то пошло не по плану — например, терминал не смог отобразить QR.
Схема работы метода
При необходимости POS-терминал инициирует отмену платежа, совершаемого на этом же POS-терминале:
-
POS-терминал формирует сообщение c запросом на отмену —
POST/operations/auto_cancel
и отправляет его на хост. -
Хост получает сообщение с POS-терминала, проводит нужные проверки и возвращает ответ в зависимости от статуса сессии (платежа). Если:
-
Статус соответствует успешно проведенной оплате — в зависимости от настроек хоста, возвращается ответ с кодом
FAIL
или инициируется операция возврата, и на POS-терминал возвращается ответ с результатом операции. -
Статус соответствует процессу проведения платежа — в зависимости от настроек хоста, возвращается ответ с кодом
SUCCESS
,FAIL
илиUSINGPAY
. -
Статус соответствует моменту, когда процесс остановился на сформированном QR-коде, попыток проведения платежа не было — инициируется отмена QR-кода и формируется ответ POS-терминалу о результате отмены.
-
-
Терминал печатает чек:
-
«Операция прервана» — для
SUCCESS
и когда попыток проведения платежа не было. -
«Повторите запрос позже» — для
FAIL
.
-
Запрос
Request body schema application/json
currency
String
Валюта.
Required
mchId
String
Requirements: <= 15 characters
MID мерчанта.
Required
oriTransactionNo
Number
Номер операции. Идентификатор платежа из ответного сообщения на запрос генерации QR-кода — значение атрибута outTradeNo
.
Required
outTransactionNo
Number
Порядковый номер операции QRPay на POS-устройстве.
Required
signType
String
Requirements: <= 30 characters
, [SOFTPOS_SHA256_HMAC
, HMAC_SHA256
]
Тип подписи.
Required
signature
String
Подпись запроса. Значение формируется по алгоритму в соответствии с выбранным sign_type
. Подпись в примере носит справочный характер и не рассчитывалась для этого запроса.
Required
terId
String
TID терминала.
Required
timeStart
String
Время формирования запроса. Формат — yyyy-MM-dd'T'HH:mm:ss
.
totalAmount
String
Сумма платежа. Тип данных в строке — number(9,2)
.
Required
tradeType
String
Requirements: [pay.paxpay.native
]
Тип операции.
Required
version
String
Requirements: <= 4 characters
, [V1.0
]
Версия интерфейса.
terminalOperationId
String<uuid>
Идентификатор терминальной операции. Формируется при инициации платежной операции.
Ответ
Это полезный материал?