← Biblioteca

Migrar Loja Integrada para Shopify sem apagar a loja: catálogo, 301 e DNS

Como migrar Loja Integrada para Shopify: exportar o XLSX, converter o CSV, mapear 301 no admin e apontar o DNS sem derrubar a loja no corte.

E-commerce e Shopify16 de setembro de 202611 min de leitura

O Resumo Direto (BLUF)

Migrar Loja Integrada para Shopify não é "exportar e torcer". A LI entrega a base em planilha XLSX pela Visão de Negócios > Relatórios. O relatório Exportar produtos existe no plano grátis. A Lista de URLs de produtos (a que importa para o Google) é de plano pago. O teto de cada planilha é 100 mil linhas (ajuda de exportação).

O 301 nativo da LI não resolve a virada de plataforma. Ele só redireciona produto dentro do mesmo domínio. Não cobre categoria, página institucional nem outro host (301 da LI). Quem aponta o domínio para a Shopify sem mapa de URL no admin dela espalha 404 no Google e no anúncio antigo.

A Shopify, do outro lado, tem URL canônica de produto em /products/{handle} (objeto product no Liquid), CSV com colunas próprias (guia de CSV) e 301 em Content > Menus > URL redirects, com importação em lote (redirecionamentos).

O método que reduz apagão: montar e testar a loja no *.myshopify.com, importar catálogo, validar checkout e ERP, subir os 301, só então apontar o DNS. O certificado TLS da Shopify pode levar até 48 horas (conexão de domínio, TLS). Isso não é "zero minuto fora do ar". É janela controlada, com a LI ainda viva até o fumaça passar.

Se a decisão ainda é "Tray ou Shopify" ou "Woo ou Shopify", os textos no ar são Tray vs Shopify e WooCommerce e risco. Este aqui assume que o destino já é Shopify.

Brief da sua loja entra por oailton.dev/contato.


A cena típica: a loja na LI "funciona", o tema não cabe mais no brief, o checkout tem etapa demais no celular, o ERP já é Bling ou Tiny, e alguém promete "a gente migra sexta e segunda você já vende na Shopify".

Sexta o catálogo sobe com variante duplicada. Segunda o domínio aponta. Terça o Search Console enche de 404. Quarta o PIX testa no myshopify.com e falha no domínio real porque o SSL ainda está pendente.

O checklist abaixo é a ordem que evita essa sequência. Não é marketing de "migração em um clique".


1. Auditoria na origem: o que você realmente tem

Antes de criar a loja Shopify, tire da LI o que a plataforma documenta, não o que a agência "acha que exporta".

Na ajuda de exportação:

  1. Visão de Negócios > Relatórios > Exportar produtos. Base completa, sem filtro de data, plano grátis. Arquivo por e-mail e na Central de Notificações.
  2. Lista de URLs de produtos, se o plano for pago. É a lista das URLs públicas, não um chute de slug.
  3. Exportar todos os clientes e Relatório de pedidos, no plano grátis.

O que isso não faz:

  • não gera CSV no formato Shopify
  • não mapeia variante no modelo Option1 Name / Option1 Value
  • não cria 301 no domínio novo

A API de produto deixa o contrato explícito: nome, apelido, sku, gtin, descricao_completa, url. O exemplo oficial de url é https://loja-exemplo.lojaintegrada.com.br/produto/{apelido}.html. A ajuda de URL diz outra coisa na prática do painel: você edita o trecho depois da barra, em minúsculas, com hífen. Há loja em /produto/slug.html e loja em /slug. Não assuma um padrão. Use a lista de URLs, o sitemap ou o Search Console.

Limpeza antes de exportar (na LI, não depois):

  • desative produto de teste, combo morto e SKU fantasma
  • um SKU por variante de verdade; SKU repetido quebra o ERP no destino
  • imagem que 404 na origem vai 404 na Shopify
  • peça em aberto fica na LI até faturar; não "migra pedido no meio do fluxo"

Clientes e pedidos históricos: exportar para arquivo e, se o ERP já for a fonte da operação, tratar o ERP como canônico. A Shopify nova não precisa nascer com cinco anos de pedido para vender amanhã.


2. Catálogo: XLSX da LI vira CSV da Shopify

A Shopify não lê a planilha da LI. O guia oficial de CSV é rígido: cabeçalho com nome exato, case-sensitive. Para criar produto, a coluna mínima é Title. Se houver variante, Handle entra junto. Para atualizar depois, Handle e Title.

Mapeamento que eu uso na mesa (LI → Shopify):

Origem (LI / API) Destino (CSV Shopify)
apelido (slug) Handle
nome Title
descricao_completa Body (HTML)
grade (cor, tamanho) Option1 Name / Option1 Value (e Option2, Option3)
preço de venda Variant Price
preço "de" Variant Compare-at Price
estoque da variante Variant Inventory Qty
sku Variant SKU
gtin Variant Barcode
URL da imagem Image Src

