IVAN CAPPONI.NET/C# · Microsoft Azure

Stock · Prezzi · Sync

Sincronizzare stock e prezzi tra ERP e canali di vendita

Ultimo aggiornamento: giugno 20269 min di letturaIntermedio

Sincronizzazione di stock e prezzi tra ERP e canali di vendita
Tenere allineati scorte e prezzi tra ERP, shop e marketplace senza overselling.

Stock e prezzi sono i dati più "vivi" del commercio multicanale: cambiano in continuazione e un disallineamento si traduce subito in vendite annullate o margini sbagliati. Sincronizzarli bene tra ERP e canali è una delle attività più critiche di un'integrazione.

Il problema dell'overselling

Se lo stesso prodotto è in vendita su più canali, lo stock reale è condiviso ma i canali lo "vedono" con ritardo. Senza accorgimenti si vende più del disponibile. Le difese principali sono:

  • buffer di sicurezza: pubblicare una quantità leggermente inferiore al reale;
  • aggiornamenti rapidi: propagare le variazioni in tempi brevi;
  • riserve: scalare lo stock all'ordine, non solo alla spedizione.

Listini per canale

Il prezzo non è un numero unico: può variare per canale, valuta, promozione o regole di marketplace. Conviene gestire listini per canale derivati da un prezzo base con regole (markup, arrotondamenti, prezzi minimi), così una variazione a monte si propaga in modo coerente.

Push vs polling

ApproccioProContro
Event-driven (push)Propagazione rapida, solo i deltaRichiede eventi affidabili dall'ERP
Polling periodicoSemplice, robustoRitardo e carico anche senza cambi

La soluzione migliore è spesso ibrida: eventi per i cambiamenti immediati e un ciclo di riconciliazione periodico che recupera eventuali disallineamenti.

Lavorare per delta

Inviare l'intero catalogo a ogni ciclo è costoso e satura le API. Conviene calcolare i delta (cosa è cambiato rispetto all'ultimo stato pubblicato) e inviare solo quelli, mantenendo uno "stato noto" per canale.

Architettura su Azure

Una sincronizzazione near-real-time su Microsoft Azure può combinare: cattura dei cambi dall'ERP, una coda di eventi di stock/prezzo, worker per canale che applicano buffer e listini e chiamano le API marketplace con retry, e una Function schedulata per la riconciliazione completa periodica. Idempotenza e "ultimo stato vince" evitano aggiornamenti fuori ordine.

Errori comuni

  • nessun buffer di sicurezza e overselling sui canali lenti;
  • prezzo unico che ignora regole e valute per canale;
  • solo polling lento, senza propagazione rapida;
  • aggiornamenti applicati fuori ordine senza versione/timestamp.

Conclusione

Sincronizzare stock e prezzi è una questione di velocità e coerenza: buffer contro l'overselling, listini per canale, lavorazione per delta e un approccio ibrido push + riconciliazione. Così i canali restano allineati al magazzino reale, senza sorprese su disponibilità e margini.