# Shopify + Brew

Avvia le automazioni di Brew dagli eventi Shopify su clienti, ordini, checkout ed evasioni. Alimenta i flussi di benvenuto, di ricevuta, di checkout abbandonato e di spedizione.

URL canonico: https://brew.new/it/browse/integrations/shopify

- Direzione: Dati in entrata
- Collegamento: Secret del webhook
- Trigger da eventi e-commerce

## Funzionalità disponibili

- **Trigger da evento**: Avvia le automazioni di Brew dagli eventi Shopify su clienti, ordini, checkout ed evasioni. Alimenta i flussi di benvenuto, di ricevuta, di checkout abbandonato e di spedizione.

## Trasforma gli eventi del negozio in email utili

Collega Shopify per far partire email in linea con il tuo brand quando un cliente si registra, un ordine viene pagato, viene creato un checkout o parte una spedizione. Brew supporta 13 tipi di evento webhook di Shopify su clienti, ordini, checkout ed evasioni.

La configurazione usa i webhook che crei nel pannello di controllo di Shopify. Non ti servono né un’app Shopify, né un client ID, né OAuth. Shopify resta responsabile di ordini, pagamenti ed evasione degli ordini. Brew crea e invia le email.


## Cosa puoi creare

- Email di benvenuto per i clienti: l’evento customers/create scatta quando in Shopify viene creato un record cliente.
- Conferme d’ordine e ricevute: l’evento orders/create scatta quando viene effettuato un ordine, e orders/paid quando il pagamento viene acquisito. Entrambi contengono orderNumber, totalPrice, currency e financialStatus. Scegline uno per ogni messaggio, per evitare duplicati.
- Avvisi di annullamento: l’evento orders/cancelled scatta quando un ordine viene annullato e contiene il numero dell’ordine e lo stato del pagamento.
- Notifiche di spedizione: l’evento fulfillments/create contiene trackingNumber e trackingUrl, quando l’evasione li include. Anche orders/fulfilled scatta quando un ordine viene spedito, ma non ha campi di tracciamento, quindi scegli un solo trigger per ogni email di spedizione.
- Follow-up sulle evasioni: l’evento fulfillments/update scatta quando un’evasione cambia. Il campo fulfillmentStatus è lo stato di elaborazione dell’evasione, come pending, success o failure, non una conferma di consegna. Per un ringraziamento o una richiesta di recensione dopo la consegna, invia a Brew un evento personalizzato solo dopo che la tua applicazione ha confermato la consegna.
- Promemoria per i checkout: l’evento checkouts/create scatta quando viene creato un checkout e può contenere abandonedCheckoutUrl, un link per riprendere il checkout.
- Coordinati con le notifiche per i clienti di Shopify, così un cliente non riceve lo stesso messaggio da entrambi.

## I promemoria per i checkout richiedono una verifica dello stato

L’evento checkouts/create scatta quando il checkout viene creato, non quando viene abbandonato. Un flusso di promemoria parte da lì e attende. Effettuare un ordine non interrompe un’esecuzione già avviata.

Dopo un nodo Attesa, una condizione legge i campi attuali del contatto, come shopify_last_order_status e shopify_last_order_at. Questi campi descrivono l’ultimo ordine visto da Brew, non questo specifico checkout, quindi non possono dimostrare che questo checkout sia diventato un ordine.

L’evento checkouts/update scatta ogni volta che il checkout cambia, non dopo un intervallo prestabilito, quindi da solo non funziona come secondo promemoria a tempo.

Un checkout senza indirizzo email non avvia alcuna automazione, a meno che Brew non abbia già visto un’email per lo stesso ID cliente di Shopify. Prima di pubblicare, testa un checkout che si converte in ordine e uno che non si converte.


## Configura Shopify in Brew

- Apri Integrazioni, scegli Shopify e seleziona Genera l’URL del webhook.
- Inserisci il tuo dominio myshopify.com, ad esempio acme.myshopify.com, non il dominio personalizzato del tuo negozio online. Brew lo confronta con l’header X-Shopify-Shop-Domain di ogni webhook.
- Nel pannello di controllo di Shopify, apri Impostazioni > Notifiche e scorri fino a Webhook. Shopify invia un tipo di evento solo a un webhook creato per quel tipo, quindi crea un webhook per ogni evento che intendi usare. Imposta il formato su JSON, incolla l’URL di Brew e scegli la versione più recente dell’API.
- Copia il secret di firma che trovi in fondo alla sezione Webhook. Lo stesso secret firma tutti i webhook del negozio. Incollalo in Brew e seleziona Collega.
- Apri il menu di ogni webhook che hai creato e invia un test. Con il primo test, in Brew lo stato passa da “In attesa dell’evento di test” a “Collegato”, e ogni test segna il proprio evento come ricevuto. Un test serve solo a verificare il webhook: Brew non aggiunge contatti e non avvia automazioni.
- Il collegamento crea un trigger per ciascuno dei 13 tipi di evento. Non esiste un interruttore per attivare o disattivare gli eventi, ma un tipo di evento senza un webhook Shopify non scatta mai.
- Crea un’automazione, seleziona il suo evento Shopify e invia un test mentre è ancora in bozza. Quando arriva un evento corrispondente, vengono eseguite solo le automazioni attive.

