Ligar Shopify a um ERP ou sistema de fulfillment
Projetos de integração falham na propriedade, não no protocolo. Uma vez que dois sistemas acreditam ambos que possuem o número de stock, cada bug subsequente é um sintoma dessa decisão não tomada.
Por isso o primeiro entregável não é código. É uma tabela.
A tabela de propriedade que escreve primeiro#
| Campo | Proprietário | Direção |
|---|---|---|
| Dados mestre de produto | Normalmente ERP | ERP → Shopify |
| Preço | Normalmente ERP | ERP → Shopify |
| Nível de stock | Um sistema, nunca ambos | Armazém → Shopify |
| Encomendas | Shopify | Shopify → ERP |
| Estado de fulfillment e tracking | Armazém | Armazém → Shopify |
| Registo de cliente | Depende; decida explicitamente | Apenas uma direção |
As regras que o mantêm são#
- Um proprietário por campo, e o outro sistema nunca o escreve.
- Sincronize numa direção por campo. Sincronização bidirecional é onde vivem os loops.
- Use um identificador externo estável — SKU, não IDs internos de base de dados.
- Torne tudo idempotente para que uma repetição seja inofensiva.
- Registe cada mensagem com o seu identificador para que uma encomenda disputada possa ser rastreada ponta a ponta.
Stock é a parte difícil#
Stock é o campo que todos querem escrever e ninguém quer possuir. Escolha o sistema mais próximo dos bens físicos, normalmente o armazém, e deixe-o ser autoritativo. Shopify então reflete esse número em vez de negociar com ele.
Sobrevenda é quase sempre um sintoma de dois escritores, não de latência de sincronização. Corrija a propriedade antes de afinar a frequência.
Planeie para as falhas aborrecidas#
O armazém fica offline durante uma hora; o ERP rejeita uma morada mal formada; um produto existe num sistema e não no outro. Nenhuma destas é exótica, e todas precisam de um comportamento definido e um lugar onde um humano possa ver a fila.
Perguntas frequentes
Sincronização em tempo real ou em lote?
Encomendas prontamente, stock frequentemente, dados de produto num horário. Tudo em tempo real custa mais e melhora pouco.
Devemos usar uma plataforma de middleware?
Para vários sistemas, sim — centraliza retries, logs e mapeamento. Para uma integração é frequentemente mais peças móveis que valor.
Quem corrige uma mensagem presa às 2 da manhã?
Decida antes do lançamento. Uma integração sem proprietário e uma fila visível torna-se perda silenciosa de dados.
integração erp shopifyintegração fulfilment shopifysincronização inventário shopifyintegração armazém shopifymiddleware shopify