<!-- Fonte: https://help.conectaai.io/assinantes/importacao · conecta/ai Central de Ajuda -->
> Suba sua base de contatos por CSV no assistente de 3 passos — upload, pré-visualização com validação e resultado — ou deixe o IXC sincronizar.

# Importação em massa (CSV)

Para começar com a base cheia, você sobe um arquivo **CSV** num assistente de **3 passos**: upload → pré-visualização → resultado. As colunas são mapeadas automaticamente e cada linha é validada antes de entrar.

## Onde fica

Botão **"Importar CSV"** no topo de [`/assinantes`](/assinantes), que abre `/assinantes/importar`. Exige a permissão `assinantes:edit`.

## O assistente, passo a passo

1. **Upload.** Arraste o arquivo `.csv` para a área indicada (ou clique para selecionar). Só arquivos `.csv` são aceitos. Se não tiver um pronto, clique em **"Baixar modelo CSV"** — o sistema gera um `modelo-assinantes.csv` com o cabeçalho e duas linhas de exemplo.
2. **Pré-visualização.** A tela mostra o arquivo e quantas linhas encontrou, o **mapeamento de colunas** detectado, um resumo de **Válidos** (verde) × **Com erros** (vermelho) e uma amostra das **5 primeiras linhas** com a coluna **Validação**. Confira tudo antes de confirmar.
3. **Resultado.** Clique em **"Importar {N} assinantes"** e a tela final mostra **"{importados} de {total} assinantes importados"**. Se houve erros, eles vêm listados linha a linha. Dali você pode **"Importar outro arquivo"** ou **"Ver assinantes"**.

## Colunas do arquivo

Cabeçalho na primeira linha. As colunas reconhecidas (o mapeamento **não diferencia maiúsculas de minúsculas**):

| Coluna | Obrigatória | Também aceita | Observações |
|--------|-------------|---------------|-------------|
| `nome` | Sim | `name` | Nome do contato |
| `telefone` | Sim | `phone` | Número de contato |
| `plano` | Não | `plan` | Nome do plano |
| `endereco` | Não | `endereço`, `address` | Endereço |
| `status` | Não | `connection_status` | `online`, `offline` ou `degraded` |
| `id_externo` | Não | `external_id`, `externalid` | ID no IXC/MK-Auth/SGP |

> **Nota.**
> **O mapeamento aparece na pré-visualização** como etiquetas `{coluna do CSV} → {campo}`. Colunas que o sistema não reconhece são simplesmente ignoradas — nada é importado às cegas.

## Validação de cada linha

Uma linha é marcada como inválida — e **não é importada** — quando:

- **"Nome é obrigatório"** — o campo veio em branco
- **"Telefone é obrigatório"** — o campo veio em branco
- **"Status inválido: X"** — o status não é `online`, `offline` nem `degraded`

Linhas inválidas não bloqueiam as demais: as válidas entram normalmente e você recebe a lista dos erros no fim. Corrija e reimporte só as que falharam, se quiser.

> **Atenção.**
> **A validação final é a do servidor.** A pré-visualização usa as 5 primeiras linhas como amostra; ao importar, o arquivo inteiro é revalidado no servidor — é esse resultado que vale.

## Alternativa: sincronizar pelo IXC

Se você usa **IXC**, não precisa de CSV: ao [conectar a integração](/configuracoes/integracoes/ixc), a base chega sincronizada e o selo **"Fonte: IXC"** aparece no topo de `/assinantes`. Nesse cenário o IXC é a fonte da verdade — prefira ajustar os dados lá.

## Veja também

- [Visão 360 do contato](/assinantes) — a lista onde os contatos importados aparecem
- [Perfil do contato](/assinantes/perfis) — cadastrar/editar um contato por vez
- [IXC (ERP do provedor)](/configuracoes/integracoes/ixc) — sincronização automática
- [Primeiro acesso e onboarding](/comecando/acesso-e-onboarding) — montando sua operação do zero
