In E-commerce

Le notifiche in tempo reale (webhook) negli e-commerce

La nuova release di Semplisio 1.5 include il tipo di notifiche che, al verificarsi di un determinato evento in una applicazione, partono in tempo reale, senza attenderne la sincronizzazione: i cosiddetti webhook.

I webhook sono un meccanismo di comunicazione integrativo rispetto a quello delle API, che permette ad un sistema terzo di ricevere notifiche in tempo reale di eventi accaduti su un sistema primario, senza fare chiamate periodiche, ma semplicemente specificando un URL da notificare.

In termini più semplici, diverse app online possono “parlarsi” tra loro e scambiarsi informazioni in tempo reale, nel momento in cui si verifichi un evento prestabilito. Ciò grazie all’intervento di applicativi forniti da terze parti. 

 

Introduzione al meccanismo dei webhook

I webhook, o notifiche in tempo reale, sono invii di richieste http, definiti dall’utente, che vengono attivati da eventi specifici. Contengono un messaggio e vengono inviati ad un URL univoco, generalmente l’indirizzo della app.

In altri termini, sono piccoli pezzi di codice che sono collegati a un’applicazione web e che, al verificarsi di determinate azioni, vengono inviati ad un URL specificato dall’utente, sotto forma di una richiesta http. È possibile anche configurare un evento su un sito, per attivare un’azione su un altro.

Affinché i webhook, o notifiche in tempo reale, funzionino, è necessario registrare un URL sul quale indirizzare l’avviso ogni volta che si verifica l’evento associato. La rotta creata dovrebbe contenere la logica che verrà eseguita ogni volta che si verifica l’evento.

In tal modo, un sistema non deve conoscere la natura di ciò che deve essere eseguito, deve solo tenere traccia dei percorsi da notificare

L’applicazione che riceve le informazioni dall’URL specificato, non solo sa cosa è successo, ma anche come deve reagire all’evento. E questo si traduce in un potente strumento di automazione. Soprattutto per gli e-commerce.

 

I webhook per gli e-commerce

In presenza di un determinato evento, che va individuato di volta in volta, le app possono, come abbiamo visto, inviarsi messaggi e informazioni in modo automatico e in tempo reale. I webhook hanno, quindi, un gran numero di possibili usi all’interno dei processi digitali online.

I webhook, o notifiche in tempo reale, sono perciò strumenti ideali per sapere quali operazioni avvengono all’interno di un’applicazione, ed in particolare in un e-commerce. Un range di utilità molto vasto, che, in generale, consente di:

  • Conoscere gli eventi che si sono verificati all’interno di una determinata app.
  • Sincronizzare automaticamente tutti i dati con tutte le altre applicazioni web utilizzate.
  • Aggiornare alcune funzionalità delle applicazioni a seconda delle necessità.
  • Connettere e comunicare diverse applicazioni in modo che un evento in una, attivi un’azione in un’altra.

Come è facilmente intuibile, si tratta di funzionalità utilissime per chi gestisce un e-commerce, poiché sono appositamente pensate per semplificare e rendere più fluidi molti passaggi del processo di vendita e post vendita, nonché molti altri workflow accessori legati alla vendita online ed al nurturing. 

Che si tratti di Shopify, WooCommerce, PrestaShop o altre piattaforme e-commerce, l’impostazione di un webhook, o notifica in tempo reale, può riguardare operazioni fondamentali come:

  • Ricevere un avviso nel momento in cui un cliente effettua un acquisto. In questo modo è possibile automatizzare l’invio della copia dell’ordine dall’e-commerce al gestionale, senza più tempi di latenza o interventi manuali.
  • Ricevere un avviso nel momento in cui un cliente inserisce un prodotto nel carrello.
  • Ricevere un avviso nel momento in cui un cliente elimina un prodotto dal carrello.
  • Gestire istantaneamente un carrello abbandonato con una operazione di e-mail marketing.
  • Ricevere immediatamente le notifiche di pagamento dei clienti da PayPal o da altri gestori di pagamento.
  • Sincronizzare i dati dei clienti dal modulo e-commerce con le altre applicazioni: se un utente cambia il proprio indirizzo email, il webhook trasferisce la modifica anche nel CRM.

Ovviamente, le operazioni di e-mail marketing associabili alle notifiche in tempo reale sono veramente tantissime.

Differenze tra notifiche in tempo reale (webhook) e API

Molto spesso i webhook vengono confusi con le API, oppure vengono menzionati come sinonimi, nello stesso contesto. 

Sebbene siano elementi simili, che portano ad ottenere risultati simili, in realtà le differenze sono importanti.

La differenza principale tra webhook e API è sottile, poiché entrambi i servizi servono a spostare i dati tra le app: mentre per le API è necessaria una chiamata, seguita da una risposta, per i webhook, non è necessaria alcuna richiesta: i dati sono inviati nel momento in cui si verifica il famoso evento “scatenante”.

La tempestività degli aggiornamenti è un fattore rilevante perché le app, oggi, sono sempre più integrate con i servizi di terze parti. La possibilità di prendere decisioni è quindi strettamente legata alla disponibilità di dati aggiornati.

In effetti, le API sono spesso soluzioni più flessibili e indipendenti. Tuttavia, assumendo che gli sviluppatori le rendano pubbliche, a volte il loro utilizzo non è sempre automatico, come in progetti molto piccoli, o se non si hanno le risorse tecniche per gestirle.

In questi casi, l’utilizzo di un webhook può essere più conveniente, sotto molti punti di vista. 

Con le API, i dati vengono ottenuti tramite un processo noto come Polling.

Il polling si verifica quando l’applicazione effettua periodicamente una richiesta ad un server API, per verificare la presenza di nuovi dati. 

Con i webhook non è necessario eseguire il polling dei dati come in un’API. Questo perché i dati vengono trasmessi alle altre applicazioni MENTRE si verifica l’evento.

Sicurezza delle notifiche webhook

Le notifiche in tempo reale, o webhook, forniscono dati di URL accessibili al pubblico. Ciò significa che chiunque sia su internet può inviare richieste HTTP al proprio endpoint. Fortunatamente, esistono diversi modi per proteggere i dati:

  • Uso (ormai un obbligo, se si vuole essere indicizzati su Google) del criptaggio HTTPS. I dati così inviati e ricevuti, vengono crittografati prima di essere inviati su internet e de-crittografati solo dalla parte ricevente. Nessuno, in mezzo al processo, può accedere a ciò che si sta inviando.
  • La scelta di un segreto. La maggior parte dei provider di notifiche consente di trasmettere un “segreto”. 
  • Accettare solo richieste firmate. Se si utilizza un firewall per accedere all’endpoint o si è in grado di limitare il traffico HTTP da indirizzi IP specifici, si possono anche filtrare gli IP dai quali consentire di inviare i dati dell’endpoint. Soluzione complessa, ma valida.

In conclusione, entrambe le tecnologie sono estremamente utili, in epoca di interconnessione. Se desiderate saperne di più, contattateci!

Recommended Posts
Scrivici
Hai bisogno di aiuto?
Ciao, come possiamo aiutarti?