## Eventi Shopify supportati

Brew supporta questi 13 tipi di evento webhook:

- customers/create
- customers/update
- customers/delete
- customers/enable
- customers/disable
- orders/create
- orders/paid
- orders/cancelled
- orders/fulfilled
- checkouts/create
- checkouts/update
- fulfillments/create
- fulfillments/update

## Sincronizzazione dei contatti e personalizzazione

Ogni evento verificato con un indirizzo email reale crea o aggiorna un contatto di Brew, abbinato in base all’email, che un’automazione usi o meno l’evento. Quando i dati sono presenti, Brew imposta nome, cognome, shopify_customer_id e shopify_shop_domain.

Gli eventi degli ordini aggiornano shopify_last_order_number, shopify_last_order_total, shopify_last_order_currency e shopify_last_order_at. Gli eventi orders/create, orders/paid e orders/cancelled impostano anche shopify_last_order_status, mentre orders/fulfilled imposta shopify_last_fulfillment_status. Gli eventi delle evasioni aggiornano shopify_last_tracking_number, shopify_last_tracking_url e shopify_last_fulfillment_status. Gli eventi dei checkout aggiornano shopify_last_checkout_url.

Gli eventi customers/delete, customers/disable e customers/enable impostano shopify_account_status su deleted, disabled o active. Brew non rimuove il contatto e non ne annulla l’iscrizione, quindi filtra su quel campo dove serve.

Per i merge tag, usa lo schema del payload dichiarato dall’evento selezionato. Ogni evento include email, firstName, lastName, currency, shopDomain e createdAt, quando presenti. Gli eventi degli ordini aggiungono orderNumber, totalPrice, financialStatus e fulfillmentStatus. Gli eventi dei checkout aggiungono totalPrice e abandonedCheckoutUrl. Gli eventi delle evasioni aggiungono trackingNumber, trackingUrl e fulfillmentStatus.

Il campo totalPrice è l’importo che Shopify invia nella valuta dell’ordine, ad esempio 49.95, non in centesimi. I payload non includono gli articoli dell’ordine e gli ID degli oggetti Shopify non sono merge tag.

I webhook dei clienti di Shopify non includono più il consenso al marketing, quindi Brew non lo riceve. Raccogli il consenso a parte e verificalo prima degli invii promozionali.


## Brew supporta i rimborsi e gli eventi del carrello?

No. Shopify non ha un tipo di evento orders/refunded e il suo webhook dei rimborsi non contiene il cliente. L’evento carts/update non identifica il destinatario, quindi Brew non può usarlo per inviare email in sicurezza. Non aggiungere webhook per questi tipi di evento.


## Perché un evento compare senza che venga inviata un’email?

Ricevere un evento e inviare un’email sono passaggi separati. Verifica che un’automazione corrispondente sia attiva, poi controlla i suoi filtri, la cronologia delle esecuzioni, l’idoneità del destinatario e il dominio di invio. Una consegna di test inviata da Shopify compare come evento di test e non avvia mai un’automazione. Un evento senza indirizzo email relativo a un cliente sconosciuto viene registrato come non risolto.


## Limiti e risoluzione dei problemi

- Brew non può modificare clienti, ordini o evasioni di Shopify.
- Un errore 401 con shop_domain_mismatch significa che il dominio inserito in Brew non corrisponde al negozio che invia il webhook. Ricollega Shopify con il dominio canonico myshopify.com.
- Se ruoti il secret di firma in Shopify, ricollega Shopify con il nuovo valore. Brew richiede che il secret sia lungo almeno 16 caratteri.
- Se un trigger mostra “Ancora nessun evento”, crea un webhook Shopify per quel tipo di evento e invia un test da lì.
- I webhook degli ordini possono non includere il nome del cliente. Per firstName usa un valore di riserva del merge tag, ad esempio un saluto predefinito.
- Verifica il consenso e la finalità di ogni email. Sincronizzare i clienti Shopify non autorizza gli invii promozionali.

## Fonti e guide alla configurazione

- [Guida alla configurazione di Shopify](https://docs.brew.new/integrations/import/shopify)
- [Crea un’automazione](https://docs.brew.new/create-emails/build-an-automation)
- [Merge tag](https://docs.brew.new/create-emails/merge-tags)
- [Cosa puoi inviare con Brew](https://docs.brew.new/get-started/what-you-can-send)
- [Webhook di Shopify](https://shopify.dev/docs/apps/build/webhooks)

## Correlati

- [Tutte le integrazioni](https://brew.new/it/browse/integrations.md)
- [Registrati](https://brew.new/it/sign-up.md)
- Sito web: https://brew.new
