> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Импорт и экспорт компаний: массовая загрузка CSV

> Массово загружайте компании Didit Business (KYB) из CSV и экспортируйте всю таблицу компаний. Доступно в Didit Business Console. Оплата за вызов.



Промпт для массового импорта и экспорта компаний
        Скопировать промпт в буфер обмена



      
      

\<pre>

\````# Goal — bulk-load (or extract) Didit Business entities programmatically

CSV import / export is console-only. For programmatic bulk operations, loop `POST /v3/businesses/create/` for imports and paginate `GET /v3/businesses/` for exports.

\## Bulk import — loop the create endpoint

\```bash
\# businesses.json — array of records
\# [{"vendor_data":"biz-acme","display_name":"Acme Corp","country_code":"GBR"}, ...]

jq -c '.[]' businesses.json | while read biz; do
curl -X POST https://verification.didit.me/v3/businesses/create/ \
-H "x-api-key: $DIDIT_API_KEY" \
-H "Content-Type: application/json" \
-d "$biz"
sleep 0.1   # respect rate limits — see /integration/rate-limiting
done
\```

Record shape (matches `POST /v3/businesses/create/`):

\```json
\{
"vendor_data": "biz-acme",         // required, unique per app
"display_name": "Acme Corp",       // optional
"country_code": "GBR",             // ISO 3166-1 alpha-3, optional
"metadata": {"partner": "Acme Holdings"},
"tags": ["b2b-tier-1"]
}
\```

\`create` is **not** idempotent. Upsert pattern:

