E-commerce · messaggistica
App di marketing WhatsApp per Shopify: campagne, recupero dei carrelli e inbox del team nel pannello di controllo del negozio
Un'app Shopify che gestisce campagne WhatsApp, recupero dei carrelli abbandonati, segmenti di clienti e una inbox condivisa per i negozi online, con invii massivi a cadenza controllata, webhook idempotenti e attribuzione del fatturato.
- Settore
- E-commerce · messaggistica
- Tecnologie
- Remix · TypeScript · Prisma
La sfida
Un cliente attivo nella messaggistica voleva che i commercianti Shopify potessero fare marketing su WhatsApp senza uscire dal pannello di controllo del negozio: inviare campagne a segmenti, recuperare i carrelli abbandonati, confermare gli ordini in contrassegno e rispondere ai clienti da un'unica inbox. WhatsApp aggiunge vincoli propri. I template dei messaggi devono essere approvati prima dell'uso, l'invio ha limiti di frequenza e una campagna che continua a inviare nonostante gli errori spreca denaro e danneggia la reputazione del mittente. Inoltre i webhook del negozio arrivano più di una volta, e un duplicato non deve mai trasformarsi in un secondo messaggio.
La soluzione
Abbiamo costruito un'app Shopify integrata su Remix, con un backend basato su code. I webhook del negozio vengono deduplicati prima di qualsiasi altra operazione. I segmenti nascono da uno scoring RFM e da un motore di regole. Le campagne partono a lotti tramite worker BullMQ, con una cadenza adattata ai limiti della piattaforma di messaggistica, e il sistema di invio sorveglia i propri risultati: si mette in pausa se il credito è basso o se il tasso di errore supera una soglia, rispetta le ore di silenzio e i tempi di attesa per contatto, e mostra l'avanzamento in tempo reale. Gli ordini che seguono un messaggio vengono attribuiti a quel messaggio, così i commercianti vedono il fatturato per campagna e per flusso.
Come si collega
- 01 Webhook del negozio
- 02 Deduplica e coda
- 03 Segmenti RFM
- 04 Campagne e carrelli
- 05 Inbox del team
- 06 Attribuzione del fatturato
Cosa abbiamo realizzato
- Invio massivo a lotti con cadenza controllata, avanzamento in tempo reale, ore di silenzio, tempi di attesa per contatto e pausa automatica con credito basso o tasso di errore elevato
- Recupero dei carrelli abbandonati in tre passaggi con codici sconto, e conferma degli ordini in contrassegno
- Scoring RFM dei clienti, segmenti predefiniti e un motore di regole personalizzabile
- A/B test con un test di significatività prima di dichiarare un vincitore
- Raccomandazioni di prodotto basate sugli articoli acquistati insieme, più avvisi di ritorno disponibilità e di calo di prezzo
- Inbox condivisa del team con assegnazione, risposte predefinite, sondaggi di soddisfazione e orari di servizio
- Flussi di chatbot, risposte automatiche per parola chiave e un editor di template WhatsApp con anteprima in tempo reale
- 11 estensioni per Shopify Flow e 4 blocchi per la vetrina: pulsante chat, pulsante di condivisione, popup e modulo di opt-in
- Circa 2'700 test unitari e 170 test end-to-end
Funzionalità
- Idempotenza dei webhook con una finestra di deduplicazione di 24 ore in Redis
- Circuit breaker e rate limiter attorno all'API di messaggistica, nuovi tentativi con attesa esponenziale per ogni tipo di job e una dead-letter queue
- Firme verificate sui webhook in entrata; token di accesso cifrati a riposo con AES-256-GCM
- Nessun numero di telefono nei payload delle code; limiti di richieste contro enumerazione e abusi; protezione SSRF sulle chiamate in uscita
- Dati separati per negozio, webhook GDPR obbligatori di Shopify gestiti e dati vecchi eliminati a scadenze programmate
- Attribuzione del fatturato dal messaggio all'ordine, con esportazioni
- Interfaccia in 10 lingue, compresi i layout da destra a sinistra
Integrazioni
- Admin API, webhook, Flow ed estensioni per i temi di Shopify
- Messaggistica WhatsApp Business tramite l'API della piattaforma del cliente
- Cinque connettori verso app di e-mail, helpdesk e recensioni di prodotto
- Sentry per il tracciamento degli errori
Tecnologie
Risultato
Realizzata e testata, con le estensioni per la vetrina già distribuite nella configurazione dell'app. Il prossimo passo è l'invio allo Shopify App Store.
Come protegge il budget del commerciante il sistema di invio?
Ogni lotto riporta i risultati prima che parta il successivo. Se il credito dell’account scende troppo o se fallisce più di una certa quota di messaggi, la campagna si mette in pausa da sola e spiega al commerciante il motivo, invece di spendere il resto del budget in messaggi che non arriveranno. Le ore di silenzio e i tempi di attesa per contatto evitano che i clienti ricevano più messaggi di fila, e un webhook duplicato del negozio non si trasforma mai in un secondo messaggio.
Parliamo del tuo progetto
Raccontaci il tuo progetto