Skip to main content

Токен

Токен, или подпись запроса — это строка в запросе методов, в которой мерчант должен шифровать данные с помощью пароля.

В описании входных параметров для каждого метода указано, нужно подписывать запрос или нет. Токен формируется на основании тех полей, которые есть в запросе, поэтому для каждого запроса они уникальные и никогда не совпадают.

Пример формирования токена

Чтобы зашифровать данные запроса:

  1. Соберите массив передаваемых параметров в виде пар ключ:значение. В массив нужно добавить только параметры корневого объекта — вложенные объекты и массивы не участвуют в формировании токена.

    В примере в массив включены параметры TerminalKey, Amount, OrderId, Description и исключены объекты Receipt и DATA:

    [{"TerminalKey": "MerchantTerminalKey"},{"Amount": "19200"},{"OrderId": "00000"},{"Description": "Подарочная карта на 1000 рублей"}]
  2. Добавьте в массив пару {"Password": "Значение пароля"}. Пароль можно найти в личном кабинете интернет-эквайринга.

    [{"TerminalKey": "MerchantTerminalKey"},{"Amount": "19200"},{"OrderId": "00000"},{"Description": "Подарочная карта на 1000 рублей"},{"Password": "11111111111111"}]
  3. Отсортируйте массив по алфавиту по ключу.

    [{"Amount": "19200"},{"Description": "Подарочная карта на 1000 рублей"},{"OrderId": "00000"},{"Password": "11111111111111"},{"TerminalKey": "MerchantTerminalKey"}]
  4. Конкатенируйте только значения пар в одну строку.

    "19200Подарочная карта на 1000 рублей0000011111111111111MerchantTerminalKey"
  5. Примените к строке хеш-функцию SHA-256 (с поддержкой UTF-8).

    "72dd466f8ace0a37a1f740ce5fb78101712bc0665d91a8108c7c8a0ccd426db2"
  6. Добавьте получившийся результат в значение параметра Token в тело запроса и отправьте его.

    {
    "TerminalKey": "MerchantTerminalKey",
    "Amount": 19200,
    "OrderId": "21090",
    "Description": "Подарочная карта на 1000 рублей",
    "DATA": {
    "Phone": "+71234567890",
    "Email": "a@test.com"
    },
    "Receipt": {
    "Email": "a@test.ru",
    "Phone": "+79031234567",
    "Taxation": "osn",
    "Items": [
    {
    "Name": "Наименование товара 1",
    "Price": 10000,
    "Quantity": 1,
    "Amount": 10000,
    "Tax": "vat10",
    "Ean13": "303130323930303030630333435"
    },
    {
    "Name": "Наименование товара 2",
    "Price": 20000,
    "Quantity": 2,
    "Amount": 40000,
    "Tax": "vat20"
    },
    {
    "Name": "Наименование товара 3",
    "Price": 30000,
    "Quantity": 3,
    "Amount": 90000,
    "Tax": "vat10"
    }
    ]
    },
    "Token": "72dd466f8ace0a37a1f740ce5fb78101712bc0665d91a8108c7c8a0ccd426db2"
    }

Проверка корректности токена

В личном кабинете интернет-эквайринга перейдите в раздел Операции, выберите нужный заказ и в блоке Дополнительная информация о заказе посмотрите на значение в поле inittokenisvalid:

  • true — токен валидный,
  • false — токен некорректный.

openapi@tbank.ru

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