Menú Responsive con Submenús

Integrar Salsify com Magento: conector, API e catálogo

Integrar a Salsify com o Magento é fazer chegar à loja o conteúdo de produto preparado na plataforma de experiência de produto (PXM): descrições, atributos, imagens e ativos. Pode fazer-se com um conector existente ou com um serviço próprio que usa as APIs REST do Adobe Commerce e do Magento Open Source. A escolha depende do volume do catálogo e do controlo que a empresa quer ter.

Para a empresa, o ganho está em publicar uma só vez e ver o conteúdo atualizado na loja sem retrabalho. Sem essa ligação, cada correção na plataforma de conteúdo tem de ser repetida no Magento, e as diferenças acumulam-se. Na Avafa tratamos esta ligação na nossa área de integração de PIM com ecommerce.

Neste guia vê as duas formas de ligar, o que a documentação oficial diz sobre as APIs assíncronas do Adobe Commerce, como tratar produtos configuráveis, que dados vão em cada sentido, os riscos e uma lista de verificação antes de arrancar.

Como se liga a Salsify ao Magento?

Liga-se por um conector ou por um serviço próprio. Os dois escrevem no Adobe Commerce ou no Magento Open Source através da API; a diferença está em quem mantém o mapeamento e o tratamento de erros.

Segundo o comunicado de lançamento da Salsify, de 26 de agosto de 2021, existe um conector que liga o Salsify ProductXM ao Adobe Commerce e ao Magento Open Source e permite enviar o conteúdo de produto para a loja. O comunicado indica que, depois de o conteúdo ser publicado, as alterações são sincronizadas automaticamente, e que o conector foi desenvolvido com a Blue Acorn iCi. O comunicado não especifica a frequência da sincronização nem outros tipos de dados, pelo que isso deve ser confirmado antes de assumir o âmbito.

Quando o conector não cobre o seu modelo de dados, o caminho é um serviço próprio. Aí o Adobe Commerce oferece as APIs REST, incluindo os endpoints assíncronos e em bloco, que são os adequados a catálogos grandes.

Como funcionam as APIs assíncronas do Adobe Commerce?

Colocam cada pedido numa fila de mensagens e processam-nos mais tarde, um a um. Segundo a documentação oficial, o endpoint assíncrono interceta o pedido, coloca-o na fila e atribui-lhe um identificador único; depois um consumidor processa as mensagens.

  • suportam os métodos POST, PUT, DELETE e PATCH; o método GET não é suportado;
  • nas instalações próprias e no PaaS, a rota coloca o segmento async antes da versão da API, por exemplo no caminho dos produtos;
  • a resposta traz o identificador do lote e, para cada item, um estado, que neste momento é sempre aceite;
  • é preciso arrancar o consumidor de operações assíncronas, com o comando indicado na documentação, para que a fila seja processada.

O ponto de atenção é o estado «aceite». Significa que o pedido entrou na fila, não que o produto foi criado. A documentação diz que o campo de erros é, por agora, sempre falso e que os erros reais devolvem-se como exceções normais da API; por isso o serviço tem de consultar depois o estado do lote através do identificador e não pode assumir sucesso.

Outro ponto é o âmbito da loja. Na documentação, a rota inclui o código da vista de loja ou a palavra que designa todas as lojas. Sem código de loja, as atualizações aplicam-se apenas à loja por omissão. Se o seu catálogo tem várias línguas ou vistas, isto decide onde cada texto aparece.

Como tratar produtos configuráveis?

Cria-se o produto pai e, depois, os produtos simples que correspondem a cada variante. O tutorial oficial do Adobe Commerce sobre produtos configuráveis com a API REST usa como exemplo uma t-shirt cinzenta em três tamanhos: um produto configurável, um produto simples ligado para cada tamanho e uma opção de texto para o cliente. O tutorial tem cinco passos e todas as chamadas exigem um token de administrador.

Para a Salsify, isto implica decidir como se representam as variantes. Se a plataforma de conteúdo tem um produto por tamanho, o serviço agrupa-os no pai; se tem um produto pai com variantes, o serviço desdobra-os. Em ambos os casos, o código de cada variante tem de ser estável.

Conector ou serviço próprio?

O conector serve quando o seu modelo se ajusta ao dele; o serviço próprio serve quando precisa de controlo. Esta é a matriz que usamos para decidir.

CritérioConectorServiço próprio
ArranqueMais rápidoExige desenvolvimento
Modelo de dadosFechado ao do conectorÀ medida
Tratamento de errosDefinido pelo fornecedorDefinido por si
ManutençãoDo fornecedorDa equipa ou da agência

