> ## 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 i exportar empreses: CSV en massa

> Importa en massa entitats d'empresa de Didit (KYB) des de CSV i exporta tota la taula. Disponible a la Consola de Didit. Facturació per crida.



Prompt d'importació / exportació massiva d'empreses
        Copia el prompt al porta-retalls



      
      

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



      
      

Enganxa a

La Business Console admet la importació i l'exportació massives d'entitats d'empresa: el mateix flux que està disponible per a usuaris, adaptat als camps d'empresa.> [!NOTE]
>
> La importació i l'exportació massives aquí només creen o actualitzen perfils d'empresa. No recreen sessions KYB històriques, informes de registre, administradors, titulars reals ni decisions del proveïdor. Per a una migració KYB completa des d'un altre proveïdor o d'una exportació de registre, consulta [Importar dades d'un altre proveïdor](https://docs.didit.me/ca/sessions-api/import-verifications.md).## Importar empreses des d'un CSV### Quan utilitzar-ho- **Migració** des d'un altre proveïdor KYB.
- **Alta de socis**: carrega la llista de clients d'un soci.
- **Omplir metadades**: actualitza etiquetes, nivell o camps personalitzats en moltes empreses.### Columnes de la plantillaDescarrega la plantilla des de *Businesses → Import → Download template*:| Columna | Obligatori | Descripció |
| - | - | - |
| `vendor_data` | Sí | El teu identificador de l'empresa. Únic per aplicació. |
| `display_name` | No | Nom llegible per a humans. |
| `legal_name` | No | Nom legal de l'empresa. Serà sobreescrit per les dades verificades del registre. |
| `registration_number` | No | Número de registre de l'empresa. Serà sobreescrit per les dades verificades del registre. |
| `country_code` | No | ISO 3166-1 alpha-3. Activa la comprovació de països de risc. |
| `status` | No | `ACTIVE`, `FLAGGED` o `BLOCKED`. Per defecte, `ACTIVE`. |
| `tags` | No | Etiquetes separades per comes. |
| `metadata_json` | No | JSON convertit en cadena per a metadades personalitzades. |### Executar la importació**1. Puja el CSV***Businesses → Import → Upload CSV*.**2. Revisa la previsualització**Les files no vàlides es ressalten. Els duplicats (`vendor_data` existent) es marquen com a actualitzacions.**3. Inicia la importació**Didit processa les files de manera asíncrona; se'n fa el seguiment a *Businesses → Import history*.**4. Revisa els resultats**Descarrega un informe d'errors per a les files omeses.### Actualitzar o crear- Nou `vendor_data` → crea una nova empresa.
- `vendor_data` existent → actualitza els camps modificables i les metadades de l'empresa.
- Els camps derivats del registre (`legal_name`, `registration_number`, `country_code`) **no** se sobreescriuen amb les importacions després que una sessió de Verificació d'empreses (KYB) els hagi omplert.## Exportar empreses a CSV### Quan utilitzar-ho- **Auditories de compliment** i sol·licituds de reguladors.
- **Sincronització amb el magatzem de dades** per a BI.
- **Informes per a socis**: vistes filtrades d'empreses per país, nivell o etiqueta.### Executar una exportació1) Ves a *Businesses → Export*.
2) Aplica filtres (estat, país, interval de dates, cerca, etiquetes).
3) Tria les columnes.
4) Envia la sol·licitud: Didit genera l'exportació de manera asíncrona i t'envia per correu electrònic un enllaç de descàrrega signat.S'apliquen restriccions de rol: consulta [rols i permisos](https://docs.didit.me/ca/console/roles-permissions.md).## Registre d'auditoriaTotes les importacions i exportacions es registren amb l'operador, el nombre de files i les marques de temps. Consulta [registres d'auditoria](https://docs.didit.me/ca/console/audit-logs.md).## Següents passos> [card] [API per crear empreses](https://docs.didit.me/ca/management-api/businesses/create.md)
>
> Creació massiva programàtica.> [card] [Conservació de dades](https://docs.didit.me/ca/console/data-retention.md)
>
> Quant de temps persisteixen les dades importades.> [card] [Registres d'auditoria](https://docs.didit.me/ca/console/audit-logs.md)
>
> Revisa l'historial d'importacions i exportacions.


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