# Sber API (СберБизнес API): GET /ic/sso/api/v2/oauth/authorize — Получение кода авторизации

Ссылка, которую платформа открывает в браузере пользователя (хост `sbi.sberbank.ru:9443`). После успешной аутентификации браузер возвращается на `redirect_uri` с кодом авторизации. Для песочницы используется промышленный URL с параметрами песочницы.

| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
| `response_type` | query | string | да | Только code |
| `client_id` | query | string | да | Идентификатор платформы |
| `redirect_uri` | query | uri | да | Адрес возврата; сверяется по маске с указанным при подключении |
| `scope` | query | string | да | Набор атрибутов и операций; обязательно содержит openid |
| `state` | query | string | да | Защита от CSRF, не короче 36 символов (буквы и цифры) |
| `nonce` | query | string | нет | Связь сессии с id_token, не короче 10 символов |
| `code_challenge` | query | string | нет | PKCE (RFC 7636) |
| `code_challenge_method` | query | string | нет | Только S256; обязателен при code_challenge |
| `prompt` | query | string | нет | none, login, consent, select_account |

## Базовые URL

- Боевой: `https://fintech.sberbank.ru:9443`
- Тестовый (песочница): `https://fintech-test.sberbank.ru:9443`
- Страница авторизации СберБизнес ID: `https://sbi.sberbank.ru:9443/ic/sso/api/v2/oauth/authorize`

## Авторизация

Тип: OAuth 2.0

Авторизация по OAuth 2.0 (authorization code flow) через СберБизнес ID. Платформа получает при подключении `client_id` и `client_secret`, перенаправляет пользователя на `/ic/sso/api/v2/oauth/authorize`, получает код на `redirect_uri` и обменивает его на `access_token`, `refresh_token` и `id_token`. Запросы к API передают токен в заголовке `Authorization`. `access_token` живёт 60 минут.

Дополнительно обязателен клиентский TLS-сертификат (mTLS) в формате PKCS#12 (.p12) и установленные корневые сертификаты УЦ Сбера и Минцифры России. Сертификат выпускается в личном кабинете Sber API (для песочницы — на вкладке «Песочница API»), действует 12 месяцев и только для одного `clientId`.

```
curl --location 'https://fintech-test.sberbank.ru:9443/fintech/api/v1/client-info' \
--header 'Accept: application/json' \
--header 'Authorization: {value}'
```

## Нюансы

- Без клиентского TLS-сертификата (mTLS) запросы к API не проходят; тестовые сертификаты работают только в песочнице, у каждого `clientId` свой сертификат.
- `access_token` живёт 60 минут. Использованный `refresh_token` остаётся резервным 2 часа; если новая пара не дошла, повторите обновление с тем же `refresh_token` в течение часа.
- Каждый метод требует своего сервиса в `scope` ссылки авторизации (например `PAY_DOC_RU`, `GET_STATEMENT_ACCOUNT`, `GET_CLIENT_ACCOUNTS`).
- Платёжное поручение без `digestSignatures` создаётся черновиком. Порядок и количество полей дайджеста для подписи менять нельзя.
- Выписку запрашивают постранично начиная с первой страницы; доступна за 5 предыдущих лет и текущий год.
- В песочнице ответы зависят от тестовых данных: сценарии и фиксированные значения указаны на странице каждого метода. Нагрузочное тестирование в песочнице не предусмотрено.
- О финальном статусе платёжного поручения банк может сообщить вебхуком — без постоянного опроса статуса.
- Для работы с дочерними организациями в наборе «Холдингам» нужна отдельная пара токенов для каждой организации.
- У Sber API есть MCP-сервер для AI-агентов (набор «Компаниям»: рублёвое платёжное поручение, выписка, инкассация, НСО и депозиты), а документация доступна в формате llms.txt: `/sber-api/llms-full.txt`.

## Сценарии с этим методом

- [Подключить организацию через СберБизнес ID](https://mcp-everything.ru/integrations/sberbusiness/scenarios/podklyuchit-organizatsiyu-cherez.md)

---

Если этого недостаточно — официальная документация: https://developers.sber.ru/docs/ru/sber-api/overview
Вся интеграция одним документом: https://mcp-everything.ru/integrations/sberbusiness.md
