Skip to main content

Отмена операции

/CANCEL

POST

https://qrpay.tinkoff.ru/qrpay/external/api/v1/operations/CANCEL

Метод для отмены операции — ручное прерывание операции кассиром или кассовым ПО, например, нажатием красной кнопки.

Схема работы метода

После того, как кассир инициировал отмену платежа, совершаемого на этом же POS-терминале — например, нажал красную кнопку:

  1. POS-терминал формирует сообщение c запросом на отмену — POST /operations/cancel и отправляет его на хост.

  2. Хост получает сообщение с POS-терминала, проводит нужные проверки и вне зависимости от устройства, с которого отправлен запрос, и продукта под QR-кодом учитывает статус платежа:

    • платеж подтвержден — инициируется операция возврата, и на POS-терминал возвращается ответ с результатом операции;

    • платеж в процессе подтверждения — возвращается ответ с кодом 'SUCCESS', через промежуток времени инициируется операция возврата;

    • сгенерирован QR-код, попыток проведения платежа не было — инициируется отмена QR-кода, и формируется ответ POS-терминалу с результатом отмены.

  3. POS-терминал печатает чек c соответствующей информацией об операции.

Запрос

Request body schema application/json

currency

String

Валюта.

Required

mchId

String

Requirements: <= 15 characters

MID мерчанта.

Required

oriTransactionNo

Number

Номер операции. Идентификатор платежа из ответного сообщения на запрос генерации QR-кода — значение атрибута out_trade_no.

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: <= 50 characters, [pay.paxpay.native]

Тип операции.

Required

version

String

Requirements: <= 4 characters, [V1.0]

Версия интерфейса.

terminalOperationId

String<uuid>

Идентификатор терминальной операции. Формируется при инициации платежной операции.

Ответ

200

Успешный запрос

Это полезный материал?

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

Payload

cURL

Go

Java

NodeJs

PHP

Python

Content type

application/json

{

"currency":

"RUB",

"mchId":

"000000000000001",

"oriTransactionNo":

551123123,

"outTransactionNo":

22210,

"signType":

"HMAC_SHA256",

"signature":

"b613679a0814d9ec772f95d778c35fc5ff1697c493715653c6c712144292c5ad",

"terId":

"40051625",

"timeStart":

"2021-07-22T17:30:28",

"totalAmount":

"10000.05",

"tradeType":

"pay.paxpay.native",

"version":

"V1.0",

"terminalOperationId":

"123e4567-e89b-12d3-a456-426655440000"

}

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

200

Content type

application/json

{

"code":

"SUCCESS",

"msg": {
},

"signType":

"HMAC_SHA256",

"signature":

"b613679a0814d9ec772f95d778c35fc5ff1697c493715653c6c712144292c5ad",

"method":

"cancel",

"mchId":

"000000000000001",

"terId":

"40051625",

"timeStart":

"2021-07-22T17:30:28",

"outTradeNo":

"551123123",

"tradeTime":

"2021-07-22T17:30:33",

"currency":

"RUB",

"tradeType":

"pay.paxpay.native",

"transactionNo": {
},

"version":

"V1.0",

"merchantName":

"IP AJRAPETYAN G S",

"merchantAddress":

"353911, Краснодарский край, г Новороссийск, ш Сухумское, 110"

}

АО «ТБанк» использует файлы «cookie» с целью персонализации сервисов и повышения удобства пользования веб-сайтом. «Cookie» представляют собой небольшие файлы, содержащие информацию о предыдущих посещениях веб-сайта. Если вы не хотите использовать файлы «cookie», измените настройки браузера.