Regras que quebram importação se você inventar atalho:

  • o mesmo Handle agrupa as linhas da variante; handle diferente cria produto novo
  • produto sem opção usa Option1 Name = Title e Option1 Value = Default Title (é o padrão da Shopify, não um capricho)
  • mudar Option1 Value depois recria o ID da variante e pode soltar app e ERP que dependem desse ID (guia de CSV)
  • cabeçalho errado (compare at price no lugar de Variant Compare-at Price) faz o import recusar o arquivo

Ordem de teste:

  1. Cinco produtos: simples, com 2 opções, com imagem, com compare-at, com SKU/GTIN.
  2. Importar sem "overwrite".
  3. Abrir no tema, no celular, cada variante.
  4. Só então o catálogo inteiro.

Tema, coleção e menu nascem depois do catálogo estável. Importar 2 mil SKUs em cima de coleção mal montada é retrabalho, não velocidade.


3. URLs: o 301 que importa é o da Shopify

Na Shopify o produto canônico é /products/{handle} (Liquid product.url). Coleção é /collections/{handle}. Página é /pages/{handle}. O prefixo não se troca.

Na LI, o caminho antigo é o que o Google já indexou. Pode ser /vestido-floral, /produto/vestido-floral.html ou os dois ao longo dos anos. A ajuda de 301 da LI é clara no limite: o 301 dela não atravessa domínio. Depois que o A record aponta para a Shopify, esse 301 da origem deixa de responder. Quem precisa do clique antigo é o admin da Shopify.

Como montar o mapa:

  1. Fonte das URLs antigas: relatório pago Lista de URLs, sitemap da LI, ou cobertura do Search Console (páginas indexadas).
  2. Fonte das URLs novas: Handle do CSV, sempre prefixado com /products/.
  3. Uma linha por path relativo. Exemplo realista:
    • De: /produto/vestido-floral.html
    • Para: /products/vestido-floral
    • De: /vestido-floral
    • Para: /products/vestido-floral
  4. Repita para categoria (/categoria/... → /collections/...) e para página (/sobre → /pages/sobre). A LI não 301-a categoria; você precisa dessas linhas.

No admin Shopify: Content > Menus > URL redirects > Import (documentação). CSV com as colunas do modelo oficial (Redirect from, Redirect to). Teste 20 linhas com curl -I no *.myshopify.com antes do DNS. Se o 301 não dispara no subdomínio da Shopify, não vai disparar no domínio da marca.

Home, política e blog antigo: se existirem URL indexadas, entram no mesmo CSV. Sem linha, é 404. Sem 404 no dia 1, o orgânico não "se adapta sozinho".

Não prometa "100% do SEO preservado". O que se entrega é mapa 1:1 das URLs que você listou, enviado como 301. O Google reprocessa no tempo dele.


4. Destino: pagamento, frete e ERP antes do domínio

A loja no *.myshopify.com precisa vender de verdade antes do corte. Domínio bonito em cima de PIX quebrado é apagão comercial, não de DNS.

Checklist mínimo no destino:

  • gateway brasileiro instalado e pedido de teste pago (PIX e cartão), não só sandbox
  • CPF/CNPJ no checkout nativo e mapeado no ERP
  • cotação de frete com CEP real, dimensão de caixa e regra de frete grátis
  • Bling ou Tiny lendo SKU igual ao da planilha; a ajuda Bling de pedidos Shopify exige SKU igual para reconhecer o produto
  • e-mail transacional da Shopify com remetente autenticado (MX do correio da empresa não se apaga quando se muda o A do site)
  • pixel e conversão testados no domínio myshopify.com; no domínio final você confere de novo depois do SSL

Checkout externo (tirar o cliente da Shopify para "transparência") é o atalho que mais vejo em migração apressada. Ele troca um problema de campo por outro: evento de ads, uptime de terceiro e, em vários casos, conflito com o checkout nativo. Se a tese da loja é Shopify, o checkout fica na Shopify.


5. DNS: a LI continua no ar até o corte

O apontamento oficial de domínio de terceiros (manual):

  1. Em Settings > Domains > Connect existing domain, cadastre o domínio raiz (sem www).
  2. No DNS do registrador (Registro.br, Cloudflare em modo DNS only, ou o provedor que for):
    • A @ → 23.227.38.65
    • AAAA @ → 2620:0127:f00f:5::
    • CNAME www → shops.myshopify.com.
  3. Um A e um AAAA. A record velho da LI que sobrar divide o tráfego: uma hora cai na Shopify, outra na LI.
  4. Não ligue proxy (nuvem laranja) no Cloudflare para esse host. A página de troubleshooting lista proxy Cloudflare como causa de falha.
  5. Não mexa em MX, SPF, DKIM. Site e e-mail são records diferentes.

O certificado TLS nasce depois que o DNS aponta. A Shopify documenta até 48 horas (TLS). Durante "SSL pending", parte dos clientes vê aviso de certificado. Isso é janela, não "instantâneo".

Como encurtar a janela sem mentir:

  • baixe o TTL do A/AAAA alguns dias antes (300–600 s, se o registrador deixar)
  • corte em horário de baixo pedido, não em live de ads
  • mantenha a LI paga e no ar até o domínio servir HTTPS estável e o pedido de teste no 4G passar
  • se o corte falhar, o rollback é recolocar o A da LI. Por isso o IP antigo precisa estar anotado antes de apagar