\```bash
if curl -s -o /dev/null -w "%{http_code}" \
 https://verification.didit.me/v3/businesses/$VD/ \
 -H "x-api-key: $DIDIT_API_KEY" | grep -q 200; then
curl -X PATCH https://verification.didit.me/v3/businesses/$VD/ \
-H "x-api-key: $DIDIT_API_KEY" -H "Content-Type: application/json" \
-d "$BODY"
else
curl -X POST https://verification.didit.me/v3/businesses/create/ \
-H "x-api-key: $DIDIT_API_KEY" -H "Content-Type: application/json" \
-d "$BODY"
fi
\```

\## Bulk export — paginate the list endpoint

\```bash
PAGE=1
while :; do
RESP=$(curl -sG https://verification.didit.me/v3/businesses/ \
-H "x-api-key: $DIDIT_API_KEY" \
\--data-urlencode "page=$PAGE" \
\--data-urlencode "page_size=100")
echo "$RESP" | jq -c '.results[]' >> businesses.ndjson
HAS_NEXT=$(echo "$RESP" | jq -r '.next // empty')
\[ -z "$HAS_NEXT" ] && break
PAGE=$((PAGE+1))
done
\```

Filter with `status`, `country_code`, `search`, date ranges (see /management-api/businesses/list).

\## What survives on update vs what stays

\| Field | Behaviour |
\|---|---|
\| `display_name`, `metadata`, `tags` | Overwritten by PATCH |
\| `legal_name`, `registration_number`, `country_code` | Read-only after a verified KYB session (overrides logged in audit log) |
\| Aggregate counters, `features` map | Computed by Didit — never accept writes |

\## Failure modes

\- `409` on create — `vendor_data` exists; use PATCH.
\- `429` — rate limit; back off using `Retry-After`. Insert 100ms+ between calls for large batches.
\- `400` — bad country code or bad JSON. Log and continue.

\## Console fallback

The Business Console (Businesses → Import / Export) handles up to 100K rows for imports and 1M rows for exports with chunked async processing and an emailed signed download link.

\## Sources of truth

\- /management-api/businesses/create — POST /v3/businesses/create/ schema
\- /management-api/businesses/list — GET /v3/businesses/ pagination
\- /entities/businesses/data-model — mutable vs read-only fields
\- /integration/rate-limiting — rate limits
\- /integration/integration-prompt — canonical end-to-end prompt````

\</pre>



      
      

Вставьте в

Business Console поддерживает массовый импорт и экспорт сущностей Business: тот же процесс, что доступен для пользователей, адаптированный под поля компаний.> [!NOTE]
>
> Массовый импорт и экспорт здесь создают или обновляют только профили компаний. Они не восстанавливают исторические сессии KYB, отчёты из реестров, должностных лиц, бенефициарных владельцев и решения провайдеров. Для полной миграции KYB из другого провайдера или экспорта реестра см. [Импорт данных от другого провайдера](https://docs.didit.me/ru/sessions-api/import-verifications.md).## Импорт компаний из CSV### Когда использовать- **Миграция** с другого поставщика KYB.
- **Онбординг партнёров**: загрузка списка клиентов партнёра.
- **Дозаполнение метаданных**: обновление тегов, уровня или пользовательских полей у многих компаний сразу.### Столбцы шаблонаСкачайте шаблон в разделе *Компании → Импорт → Скачать шаблон*:| Столбец | Обязательный | Описание |
| - | - | - |
| `vendor_data` | Да | Ваш идентификатор компании. Уникален для каждого приложения. |
| `display_name` | Нет | Понятное человеку название. |
| `legal_name` | Нет | Юридическое наименование компании. Будет перезаписано данными, подтверждёнными реестром. |
| `registration_number` | Нет | Регистрационный номер компании. Будет перезаписан данными, подтверждёнными реестром. |
| `country_code` | Нет | ISO 3166-1 alpha-3. Запускает проверку опасных стран. |
| `status` | Нет | `ACTIVE`, `FLAGGED` или `BLOCKED`. По умолчанию `ACTIVE`. |
| `tags` | Нет | Теги через запятую. |
| `metadata_json` | Нет | JSON-строка с пользовательскими метаданными. |### Запуск импорта**1. Загрузите CSV***Компании → Импорт → Загрузить CSV*.**2. Проверьте предпросмотр**Некорректные строки выделяются. Дубликаты (существующий `vendor_data`) помечаются как обновления.**3. Запустите импорт**Didit обрабатывает строки асинхронно; ход выполнения отслеживается в разделе *Компании → История импорта*.**4. Проверьте результаты**Скачайте отчёт об ошибках для пропущенных строк.### Обновление или создание- Новый `vendor_data` создаёт новую компанию.
- Существующий `vendor_data` обновляет изменяемые поля и метаданные компании.
- Поля, полученные из реестра (`legal_name`, `registration_number`, `country_code`), **не** перезаписываются импортом после того, как сессия Верификации бизнеса (KYB) их заполнила.## Экспорт компаний в CSV### Когда использовать- **Аудиты комплаенса** и запросы регуляторов.
- **Синхронизация с хранилищем данных** для BI.
- **Отчётность для партнёров**: отфильтрованные представления компаний по стране, уровню или тегу.### Запуск экспорта1) Перейдите в раздел *Компании → Экспорт*.
2) Примените фильтры (статус, страна, диапазон дат, поиск, теги).
3) Выберите столбцы.
4) Отправьте запрос: Didit формирует экспорт асинхронно и отправляет подписанную ссылку для скачивания на вашу почту.Действуют ограничения по ролям: см. [роли и разрешения](https://docs.didit.me/ru/console/roles-permissions.md).## Журнал аудитаВсе импорты и экспорты записываются в журнал с указанием оператора, количества строк и временных меток. См. [журналы аудита](https://docs.didit.me/ru/console/audit-logs.md).## Следующие шаги> [card] [API создания компаний](https://docs.didit.me/ru/management-api/businesses/create.md)
>
> Массовое создание через программный интерфейс.> [card] [Хранение данных](https://docs.didit.me/ru/console/data-retention.md)
>
> Как долго импортированные данные сохраняются.> [card] [Журналы аудита](https://docs.didit.me/ru/console/audit-logs.md)
>
> Просмотр истории импорта и экспорта.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.