Exportar e depois importar um CSV é o método reflexo para mover produtos de uma loja para outra. Funciona em catálogos simples e perde muita coisa assim que as fichas ficam completas.
Este artigo compara os métodos. A duplicação de uma árvore completa é um trabalho vizinho, tratado à parte.
O que o CSV transporta corretamente
Sejamos precisos: a importação por ficheiro não é má, tem um perímetro.
Trata bem os campos simples: nome, referência, preço, descrição, peso, estado. Trata as associações por nome: categorias, marca, fornecedor, desde que essas entidades já existam do lado de destino.
É também a única ferramenta praticável para uma atualização em massa: mudar trezentos preços, corrigir descrições, ativar ou desativar um lote.
Num catálogo de produtos simples sem declinações, com uma imagem por ficha, a exportação e importação faz o trabalho.
O que ele perde
Cinco elementos, por ordem de gravidade.
As imagens. O formato espera endereços acessíveis publicamente, não ficheiros. Isso pressupõe que as imagens da loja de origem estejam acessíveis a partir do destino durante toda a importação, e o descarregamento de vários milhares de visuais é lento e frágil.
Sobretudo, as associações entre imagem e declinação não passam. As suas imagens ficam todas ligadas ao produto, sem relação com as variantes.
As declinações. Importam-se por um ficheiro distinto, com uma sintaxe de atributos a respeitar ao caráter. Os preços de impacto, as referências por combinação e os stocks por variante exigem cada um a sua coluna, e um erro de formato produz combinações parciais difíceis de detetar.
As características e os valores personalizados, que seguem a mesma lógica de sintaxe e falham em silêncio quando um valor não existe.
As posições nas categorias. Não constam do formato padrão. Todos os seus produtos chegam ordenados por identificador, o que apaga um trabalho de merchandising.
As relações entre produtos: acessórios, produtos associados, packs. Assentam em identificadores internos que não têm sentido nenhum na loja de destino.
Duplicação Multiloja de uma Categoria Completa: PrestaShop 8 e 9Copie uma categoria completa de uma loja para outra, num clique109,00€
O problema dos identificadores
É a dificuldade estrutural da transferência por ficheiro, e explica a maioria das falhas.
Um produto exportado leva o identificador da loja de origem. Na importação, são possíveis dois comportamentos: ou o sistema cria um produto novo com um identificador novo, o que parte todas as relações, ou tenta reutilizar o identificador, o que pode sobrepor-se a um produto existente.
As mesmas questões se colocam para as categorias, as marcas, os atributos e as características. Cada um tem o seu identificador próprio, e nada garante a correspondência entre as duas lojas.
A consequência prática: depois de uma importação CSV, sobra sempre um trabalho de reconstituição manual das associações. Em cem produtos, são várias horas.
A cópia direta
A alternativa consiste em nunca tirar os dados da base: a cópia faz-se internamente, com resolução das correspondências pelo caminho.
Quatro diferenças práticas.
As imagens continuam a ser ficheiros, copiados no disco com as suas associações às declinações intactas.
As declinações são reconstituídas com os seus atributos, criando os valores em falta do lado de destino se for necessário.
As correspondências são calculadas e conservadas: o sistema sabe que o produto de origem 1245 passou a ser o produto 3891, o que permite reconstituir as relações.
As posições são transmitidas, porque são lidas diretamente na estrutura.
A contrapartida: este método pressupõe que as duas lojas partilham a mesma instalação, o que acontece em multiloja mas não entre duas instalações distintas.
Que método conforme a situação
Três cenários.
Duas lojas de uma mesma instalação multiloja: cópia direta, sem hesitação. É o caso mais frequente e aquele em que a diferença é maior.
Duas instalações distintas, no mesmo alojamento: cópia direta possível com acesso às duas bases, ou transferência por interface programável, que preserva as estruturas.
Duas instalações sem ligação: o ficheiro continua a ser a única via simples. Preveja então a reconstituição manual e trate as imagens à parte.
O que verificar antes de copiar
Quatro preparações, seja qual for o método.
As entidades de destino existem. Marcas, fornecedores, atributos, características, transportadoras. Um produto copiado para uma loja sem os atributos correspondentes perde as declinações.
As línguas ativas correspondem. Copiar um produto trilingue para uma loja monolingue perde duas traduções, e o inverso deixa campos vazios.
As regras de imposto estão configuradas. Sem elas, os preços chegam sem IVA aplicável.
Existe uma cópia de segurança. Uma cópia de trezentos produtos mal calibrada não se desfaz produto a produto.
Depois da cópia
Cinco controlos sobre uma amostra de dez produtos.
As imagens aparecem, com as associações certas às declinações.
As declinações estão completas, com os seus stocks e os seus preços de impacto.
Os preços estão corretos com impostos incluídos.
Os produtos aparecem na loja, não só no back-office.
A pesquisa interna devolve-os, o que valida a regeneração do índice.
Duas operações a não esquecer depois de qualquer transferência: a regeneração das miniaturas para a nova loja e a do índice de pesquisa. Explicam a maior parte das situações em que os produtos parecem ausentes apesar de terem sido criados.
O caso da atualização regular
Questão distinta da transferência inicial, e muitas vezes mais importante ao longo do tempo.
Uma vez copiados os produtos, como manter a coerência quando a origem evolui?
Três abordagens. A partilha em vez da cópia, se os conteúdos devem manter-se idênticos: um único produto associado às duas lojas, alterado uma vez. A sincronização periódica sobre os campos escolhidos, tipicamente preço e stock, deixando as descrições divergir. Ou a independência assumida, se os catálogos vão separar-se.
A escolha faz-se no momento da cópia, não depois: voltar atrás obriga a refazer o trabalho.
O módulo Duplicação Multiloja de uma Categoria Completa realiza esta cópia direta no PrestaShop 8 e 9: transferência dos produtos com declinações, imagens e respetivas associações, posições nas categorias, criação das entidades em falta do lado de destino e conservação das correspondências de identificadores para reconstituir as relações.