CSV de produtos para WooCommerceDesenvolvimento e personalização

Um script em Python que transforma o seu arquivo de produtos em um CSV para o importador de produtos nativo do WooCommerce

Normalmente fica pronto em 15 minutosAjustes incluídosControle de qualidade
Pacotes
Pagamento protegidoDetalhes
  • Os ajustes previstos no pacote são gratuitos.
  • Se você não responder em 3 dias após a entrega, o trabalho é aprovado automaticamente.

O dinheiro fica reservado no pagamento e só é liberado quando você aprova o trabalho.

Um script em Python que transforma o seu arquivo de produtos em um CSV para o importador de produtos nativo do WooCommerce

Exemplo de resultado

Exemplo do pacote Padrão

Juntando os arquivos mensais de vendas de 9 lojas em um só relatório do Excel

Como ele é executado

python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO  Pasta: sales/2026-10, 9 arquivos encontrados
2026-11-02 09:14:03 INFO  shop-01.csv: 1.284 linhas
2026-11-02 09:14:04 INFO  shop-02.xlsx: 967 linhas
2026-11-02 09:14:04 WARN  shop-07.csv: 3 linhas sem preço ignoradas (linhas 88, 412, 913)
2026-11-02 09:14:05 INFO  Pronto: 10.412 linhas -> report-2026-10.xlsx (abas "Vendas" e "Totais")

Configurações, não código

Os nomes das colunas de cada loja ficam no settings.ini, então uma loja nova ou uma coluna renomeada é só uma linha ali:

[columns]
date = Data, Data da venda, Dia
product = Produto, Item, Descrição
quantity = Qtd, Quantidade, Unid
price = Preço, Preço unitário

Um trecho do código

def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
    """Lê o arquivo de uma loja e dá a ele os nomes de colunas do relatório."""
    table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
    renamed = {}
    for name, variants in columns.items():
        found = next((c for c in table.columns if c.strip() in variants), None)
        if found is None:
            raise ReportError(f"{path.name}: nenhuma coluna para '{name}' (procuradas: {', '.join(variants)})")
        renamed[found] = name
    table = table.rename(columns=renamed)[list(columns)]
    table["shop"] = path.stem
    return table

Arquivos: um arquivo ZIP com merge_sales.py (310 linhas), settings.ini, requirements.txt e um README que explica como instalar o Python, como rodar o script e o que significa cada mensagem do registro. O cliente roda o script no próprio computador.

Cliente: uma pequena rede de 9 papelarias; cada loja envia as vendas do mês em um arquivo CSV ou Excel, com nomes de colunas um pouco diferentes. Tarefa: um script que lê todos os arquivos de uma pasta, deixa as colunas em um só formato e grava um único relatório do Excel com todas as vendas e uma aba de totais por loja.

O cliente e todos os dados são fictícios.

Sobre este serviço

O WooCommerce tem o próprio importador de produtos, mas ele espera as próprias colunas: Type, SKU, Name, Regular price, Categories com > entre os níveis, imagens como links e, para roupas ou outras opções, um produto pai mais uma linha por variação ligada por Parent. Este script em Python transforma a tabela de preços do seu fornecedor, uma exportação de outra loja ou a sua própria planilha nesse arquivo. Ele mapeia as suas colunas, monta as categorias e, a partir do Padrão, produtos variáveis com atributos como tamanho e cor, e lista as linhas sem preço, SKU ou imagem. As imagens precisam estar em links que o seu site consiga baixar. Você mesmo roda o importador no painel do WordPress; nunca entramos no seu site. Teste antes com alguns produtos e mantenha um backup da sua loja.

O que está incluído

  • O que você recebeUm arquivo ZIP com o script em Python, um README com instruções passo a passo e, a partir do Padrão, um arquivo de configurações com o mapa de colunas; o código também aparece na página do pedido.
  • As colunas do WooCommerceComo o importador de produtos nativo as espera
  • Variações ligadasA partir do Padrão, produtos pai com tamanhos e cores
  • Categorias aninhadasRoupas > Feminino > Vestidos, como o WooCommerce lê
  • Problemas listadosLinhas sem preço, SKU ou imagem são informadas
  • Código legívelCom comentários, fácil de incluir uma coluna depois

