Resposta rápidapara converter CSV para JSON, confira o encoding (UTF-8 ou latin1) e o delimitador (vírgula ou ponto e vírgula), garanta uma linha de cabeçalho com nomes únicos e use um conversor que transforme cada linha num objeto, com o cabeçalho virando chave. Deixe os valores como texto, a menos que o destino exija números, e valide o JSON antes de importar.
Quase todo sistema antigo exporta CSV. Quase toda API, site estático ou automação moderna espera JSON. No meio do caminho fica alguém copiando colunas à mão, ou um script escrito às pressas que quebra no primeiro "São Paulo" com acento.
Este guia mostra como converter CSV para JSON sem perder dados: o que acontece com o cabeçalho, quando um número deve continuar texto e quais cuidados evitam a importação que falha às 23h.
Para que você precisa converter CSV para JSON
Os casos mais comuns aparecem em equipes pequenas, sem desenvolvedor dedicado:
- Site ou catálogo estático: a lista de produtos sai da planilha e alimenta a página em JSON.
- Importação por API: a plataforma de loja, CRM ou e-mail marketing aceita JSON no corpo da requisição.
- Automação sem código: ferramentas de integração costumam trabalhar melhor com objetos do que com linhas soltas.
- Mock de desenvolvimento: o front-end precisa de dados reais para testar telas.
- Arquivo de configuração: tabela de frete, lista de lojas ou cupons que muda todo mês.
Se o caminho é o inverso, com um JSON que precisa abrir no Excel, veja como converter JSON para CSV.
Como o cabeçalho vira chave
O CSV é uma tabela em texto puro. A primeira linha, em geral, traz os nomes das colunas. Na conversão, cada linha seguinte vira um objeto, e cada célula recebe o nome da coluna correspondente.
Um CSV assim:
“ sku;nome;preco;cep_origem 0012;Caneca azul;39,90;01310 0013;Caneca verde;42,00;01310 “
vira uma lista de objetos, com as chaves sku, nome, preco e cep_origem repetidas em cada item. O arquivo final é um array: colchete no começo, colchete no fim, um objeto por linha.
O formato CSV é descrito na RFC 4180, e o JSON na RFC 8259. Conhecer as duas ajuda a entender por que aspas, quebras de linha dentro de célula e vírgulas no texto precisam de tratamento especial.
Regras para um cabeçalho que funciona
| Problema no cabeçalho | Efeito no JSON | Correção |
|---|---|---|
| Coluna sem nome | Chave vazia ou genérica | Dê nome a toda coluna |
| Dois nomes iguais | Um valor sobrescreve o outro | Use nomes únicos (preco_venda, preco_custo) |
| Espaços e acentos | Chaves como "Preço de venda " | Prefira preco_venda, sem espaço no fim |
| Linha de título acima do cabeçalho | O título vira o nome das chaves | Apague linhas acima do cabeçalho |
| Cabeçalho ausente | Cada linha vira lista, sem nomes | Acrescente a linha de nomes |
Nomes curtos, sem acento e em minúsculas são os mais fáceis de usar em código. Não é obrigatório, mas evita aspas e erros de digitação do outro lado.
Texto ou número: o cuidado que mais quebra integração
No CSV, tudo é texto. No JSON, existe diferença entre "39.90" (texto) e 39.9 (número). O sistema de destino pode exigir um ou outro.
O risco está nos campos que parecem números, mas não são:
- CEP, CPF e CNPJ com zero à esquerda:
01310vira1310se for tratado como número. - Códigos de produto (SKU) como
0012. - Chaves longas, como a chave de acesso da NF-e, com 44 dígitos.
- Telefones com DDD e prefixo.
Em JavaScript, segundo a documentação do MDN, números inteiros só são representados com exatidão até cerca de 9 quatrilhões (16 dígitos). Acima disso, o valor é arredondado sem aviso.
A regra segura
Por padrão, mantenha tudo como texto. Ligue a conversão de tipos só quando o destino pedir números, e use uma conversão conservadora: um valor só vira número se, escrito de novo, ficar idêntico ao original. Assim 42 vira número, mas 01310 continua texto, porque 1310 não é igual a 01310. Na mesma lógica, true e false viram booleanos, e células vazias viram null.
Atenção à vírgula decimal: 39,90, no padrão brasileiro, não é número para o JSON, que usa ponto. Se o destino exigir número, ajuste a coluna para 39.90 na planilha antes de exportar.
Pasta Mágica
Converta seus CSVs em JSON sem script
Delimitador e encoding detectados sozinhos, cabeçalho virando chave e JSON sempre em UTF-8. Funciona com vários arquivos de uma vez.
Encoding e delimitador: os dois erros silenciosos
O Excel em português costuma salvar CSV com ponto e vírgula como separador, porque a vírgula já é o separador decimal. Muitos sistemas estrangeiros esperam vírgula. Se o conversor usar o separador errado, cada linha vira uma única coluna gigante.
O encoding é o segundo problema. Arquivos gerados em Windows antigos usam Windows-1252 (latin1); sistemas web usam UTF-8. Lido do jeito errado, "Ação" aparece como "Ação". O guia sobre CSV com acentos errados explica o fenômeno em detalhe, e o de CSV com ponto e vírgula cobre o separador.
A boa prática é simples: detectar os dois na entrada e gerar o JSON sempre em UTF-8, que é o encoding exigido pela RFC 8259 para troca de JSON entre sistemas.
Passo a passo para converter CSV para JSON
O roteiro abaixo vale para qualquer ferramenta:
- Abra o CSV num editor de texto (não no Excel) e veja a primeira linha. Ela é o cabeçalho?
- Identifique o separador: vírgula, ponto e vírgula, tabulação ou barra vertical.
- Limpe a base: remova linhas vazias, duplicadas e espaços sobrando no começo e no fim das células.
- Revise os nomes das colunas: únicos, sem espaço no fim, de preferência sem acento.
- Decida sobre os tipos: texto para tudo ou conversão conservadora para números e booleanos.
- Converta e abra o JSON resultante para conferir o primeiro e o último objeto.
- Valide no destino com poucas linhas antes de importar a base inteira.
Antes e depois numa loja pequena
Pense numa loja que atualiza o catálogo do site toda segunda-feira. Antes, alguém exportava a planilha, abria um conversor online, colava o conteúdo, corrigia os acentos à mão e só então subia o arquivo. Isso levava cerca de 40 minutos, e o erro de "Caneca" virando "Caneca " com espaço quebrava a busca do site.
Depois, o processo virou duas etapas fixas: padronizar o CSV e converter. A pessoa solta o arquivo e baixa o JSON pronto. A revisão passou a ser só conferir o primeiro e o último produto.
Ferramentas para converter: qual escolher
| Opção | Bom para | Limitação |
|---|---|---|
| Conversor online simples | Um arquivo pequeno, sem dado sensível | Copiar e colar, sem lote, retenção incerta |
| Planilha com script | Quem já domina fórmulas e macros | Difícil de manter e de passar para outra pessoa |
| Script em Python ou Node | Desenvolvedor, integração recorrente | Exige ambiente, e encoding costuma dar trabalho |
| Automação em lote | Rotina semanal, vários arquivos, equipe sem programador | Depende de conta no serviço |
Se o CSV vem de uma planilha de importação de produtos, o guia de planilha de importação de produtos em CSV ajuda a montar as colunas antes da conversão.
Perguntas frequentes
Cada linha do CSV vira um objeto, e cada coluna vira uma chave desse objeto, com o nome tirado do cabeçalho. O arquivo final é uma lista (array) de objetos, um por linha da planilha.
Nesse caso, cada linha vira uma lista simples de valores, sem nomes de chave. Se o sistema de destino espera objetos com nomes, acrescente uma linha de cabeçalho antes de converter.
Depende da conversão. Por padrão, tudo sai como texto, que é o mais seguro. Com a conversão de tipos ligada, só viram número os valores que voltam idênticos ao serem escritos de novo, para que CEP, CPF e códigos com zero à esquerda continuem texto.
Quase sempre o CSV foi salvo em Windows-1252 (latin1) e foi lido como UTF-8, ou o contrário. O JSON deve sair em UTF-8. Uma ferramenta que detecta o encoding na entrada resolve a maior parte dos casos.
Na Pasta Mágica, cada CSV pode ter até 100 MB e 500 mil linhas nessa automação. Arquivos maiores podem ser divididos antes, mantendo o cabeçalho em cada parte.
Como automatizar isso com a Pasta Mágica
Na Pasta Mágica, converter CSV para JSON é uma etapa determinística, sem IA: o conteúdo do arquivo é lido por uma biblioteca de CSV tradicional, e o resultado é o mesmo toda vez que você roda.
- Crie sua conta em pastamagica.com.br/cadastrar e teste com um CSV real da sua rotina.
- No app, monte o fluxo: comece por Padronizar CSV para tirar espaços, linhas vazias e duplicadas, e encadeie CSV para JSON.
- Ajuste as opções: separador automático ou fixo, se o arquivo tem cabeçalho, se os tipos devem ser convertidos e se o JSON sai formatado (legível) ou compacto.
- Solte os arquivos. Cada um é conferido pelo conteúdo, não pela extensão. Arquivos lidos como latin1 geram um aviso, e o JSON sai sempre em UTF-8. Cada CSV pode ter até 100 MB e 500 mil linhas; acima disso, divida o arquivo antes.
- Acompanhe e baixe: um JSON por CSV, com o mesmo nome do arquivo original.
Cada automação mostra o custo em créditos antes de rodar, e se uma etapa falhar a reserva volta sozinha. Os limites de cada plano estão na tabela de preços.
Pasta Mágica
Padronize e converta seus CSVs num fluxo só
Limpe a base, transforme em JSON e baixe pronto para a API ou o site. Monte uma vez e reutilize toda semana.