Comece por perguntar ao fornecedor o que o conector cobre. Se faltar algo essencial, como variantes complexas ou várias vistas de loja, o serviço próprio evita contornos improvisados.

Que dados vão em cada sentido?

Cada dado deve ter um único sistema mestre.

DadoSistema mestreSentido
Descrições e atributosSalsifySalsify para loja
Imagens e ativosSalsifySalsify para loja
CategoriasSalsify ou ERPOrigem para loja
Preços e stockERPERP para loja
EncomendasMagentoLoja para ERP

O erro mais comum é deixar a plataforma de conteúdo escrever preços ou stock. Se o ERP os governa, esses dados devem ter o seu próprio circuito.

Que riscos tem esta integração e como se evitam?

RiscoOnde aparecePrevenção
Consumidor paradoProdutos que não chegamMonitorizar a fila
Sucesso assumidoLotes com errosConsultar o estado do lote
Âmbito de loja erradoTexto na vista erradaIndicar a vista em cada pedido
Variantes instáveisProdutos duplicadosCódigo estável por variante
Dois mestres do mesmo dadoTextos diferentesMatriz de mestres escrita

O consumidor parado é o risco mais traiçoeiro, porque os pedidos continuam a ser aceites mas nada é processado. A documentação refere que é preciso arrancar o consumidor de operações assíncronas; num ambiente em produção, isso tem de estar sob supervisão e com alerta.

Os custos escondidos também contam: manutenção do mapeamento quando surgem atributos, testes a cada atualização do Adobe Commerce e acompanhamento da fila. Devem entrar no orçamento desde o início.

Como verificar que um lote foi processado?

Guarda-se o identificador devolvido em cada pedido e consulta-se depois o estado da operação. A documentação do Adobe Commerce refere esse identificador como a forma de encontrar o estado nos endpoints de estado das operações. O serviço deve registar o identificador, a hora e o número de itens enviados.

Uma rotina simples resolve a maioria dos casos: enviar o lote, esperar, consultar o estado e reenviar apenas os itens que falharam. Se a fila acumular atrasos, o alerta deve disparar antes de o cliente reparar que um produto novo não aparece na loja. Este controlo é pouco visível, mas é o que separa uma integração fiável de uma que só funciona nos dias bons.

Lista de verificação antes de arrancar

  1. Cada dado tem um sistema mestre escrito e aceite.
  2. Existe um identificador de produto comum, que não muda depois de criado.
  3. Está decidido se se usa o conector ou um serviço próprio.
  4. O consumidor de operações assíncronas está ativo e monitorizado.
  5. O serviço consulta o estado de cada lote e não assume sucesso.
  6. A vista de loja de cada texto está definida.
  7. Há um ambiente de teste com um lote representativo, incluindo configuráveis.
  8. Existe registo de erros e alguém que o lê todos os dias.

Se três ou mais respostas forem negativas, o projeto ainda não está pronto para desenvolvimento.

Como trabalhamos na Avafa

Começamos por mapear dados e responsáveis e só depois decidimos entre conector e serviço próprio. Desenhamos a consulta de estado dos lotes e a monitorização da fila desde o início. Para ver como abordamos estes projetos, comece pela página de integração de PIM com ecommerce.

Perguntas frequentes

A Salsify tem conector para o Magento?

Segundo o comunicado de lançamento de 2021, existe um conector para o Adobe Commerce e o Magento Open Source. Confirme com a Salsify o que cobre na sua versão.

O que significa o estado aceite numa API assíncrona?

Que o pedido entrou na fila. Não garante que o produto foi criado; é preciso consultar o estado do lote depois.

Preciso de um middleware?

Não necessariamente. Um serviço próprio pode bastar para dois sistemas. O middleware compensa quando a cadeia inclui ERP, marketplaces e outros canais.

Como crio um produto configurável?

Cria-se o produto pai e um produto simples por variante, e ligam-se. O tutorial oficial do Adobe Commerce mostra os passos com um exemplo em três tamanhos.

Posso começar por uma parte do catálogo?

Pode, e recomendamos. Uma marca ou uma categoria permite validar o mapeamento antes de abranger tudo.

Guias relacionados do mesmo cluster

Se a plataforma de destino ainda não está decidida, estes guias comparam a Salsify com outras opções:

Scroll to Top
Gratuito

Diagnóstico gratuito do seu catálogo ERP/PIM

    Indique o seu ERP/PIM e a sua loja online e preparamos um diagnóstico gratuito de como o ACE pode gerar e sincronizar o conteúdo do seu catálogo.