Ссылочная авторизация
Ссылочная авторизация помогает в организации бесшовного перехода из мобильных приложений T‑Банка в ваше приложение с сохранением авторизации — например, Долями или разделов Выгода и Шоппинг.
Принцип работы
Клиент нажимает Купить в приложении сервиса Т-Банка.
Сервис Т-Банка генерирует авторизационный токен и отправляет запрос. Вид запроса:
https://partner?auth_token=xxxxСервис партнера генерирует параметр
stateи связывает его с браузером пользователя для защиты от CSRF-атак.Сервис партнера инициирует авторизацию через вызов метода GET https://id.tbank.ru/auth/authorize со следующими параметрами:
client_id— идентификатор, который вы получили после регистрации.redirect_uri— https://myintegration.ru/auth/complete.auth_token— токен, полученный на предыдущем шаге.state— параметр, который сгенерировал сервис партнера.response_type— code.
На
https://myintegration.ru/auth/completeприходит запрос. Вид запроса:https://myintegration.ru/auth/complete?state=ABCxyz&code=c.1a2b3c4d5e&session_state=hXXXXXXY3kgs3nx0H3RTj3JzCSrdaqaDhU6lS8XXXXX.i4kl6dsEB1SQogzq0Nj0Значения параметров:
state— параметр, который сгенерировал сервис партнера на шаге отправки запроса/authorize;code— параметр, нужный для получения Access Token на следующем шаге;session_state— технический параметр T‑ID.
Сервис партнера валидирует параметр
stateиз предыдущего шага. Если валидация прошла успешно, сохраняет значение параметраcodeдля дальнейшего обмена наaccess_token.Сервис партнера получает
access_tokenчерез POST-метод https://secured-openapi.tbank.ru/sso/auth/token. Запрос должен выполняться с бэкенда с использованием двухфакторной аутентификации — mTLS.- Authorization — basic, где username и password соответствуют 
client_idиclient_secret, которые вы получили на электронную почту после подписания договора. Примеры составления на разных языках. - Content-type — 
application/x-www-form-urlencoded. - grant_type — 
authorization_code. - redirect_uri — https://myintegration.ru/auth/complete.
 - code — код из пункта 6.
 - cert — выпущенный сертификат.
 - key — приватный ключ.
 
- Authorization — basic, где username и password соответствуют 
 Приложение партнера получает ответ.
- access_token — токен для обращения к T-API для получения информации о пользователе;
 - token_type — тип авторизации по 
access_token; - expires_in — время жизни 
access_token; - id_token — технический параметр T‑ID.
 
Персональные данные
Сервис партнера обращается к T‑API для получения персональных данных клиента через метод /userinfo.
Персональные данные клиента передаются для заполнения учетной записи и завершения авторизации.
Сервис партнера перенаправляет пользователя согласно бизнес-логике. Если вы обнаружили схожесть новых учетных данных с существующими, вы можете объединить учетные записи.