Отмена операции
https://qrpay.tinkoff.ru/qrpay/external/send/CANCEL_xml
Метод для отмены операции — ручное прерывание операции кассиром или кассовым ПО, например, нажатием красной кнопки.
Endpoint метода — send
. В документации выведены dummy-методы — для удобства чтения документации по каждому методу отдельно.
Схема работы метода
После того, как кассир инициировал отмену платежа, совершаемого на этом же POS-терминале — например, нажал красную кнопку:
-
POS-терминал формирует сообщение c запросом на отмену —
POST /send
и отправляет его на хост. -
Хост получает сообщение с POS-терминала, проводит нужные проверки и вне зависимости от устройства, с которого отправлен запрос, и продукта под QR-кодом учитывает статус платежа:
-
платеж подтвержден — инициируется операция возврата, и на POS-терминал возвращается ответ с результатом операции;
-
платеж в процессе подтверждения — возвращается ответ с кодом 'SUCCESS', через промежуток времени инициируется операция возврата;
-
сгенерирован QR-код, попыток проведения платежа не было — инициируется отмена QR-кода, и формируется ответ POS-терминалу с результатом отмены.
-
-
POS-терминал печатает чек c соответствующей информацией об операции.
Запрос
Request body schema application/xml
currency
String
Валюта.
Required
mch_id
String
MID мерчанта.
Required
method
String
Requirements: [cancel
]
ori_transaction_no
Number
Номер операции. Идентификатор платежа из ответного сообщения на запрос генерации QR-кода — значение атрибута out_trade_no
.
Required
out_transaction_no
Number
Порядковый номер операции QRPay на POS-устройстве.
Required
sign_type
String
Requirements: <= 30 characters
, [HMAC_SHA256
]
Тип подписи.
Required
sign
String
Подпись запроса. Значение формируется по алгоритму в соответствии с выбранным sign_type
. Подпись в примере носит справочный характер и не рассчитывалась для этого запроса.
Required
ter_id
String
TID терминала.
Required
time_start
String
Время формирования запроса. Формат — yyyy-MM-dd'T'HH:mm:ss
.
total_amount
String
Сумма платежа. Тип данных в строке — number(9,2)
.
Required
trade_type
String
Requirements: <= 50 characters
, [pay.paxpay.native
]
Тип операции.
Required
version
String
Requirements: <= 4 characters
, [V1.0
]
Версия интерфейса.
terminal_operation_id
String<uuid>
Идентификатор терминальной операции. Формируется при инициации платежной операции.
Ответ
Это полезный материал?