TTK2 UPOS Extension 1.0 Этот документ является расширением описания протокола прикладного протокола TTK2. Протокола взаимодействия между приложением, запрашивающим выполнение операции (клиентом), и приложением, выполняющим операцию (сервером).

- Титульная страница
- Группы

Выполнение операций без карты
Расширенный функционал Примеры работы с библиотекой » | Теги ТТК

Операции возврат, отмена, завершение расчета или отмена предавторизации могут быть выполнены без считывания карты клиента. Это возможно, если исходные операции находятся в той же смене.

При выполнении операции возврат без карты терминал:

1. Выполнит полную отмену, если сумма возврата равна сумме исходной операции.
2. Выполнит частичную отмену , если сумма возврата меньше суммы исходной операции и настройки терминала позволяют частичные отмены.
3. Вернет код ошибки 4118 "Операции не найдены", если сумма превышает сумму исходной операции.
4. Может быть отменена любая операция, за исключением подтверждения взноса наличных и отмены предавторизации.
5. Частичные отмены возможны только для операции оплата. Для всех остальных операций частичная отмена невозможна.
6. В цепочке из предавторизации и нескольких добавочных предавторизаций допускается полная отмена любой из добавочных предавторизаций. Отмена основной предавторизации без отмены добавочных предавторизаций невозможна.

Оплата бонусами «Спасибо», выполненная самим терминалом, а не кассовым ПО, не может быть отменена полностью или частично. Для таких операции допускается только возврат, поэтому при попытке выполнить возврат без карты по такой операции терминал вернет ошибку 4118. Данное ограничение действует, если терминал самостоятельно выполняет обработку бонусов "Спасибо", без возврата в кассовое ПО промежуточного кода ответа 4353. Ограничение не распространяется на ваше ПО, если оно получает от терминала промежуточный код ответа 4353, передает хэш карты на сервер "Спасибо" и уменьшает сумму операции при повторном вызове Оплата.

Терминал вернет код ошибки 4118, если по переданным входным параметрам не сумеет найти исходную операцию.

Команда возврата без предъявления карты. Необходимо взять TAG_TTK_SERVER_RRN исходной транзакции и положить его как TAG_TTK_CLIENT_RRN.

Заметки
  В данном примере, т.к. сумма не установлена (равносильно тому, что она равна нулю), она будет автоматически взята из исходной транзакции.

Ссылка на описание | Значение | Тип | Длина | Пример значения
--- | --- | --- | --- | ---
TAG_TTK_CLIENT_MID | 0x00000001 | STRING | 3 | REF
TAG_TTK_CLIENT_ECR | 0x00000002 | STRING | 12 | P01386858454
TAG_TTK_CLIENT_ERN | 0x00000003 | STRING | 10 | 020633459
TAG_TTK_TRACK2 | 0x00000017 | STRING | 8 | QSELECT
TAG_TTK_CLIENT_RRN | 0x00000018 | STRING | 12 | 155429335875
TAG_TTK_BUFFER_SIZE | 0x0000003E | STRING | 5 | 65000
TAG_TTK_REQUEST_ID | 0x00005F0A | DWORD | 4 | B76C66F4

Информационное сообщение "Авторизация в банке"

Ссылка на описание | Значение | Тип | Длина | Пример значения
--- | --- | --- | --- | ---
TAG_TTK_SERVER_MID | 0x00000081 | STRING | 3 | INF
TAG_TTK_SERVER_ECR | 0x00000082 | STRING | 12 | P01386858454
TAG_TTK_SERVER_ERN | 0x00000083 | STRING | 10 | 020633459
TAG_TTK_TIMEOUT | 0x00001F7C | STRING | 6 | 000003
TAG_TTK_SERVER_STATE | 0x00001F70 | STRING | 3 | 006
TAG_TTK_SERVER_MSG | 0x00001F71 | STRING | 19 | Авторизация в банке

Ответ на команду возврата

Ссылка на описание | Значение | Тип | Длина | Пример значения
--- | --- | --- | --- | ---
TAG_TTK_SERVER_MID | 0x00000081 | STRING | 3 | REF
TAG_TTK_SERVER_ECR | 0x00000082 | STRING | 12 | P01386858454
TAG_TTK_SERVER_ERN | 0x00000083 | STRING | 10 | 020633459
TAG_TTK_SERVER_AUT_CODE | 0x0000008C | STRING | 6 | 28T031
TAG_TTK_SERVER_TSN | 0x0000008B | STRING | 6 | 000033
TAG_TTK_TERMINAL_ID | 0x0000009D | STRING | 8 | 00870013
TAG_TTK_MERCHANT_ID | 0x00000090 | STRING | 12 | 874444445555
TAG_TTK_PILOT_OPER_TYPE | 0x00005F07 | STRING | 3 | 008
TAG_TTK_CARD_TYPE | 0x00005F0D | BINARY | 1 | 01
TAG_TTK_SERVER_RRN | 0x00000098 | STRING | 12 | 155429335875
TAG_TTK_REQUEST_ID | 0x00005F0A | DWORD | 4 | B76C66F4
TAG_TTK_TRX_FLAGS | 0x00005F0C | DWORD | 4 | 5010400
TAG_TTK_UPOS_MESSAGE | 0x00005F05 | STRING | 8 | ОДОБРЕHО
TAG_TTK_ENCDATA | 0x00005F39 | BINARY | 32 | EC4D01ABB82B002B44A687873E9B69EFD8685DEAF3A27DF97AEA9352D98807FF
TAG_TTK_PAN | 0x00000089 | STRING | 16 | ************4617
TAG_TTK_CARD_EXPDATE | 0x00005F06 | STRING | 5 | 08/18
TAG_TTK_IS_OWN | 0x000000A4 | STRING | 1 | 1
TAG_TTK_LLT_ID | 0x00005F03 | STRING | 3 | 128
TAG_TTK_ISSUER_NAME | 0x0000008F | STRING | 4 | Mastercard
TAG_TTK_SERVER_AMT | 0x00000084 | STRING | 12 | 000000061500
TAG_TTK_SERVER_AMT_C | 0x00005F33 | STRING | 12 | 000000061500
TAG_TTK_SERVER_DATE | 0x0000008D | STRING | 4 | 0304
TAG_TTK_SERVER_TIME | 0x0000008E | STRING | 4 | 1508
TAG_TTK_HASH | 0x000000A3 | STRING | 40 | 7E6AF16464E06845EE2EADF902E4EAE63D68F35A
TAG_TTK_CHEQUE_IN_ASCII | 0x0000009C | STRING | 1282 | Магазин "Детский Мир"
TAG_TTK_APPROVE | 0x000000A1 | STRING | 1 | Y
TAG_TTK_RESPONSE_CODE | 0x0000009B | STRING | 2 | 00