Перейти к содержимому

Организации

Методы /v1/portal/orgs — для сотрудников reKassa: список всех организаций и решение по проверке, которую запрашивают клиенты. Доступы нужны на уровне платформы, см. Роли и доступы.

Метод Доступ Что делает
GET /v1/portal/orgs orgs.read все организации с фильтрами
POST /v1/portal/orgs orgs.create сотрудник добавляет ЮЛ
POST /v1/portal/orgs/{id}/owner orgs.manage передать аккаунт клиента другому владельцу
POST /v1/portal/orgs/{id}/verification orgs.verify решение по проверке организации

Дальше с организацией работают через договоры.

  1. Найдите организации, ждущие решения: GET /v1/portal/orgs?status=pending.

  2. Проверьте реквизиты организации.

  3. Примите решение: POST /v1/portal/orgs/{id}/verification со статусом verified, needs_action или rejected.

GET/v1/portal/orgs
Параметр По умолчанию Описание
status — статус проверки: not_started, pending, verified, needs_action или rejected
contractStatus — договорный статус: contract_required, contract_in_progress или contract_signed
search — подстрока названия или ИНН, без учёта регистра, 1–100 символов
page 1 номер страницы
size 50 размер страницы, до 5000
Окно терминала
curl 'https://api.rekassa.uz/v1/portal/orgs?status=pending&page=1&size=20' \
-H 'Authorization: Bearer <accessToken>'
{
"items": [
{
"id": "8c1e4a27-5d3b-4f60-9a82-1b7e0c3d9f45",
"clientId": "e2b7c915-0a4d-4e38-b6f1-7d9a2c5e8b03",
"kind": "legal",
"tin": "301234567",
"name": "ООО «Навруз Савдо»",
"address": "г. Ташкент, Юнусабадский р-н, ул. Амира Темура, 108",
"directorName": "Каримов Азиз Рустамович",
"phone": "+998712345678",
"bankName": "АКБ «Капиталбанк»",
"bankMfo": "01088",
"bankAccount": "20208000900123456001",
"verificationStatus": "pending",
"verificationNote": null,
"submittedAt": "2026-09-24T09:30:00.000Z",
"verifiedAt": null,
"createdAt": "2026-09-24T09:10:00.000Z"
}
],
"page": 1,
"size": 20,
"total": 1,
"hasMore": false
}

Элементы — организации в том же виде, что в GET /v1/orgs/{id}. Пагинация — как у остальных списков, см. Формат данных.

Статус Код Когда
400 validation_failed неизвестный status, size больше 5000
403 forbidden нет доступа orgs.read на уровне платформы
POST/v1/portal/orgs/{id}/verification

Решение принимается только по организации в статусе pending.

Поле Тип Обязательное Описание
status string да verified, needs_action или rejected
note string для needs_action, rejected комментарий для клиента, 1–2000 символов
Окно терминала
curl -X POST https://api.rekassa.uz/v1/portal/orgs/8c1e4a27-5d3b-4f60-9a82-1b7e0c3d9f45/verification \
-H 'Authorization: Bearer <accessToken>' \
-H 'Content-Type: application/json' \
-d '{"status": "needs_action", "note": "Расчётный счёт не совпадает с выпиской банка"}'

Ответ 200 — организация после решения.

Решение Что меняется
verified verifiedAt — момент решения, verificationNote очищается (переданный note не сохраняется)
needs_action note сохраняется в verificationNote; клиент исправляет реквизиты и отправляет снова
rejected note сохраняется в verificationNote; повторно отправить на проверку клиент не сможет
Статус Код Когда
400 validation_failed неизвестный status; нет note для needs_action или rejected
403 forbidden нет доступа orgs.verify на уровне платформы
404 organization_not_found организации нет
422 verification_state_invalid организация не в статусе pending
POST/v1/portal/orgs

Тело — как у самостоятельного добавления, обычно заполненное через автозаполнение по ИНН. Создаётся новый клиент, и добавивший сотрудник становится его Владельцем: аккаунт принадлежит тому, кто завёл ЮЛ, пока его не передадут клиенту (см. ниже). Договорный статус новой организации — contract_required («Требуется договор»).

Окно терминала
curl -X POST https://api.rekassa.uz/v1/portal/orgs \
-H 'Authorization: Bearer <accessToken>' \
-H 'Content-Type: application/json' \
-d '{
"kind": "legal",
"tin": "302936161",
"name": "\"CLIENT\" MCHJ",
"address": "Toshkent, Yangi Olmazor 10",
"directorName": "MIRZAYEV AHRORBEK",
"bankMfo": "01158",
"bankAccount": "20208000900123456001"
}'

Ответ 201 — организация, как в GET /v1/orgs/{id}. Ошибки: 409 tin_taken, 403 без доступа orgs.create на уровне платформы.

POST/v1/portal/orgs/{id}/owner

Передаёт аккаунт клиента: пользователь с этим телефоном становится единственным Владельцем всех организаций клиента. Если аккаунта с таким номером нет, он создаётся — вход по SMS-коду. Прежние владельцы теряют эту роль.

{ "phone": "+998901234567", "firstName": "Алишер", "lastName": "Навоий" }

Ответ 200 — сотрудники организации, как в GET /v1/orgs/{id}/members.