Como funciona

  1. 1
    ArquivosVocê envia uma amostra do seu arquivo de produtos e diz o que vai onde
  2. 2
    CódigoEscrevemos o script e o guia para rodá-lo
  3. 3
    TesteVocê importa alguns produtos em uma cópia da sua loja ou em um site de teste
  4. 4
    AjustesVocê pede ajustes dentro do seu pacote e envia qualquer mensagem de erro

O que precisamos de você

De 20 a 30 linhas do seu arquivo de produtos, como as opções estão escritas nele (uma linha por tamanho ou os tamanhos em uma célula), a sua árvore de categorias, onde estão as imagens (links ou arquivos já na biblioteca de mídia do WordPress) e como os preços devem ser definidos. Uma exportação de alguns produtos da sua loja WooCommerce ajuda as colunas a baterem exatamente. O seu sistema: Windows, macOS ou Linux.

Vamos perguntar:

  • Que arquivo você tem hoje?
  • Os seus produtos têm opções?
  • Qual é a sua árvore de categorias?
  • Onde estão as imagens?

Compare os pacotes

PacotesBásicoProdutos simplesR$ 89PadrãoProdutos variáveisR$ 184PremiumFerramenta de importação de produtosR$ 373
Prazo1 dia2 dias3 dias
Ajustes123
Códigoaté 150 linhasaté 400 linhasaté 1.000 linhas
Arquivos de código1até 3até 8
Arquivo de configuraçõesNãoSimSim
Mensagens de erro claras e um logNãoSimSim
Opções de execução e guia para rodar de forma agendadaNãoNãoSim
Guia de instalação e execução (README)SimSimSim
LinguagemPythonPythonPython
Fazer pedido BásicoFazer pedido PadrãoFazer pedido Premium

Pagamento protegido

Você paga ao fazer o pedido, mas o dinheiro só é liberado pelo trabalho aprovado.

  • Preço fixoO preço do pacote não muda depois que você paga.
  • O dinheiro fica reservadoAo pagar, o valor fica apenas reservado. Ele só é repassado quando você aprova o trabalho.
  • Verificado antes da entregaCada resultado passa por um controle de qualidade antes de chegar até você, e você o vê na página do pedido antes de aprovar.
  • Ajustes gratuitosPeça ajustes dentro do seu briefing quantas vezes o pacote permitir.
  • Aprovação após 3 diasSe em 3 dias após a entrega você não aprovar o trabalho nem pedir ajustes, ele é aprovado automaticamente. Se você escrever no chat do pedido após a entrega, o pedido fica em espera; depois que respondermos, podemos reiniciar a contagem de 3 dias e avisaremos no chat.
  • Refazer ou reembolso totalSe o resultado não corresponder ao seu briefing e os ajustes não resolverem, ou se o trabalho levar mais que o dobro do prazo, escreva no chat do pedido: refazemos o trabalho ou reembolsamos o pagamento integralmente.
Como funciona →

Perguntas e respostas

Preciso de um plugin de importação pago?

Não. O arquivo é feito para o importador de produtos que vem com o WooCommerce (Produtos, depois Importar). Outros plugins de importação usam outros layouts; avise se você usa um.

Ele pode atualizar produtos existentes?

Sim: o WooCommerce pode atualizar produtos cujo SKU ou ID bate quando você marca a opção de atualização na importação. O Premium prepara arquivos de atualização por SKU a partir da nova tabela de preços do seu fornecedor.

E se a importação der errado?

Por isso você testa antes com alguns produtos, de preferência em uma cópia da loja, e mantém um backup. O importador não consegue desfazer uma importação sozinho.

Vocês vão importar os produtos por mim?

Não. Nunca entramos no seu site. Você mesmo roda o importador, e o README mostra cada passo.

Não encontrou a resposta?

Pacotes