> ## 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.

# Importar e exportar empresas: CSV em massa

> Importe entidades Didit Business (KYB) por CSV e exporte a tabela de empresas. Disponível na Consola Didit Business. Faturação por chamada.



Prompt de importação e exportação de empresas em massa
        Copiar o prompt para a área de transferência



      
      

\<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>



      
      

Colar em

A Business Console suporta a importação e a exportação em massa de entidades de empresas, através do mesmo fluxo disponível para utilizadores, adaptado aos campos das empresas.> [!NOTE]
>
> A importação e a exportação em massa aqui criam ou atualizam apenas perfis de empresas. Não recriam sessões KYB históricas, relatórios de registo, administradores, beneficiários efetivos nem decisões de fornecedores. Para uma migração KYB completa a partir de outro fornecedor ou de uma exportação de registo, consulte [Importar dados de outro fornecedor](https://docs.didit.me/pt/sessions-api/import-verifications.md).## Importar empresas a partir de um CSV### Quando usar- **Migração** a partir de outro fornecedor de KYB.
- **Onboarding de parceiros**: carregue a lista de clientes de um parceiro.
- **Preenchimento retroativo de metadados**: atualize etiquetas, nível ou campos personalizados em muitas empresas.### Colunas do modeloTransfira o modelo em *Businesses → Import → Download template*:| Coluna | Obrigatória | Descrição |
| - | - | - |
| `vendor_data` | Sim | O seu identificador da empresa. Único por aplicação. |
| `display_name` | Não | Nome legível para as pessoas. |
| `legal_name` | Não | Nome legal da empresa. Será substituído pelos dados verificados do registo. |
| `registration_number` | Não | Registo da empresa. Será substituído pelos dados verificados do registo. |
| `country_code` | Não | ISO 3166-1 alpha-3. Aciona a verificação de países perigosos. |
| `status` | Não | `ACTIVE`, `FLAGGED` ou `BLOCKED`. Por predefinição, `ACTIVE`. |
| `tags` | Não | Etiquetas separadas por vírgulas. |
| `metadata_json` | Não | JSON serializado em texto para metadados personalizados. |### Executar a importação**1. Carregar o CSV***Businesses → Import → Upload CSV*.**2. Rever a pré-visualização**As linhas inválidas são destacadas. Os duplicados (`vendor_data` existente) são assinalados como atualizações.**3. Iniciar a importação**A Didit processa as linhas de forma assíncrona; o progresso é acompanhado em *Businesses → Import history*.**4. Rever os resultados**Transfira um relatório de erros para as linhas ignoradas.### Atualizar ou criar- `vendor_data` novo → cria uma nova empresa.
- `vendor_data` existente → atualiza os campos alteráveis e os metadados da empresa.
- Os campos derivados do registo (`legal_name`, `registration_number`, `country_code`) **não** são substituídos por importações depois de uma sessão de Verificação de empresas (KYB) os ter preenchido.## Exportar empresas para CSV### Quando usar- **Auditorias de conformidade** e pedidos de reguladores.
- **Sincronização com data warehouse** para BI.
- **Relatórios para parceiros**: vistas filtradas de empresas por país, nível ou etiqueta.### Executar uma exportação1) Aceda a *Businesses → Export*.
2) Aplique filtros (estado, país, intervalo de datas, pesquisa, etiquetas).
3) Escolha as colunas.
4) Submeta: a Didit gera a exportação de forma assíncrona e envia por e-mail uma ligação de transferência assinada.Aplicam-se restrições de função: consulte [funções e permissões](https://docs.didit.me/pt/console/roles-permissions.md).## Registo de auditoriaTodas as importações e exportações são registadas com o operador, o número de linhas e as datas e horas. Consulte [registos de auditoria](https://docs.didit.me/pt/console/audit-logs.md).## Próximos passos> [card] [API para criar empresas](https://docs.didit.me/pt/management-api/businesses/create.md)
>
> Criação em massa através da API.> [card] [Conservação de dados](https://docs.didit.me/pt/console/data-retention.md)
>
> Durante quanto tempo os dados importados são mantidos.> [card] [Registos de auditoria](https://docs.didit.me/pt/console/audit-logs.md)
>
> Consulte o histórico de importações e exportações.


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