Connettere Shopify a un sistema ERP o di evasione
I progetti di integrazione falliscono sulla proprietà, non sul protocollo. Una volta che due sistemi credono entrambi di possedere il numero di stock, ogni bug successivo è un sintomo di quella decisione non presa.
Quindi il primo deliverable non è codice. È una tabella.
La tabella di proprietà che scrivi per prima#
| Campo | Proprietario | Direzione |
|---|---|---|
| Dati master prodotto | Di solito ERP | ERP → Shopify |
| Prezzo | Di solito ERP | ERP → Shopify |
| Livello stock | Un sistema, mai entrambi | Magazzino → Shopify |
| Ordini | Shopify | Shopify → ERP |
| Stato evasione e tracking | Magazzino | Magazzino → Shopify |
| Record cliente | Dipende; decidi esplicitamente | Una sola direzione |
Le regole che lo mantengono sano#
- Un proprietario per campo, e l'altro sistema non lo scrive mai.
- Sincronizza in una direzione per campo. La sincronizzazione bidirezionale è dove vivono i loop.
- Usa un identificatore esterno stabile — SKU, non ID di database interni.
- Rendi tutto idempotente così una ripetizione è innocua.
- Registra ogni messaggio con il suo identificatore così un ordine contestato può essere tracciato end-to-end.
Lo stock è la parte difficile#
Lo stock è il campo che tutti vogliono scrivere e nessuno vuole possedere. Scegli il sistema più vicino ai beni fisici, di solito il magazzino, e lascia che sia autorevole. Shopify poi riflette quel numero piuttosto che negoziare con esso.
Le vendite eccessive sono quasi sempre un sintomo di due scrittori, non di latenza di sincronizzazione. Risolvi la proprietà prima di ottimizzare la frequenza.
Pianifica per i fallimenti noiosi#
Il magazzino va offline per un'ora; l'ERP rifiuta un indirizzo malformato; un prodotto esiste in un sistema e non nell'altro. Nessuno di questi è esotico, e tutti hanno bisogno di un comportamento definito e un posto dove un umano può vedere la coda.
Domande frequenti
Sincronizzazione in tempo reale o batch?
Ordini prontamente, stock frequentemente, dati prodotto su un programma. Tutto in tempo reale costa di più e migliora poco.
Dovremmo usare una piattaforma middleware?
Per diversi sistemi, sì — centralizza retry, log e mappatura. Per un'integrazione è spesso più parti in movimento che valore.
Chi risolve un messaggio bloccato alle 2 di notte?
Decidi prima del lancio. Un'integrazione senza proprietario e una coda visibile diventa perdita di dati silenziosa.
integrazione erp shopifyintegrazione evasione shopifysincronizzazione inventario shopifyintegrazione magazzino shopifymiddleware shopify