I run automation projects for Shopify stores, and abandoned cart recovery kept coming up as a request — but generic “you left something in your cart” emails convert poorly and clients wanted something that actually sounds like their brand.
Here’s how it’s structured in n8n:
- Two Shopify Trigger nodes (checkouts/create + checkouts/update) — the update trigger matters because checkouts change after creation, and you want to recover from the latest state, not the first snapshot
- A Wait node (60 min default, configurable) before recovery
- An AI node (OpenAI-compatible) that writes the email from the actual cart contents — line items, total, checkout URL
- One deliberate constraint: if Shopify doesn’t provide a customer first name, the prompt is instructed to never invent one. An AI-generated email that fabricates a detail is worse than a slightly less personal one
- Built-in dedup logic using workflow static data, so a modified cart never gets double-emailed
This is the exact workflow running in production for one of my clients. I packaged it as a ready-to-import template with a setup guide if anyone wants to skip the build: Relance Panier Abandonné Shopify — Email IA automatique (template n8n)
Happy to answer questions on the architecture either way.