Skip to main content

Шаг 2. Выпустить сертификат

В качестве дополнительной защиты на методах, расположенных на https://secured-openapi.business.tinkoff.ru, используется двухфакторная аутентификация, или Mutual TLS . Такие методы помечены .

Чтобы использовать Mutual TLS, выпустите сертификат от Тинькофф:

  1. Перейдите в личный кабинет Тинькофф Бизнеса.
  2. В разделе Интеграции нажмите Выпустить сертификат.

Для выпуска сертификата нужна КЭП. Её можно заказать в разделе Квалифицированная электронная подпись или использовать КЭП от ФНС.

Срок действия сертификата — 1 год с даты выпуска. В разделе Интеграции вы также можете посмотреть срок действия сертификата, перевыпустить его или выпустить новый.

В личном кабинете Тинькофф Бизнеса (Beta)

Если у вас есть КЭП, выпускайте сертификат с помощью плагина КриптоПро.



Ручное создание заявки

Используйте ручное создание заявки, если у вас не получилось выпустить сертификат в личном кабинете.




Подписание заявки

Если вы уже пользуетесь Контуром, используя КЭП, или у вас уже установлено ПО «Инструменты КриптоПро», выбирайте ЭДО.

Если КЭП не у вас, а у другого сотрудника — выбирайте ЭДО:

  1. Отправьте PDF-заявку на выпуск сертификата владельцу подписи. Владелец подписывает заявку и присылает файл вам.
  2. Загрузите заявку на шаге 3 выпуска сертификата.
  1. Перейдите в сервис ЭДО. Например, Контур Крипто.

  2. Загрузите заявку.

  3. Выберите Откреплённая подпись и нажмите Подписать.


  4. Скачайте заявку с подписью в формате sig.

  5. Загрузите заявку на шаге 3 выпуска сертификата в личном кабинете Тинькофф Бизнеса или отправьте её на openapi@tinkoff.ru и нажмите Отправить заявку.

Сертификат появится на вкладке Выпускаются. Через 10 минут вы можете скачать его на вкладке Действуют.

Использование сертификата

С сертификатом open-api-cert.pem вы можете использовать защищённые методы, которые расположены на https://secured-openapi.business.tinkoff.ru. Для таких запросов нужен сертификат и сгенерированный приватный ключ.

Перед отправкой запроса убедитесь, что у вас:

  • выпущен токен с указанным внешним IP вашего устройства;
  • есть приватный ключ;
  • есть подписанный сертификат;
  • установлена утилита curl.

Если вы делаете запрос, для которого нужен сертификат, без сертификата или с неверным сертификатом, возвращается ошибка HTTP 400.

Запросы

Сделать запрос можно несколькими способами:

  • Через curl. Используйте сертификат и приватный ключ: curl --cert open-api-cert.pem --key private.key https://secured-openapi.business.tinkoff.ru/...
  • Через HTTP-клиент. Воспользуйтесь документацией используемого клиента. Примеры:
    const fs = require('fs');
    const https = require('https');
    const axios = require('axios');
    // ...
    const httpsAgent = new https.Agent({
    cert: fs.readFileSync('open-api-cert.pem'),
    key: fs.readFileSync('private.key'),
    });
    // ...
    const result = await axios.get(
    'https://secured-openapi.business.tinkoff.ru/...',
    { httpsAgent },
    );

Примеры

Выполнить платёж

В командной строке введите команду:

curl -i -XPOST
--cert open-api-cert.pem --key private.key
-H 'Authorization: Bearer t.wFHqh3g2UwAl3CUSQqq_deCf201Qp0BY2mxFWQTggcc2g0uJxHPdNYD_yqZJFUjQ53YUeIb4Xr66jcfiMe7D8A'
https://secured-openapi.business.tinkoff.ru/api/v1/payment/ruble-transfer/pay
-d '{"id":"123456","from":{"accountNumber":"12345678900987654321"},"to":{"name":"ООО \"РОГА и КОПЫТА\"","inn":"719351678037","kpp":"111222333","bik":"444555666","bankName":"Чемпион","corrAccountNumber":"12345678901234567890","accountNumber":"11122233344455566677"},"purpose":"Оплата по договору №123. НДС не облагается","amount":10}'

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

HTTP/2 201
date: Tue, 12 Jul 2022 11:57:20 GMT
content-length: 0
x-version: release-22.39.0
x-deployment: kn78zdrd
x-request-id: a8fa2bf3edb527b6fcee
server: MSX Turbo R (R800) Web Server 0.46
x-powered-by: MSX Basic IB WebApp Delivery Engine
x-balancer-id: 1p4
x-ua-compatible: IE=Edge
content-security-policy: frame-ancestors https://*.tinkoff.ru; report-uri https://sme.tinkoff.ru/common/sentry/api/56/security/?sentry_key=25374a8bcb434c9494e2bbe1d024b9aa

Проверить статус платежа

В командной строке введите команду, используя свой токен:

curl -i -XGET
--cert open-api-cert.pem --key private.key
-H 'Authorization: Bearer t.wFHqh3g2UwAl3CUSQqq_deCf201Qp0BY2mxFWQTggcc2g0uJxHPdNYD_yqZJFUjQ53YUeIb4Xr66jcfiMe7D8A'
https://secured-openapi.business.tinkoff.ru/api/v1/payment/123456

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

HTTP/2 200
date: Wed, 13 Jul 2022 09:42:24 GMT
content-type: application/json
content-length: 230
x-version: release-22.39.0
x-deployment: kn78zdrd
cache-control: no-store, must-revalidate, no-cache, proxy-revalidate, max-age=1
pragma: no-cache
x-request-id: 7fa2322d6772a23510e5
server: MSX Turbo R (R800) Web Server 0.46
x-powered-by: MSX Basic IB WebApp Delivery Engine
x-balancer-id: 1p3
x-ua-compatible: IE=Edge
content-security-policy: frame-ancestors https://*.tinkoff.ru; report-uri https://sme.tinkoff.ru/common/sentry/api/56/security/?sentry_key=25374a8bcb434c9494e2bbe1d024b9aa

{"status":"IN_PROGRESS"}

openapi@tinkoff.ru

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

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