Перейти к содержанию

Быстрый старт

Сквозная интеграция за пять шагов. Должно занять около десяти минут, если у вас уже есть API-учётные данные.

1. Создайте заявителя

curl -X POST https://api.your-platform.example/v1/applicants \
  -H "X-Api-Key: $API_KEY" \
  -H "X-Api-Secret: $API_SECRET" \
  -H "Content-Type: application/json" \
  -d '{
    "externalUserId": "user_42",
    "type": "individual",
    "firstName": "Иван",
    "lastName": "Иванов",
    "email": "ivan@example.com"
  }'

Вызов идемпотентен. Повторный POST с тем же externalUserId вернёт уже существующего заявителя со статусом 200 OK, а не создаст дубликат.

Передаёте больше полей? Шлите всё, что есть — firstName, lastName, email, phone для физлиц; полный KYB-блок (companyName, registrationNumber, legalForm, incorporationDate, registeredAddress, country, email, phone) для type: "company". Backend молча отбрасывает поля, которые выбранный уровень не включает; остальное блокируется — SDK рендерит input как disabled, чтобы пользователь не мог переписать значение, и POST /api/v1/sdk/personal-info отказывается мутировать его на бэкенде. Подробнее — в гайде Уровни верификации: массивы personalInfoFields / companyDataFields на каждом уровне + раздел Блокировка полей, как снять блокировку.

2. Назначьте уровень проверки (опционально)

Если вы не передали verificationLevelName при создании, назначьте уровень сейчас. Уровень (настраивается вашей командой в портале продукта) решает, какие проверки будут выполнены. Имя уровня — короткий идентификатор вида KYC_01 (та же строка, что и в конструкторе уровней). Переименование блокируется, как только хоть один заявитель сослался на уровень, — имя можно безопасно хардкодить.

curl -X POST \
  https://api.your-platform.example/v1/applicants/user_42/levels/KYC_01 \
  -H "X-Api-Key: $API_KEY" -H "X-Api-Secret: $API_SECRET"

3. Запустите хостируемую сессию проверки (рекомендуется)

curl -X POST \
  https://api.your-platform.example/v1/applicants/user_42/verification-sessions \
  -H "X-Api-Key: $API_KEY" -H "X-Api-Secret: $API_SECRET" \
  -d '{}'

Ответ:

{
  "url": "https://sdk.your-platform.example/?token=eyJhbGciOi…",
  "expiresAt": "2026-04-30T10:00:00Z"
}

Перенаправьте пользователя по url. Он пройдёт все шаги уровня (загрузка документа, селфи, анкета) в хостируемом интерфейсе и вернётся на ваш сайт по завершении.

Не нужен хостируемый поток? POST /v1/applicants/{externalUserId}/verify принимает изображения документа и селфи в base64 одним вызовом.

4. Слушайте webhook

Когда пользователь завершит проверку (или что-то ещё изменится в заявителе), мы отправим POST-запрос с JSON-событием на ваш URL-приёмник. URL настраивается один раз в product-портале — см. Интеграция вебхуков для полного каталога событий и рецепта проверки подписи.

5. Прочитайте финальное состояние

После получения webhook (или когда хотите свериться) запросите заявителя:

curl https://api.your-platform.example/v1/applicants/user_42 \
  -H "X-Api-Key: $API_KEY" -H "X-Api-Secret: $API_SECRET"

Ответ содержит текущий status, riskLevel, временные метки загрузки документов и итоговый результат верификации.

Это весь цикл: создать → назначить → запустить → webhook → прочитать.