"Zero minutos fora do ar" não é o que a documentação da Shopify garante. O que o método garante é: a loja nova já vendia no subdomínio; o DNS é o último passo; o rollback existe.


6. As 24 horas depois do apontamento

Quando o admin da Shopify marcar o domínio como conectado e o cadeado estiver válido:

  1. Pedido real no celular, rede 4G, PIX e cartão.
  2. Conferir NF no ERP com o mesmo SKU e o mesmo documento do checkout.
  3. Amostrar 15 URLs antigas do Search Console: cada uma deve 301 para o path novo, sem cadeia (A→B→C).
  4. Home, coleção principal e 5 PDPs no PageSpeed / no próprio celular, não só no Wi-Fi do escritório.
  5. Enviar o sitemap da Shopify no Search Console. A LI some do DNS; o Google ainda tem a lista velha.

Não cancele a LI no mesmo dia. Cancele quando o orgânico e o ads tiverem uma semana de 301 limpo e zero pedido órfão na origem.


7. Quando essa migração ainda não vale

Fique na LI se o site próprio é vitrine e a venda mora em marketplace, se o catálogo é pequeno e o tema atual cobre o brief, e se ninguém no time vai operar Liquid, app e ERP na Shopify.

Vá para a Shopify se o brief de marca já estourou o tema, se o checkout e o pixel precisam de controle, se a operação já depende de Bling/Tiny com SKU sério, e se você aceita pagar a janela de DNS com método, não com slogan.

A comparação de teto técnico com outra plataforma BR está no Tray vs Shopify. A conversa de risco de plugin está no WooCommerce.


Perguntas frequentes

A Loja Integrada redireciona sozinha para a Shopify?

Não. O 301 dela é produto no mesmo domínio (ajuda 301). Depois do DNS, quem responde é a Shopify. O mapa sobe em Content > Menus > URL redirects.

Consigo zerar o tempo fora do ar?

Não. Dá para deixar a Shopify vendendo no myshopify.com e cortar o DNS com TTL baixo. O TLS ainda pode levar até 48 horas (manual de domínio).

Preciso migrar todos os pedidos antigos?

Não para a loja vender. Pedido em aberto fecha na LI. Histórico mora no ERP ou na exportação. Migrar pedido no meio do fluxo é o jeito mais fácil de duplicar estoque.

A planilha da LI já serve na Shopify?

Não. A LI exporta XLSX no modelo dela (relatórios). A Shopify exige o CSV dela (guia).


Conclusão

A migração que não apaga a loja é prosaica: exportar o que a LI realmente exporta, traduzir para o CSV da Shopify, listar URL antiga de verdade, 301 no admin novo, pagamento e ERP testados no subdomínio, DNS por último, LI viva até o HTTPS e o 301 passarem no celular.

O que quebra é inverter essa ordem: apontar domínio com catálogo pela metade, ou confiar no 301 da origem depois que o A record já saiu.

Se quiser o mapa da sua loja (amostra de 20 URLs, amostra de 5 produtos com variante e o passo do DNS no seu registrador), abra oailton.dev/contato com a URL atual, o plano da LI e o ERP.

Fontes

  1. 01Exportação de produtos, clientes e pedidos sai de Visão de Negócios > Relatórios; Exportar produtos está no plano grátis; Lista de URLs de produtos é de plano pago; limite de 100 mil linhas por planilha Ajuda Loja Integrada
  2. 02A API da Loja Integrada devolve url no padrão /produto/{apelido}.html e campos apelido, sku, gtin, descricao_completa API Loja Integrada (documentação de produto)
  3. 03A URL do produto na Loja Integrada é o trecho depois da barra, em minúsculas, separado por hífen, sem espaço nem acento Ajuda Loja Integrada
  4. 04O 301 nativo da Loja Integrada só vale para produto no mesmo domínio; não redireciona categoria nem página institucional e não atravessa domínio Ajuda Loja Integrada
  5. 05CSV de produto Shopify: Title é a coluna mínima para criar; Handle entra se houver variantes; colunas de variante usam Option1 Name/Value, Variant SKU, Variant Price, Variant Compare-at Price, Variant Barcode Shopify Help Center
  6. 06product.url no Liquid é /products/{handle} Shopify.dev (objeto product)
  7. 07Redirecionamentos de URL ficam em Content > Menus > URL redirects, com importação por CSV Shopify Help Center
  8. 08Domínio de terceiros: A 23.227.38.65, AAAA 2620:0127:f00f:5::, CNAME www para shops.myshopify.com.; um A e um AAAA; certificado TLS pode levar até 48 horas Shopify Help Center
  9. 09TLS/SSL é emitido de graça ao conectar o domínio; até 48 horas para o certificado Shopify Help Center
  10. 10Proxy do Cloudflare no DNS do domínio da loja entra na lista oficial de causas de falha de conexão Shopify Help Center

Ailton Carvalho

Construo sistema web sob medida, painel interno, integrações e loja que vende no celular. Código entregue rodando, com alguém responsável depois.

Falar no WhatsApp

Relacionados