Personalized abandoned-cart recovery emails for Adobe Commerce

By General Input

Every four hours, spot shoppers who left items behind in Adobe Commerce and send them a friendly, personalized recovery email through Gmail.

Integrations

  • Adobe Commerce (Magento)
  • Gmail

Type

Agentic Task

Categories

  • Marketing
  • Sales

Every 4 hours, run an abandoned-cart recovery pass for my Adobe Commerce (Magento) store and send personalized recovery emails through Gmail.

Step 1 — find abandoned carts. Call Adobe Commerce Search Carts with a searchCriteria filter that requires all of: is_active eq true, items_count gt 0, and updated_at between (now minus 48 hours) and (now minus 2 hours). Page through until you have every match. Skip any cart where customer_id is null (guest carts have no email to reach).

Step 2 — resolve the shopper. For each cart, call Adobe Commerce Search Customers with a searchCriteria filter of entity_id eq {cart.customer_id} to pull the customer's firstname, lastname, and email. If the customer record is missing an email or the account is disabled, skip that cart.

Step 3 — dedupe. Keep a small internal record of (cart_id, customer_email, sent_at) for every message you send. At the start of each run, drop any cart whose id already appears in that record with sent_at within the last 24 hours. This is the guard against nagging the same shopper twice in one day.

Step 4 — draft the email. For every remaining cart, read the cart's items array to get product names and quantities, then draft a short, friendly recovery email (roughly 80–130 words) that: greets the shopper by first name, references 1–3 specific items they left behind by name and quantity, matches the tone of a specialty retailer (warm, human, lightly enthusiastic, never pushy or discount-desperate), and closes with a single clear call-to-action link back to the store cart. No emoji-spam, no urgency scare-copy, no fake scarcity.

Step 5 — send. For each drafted email, call Gmail Send a Message with the customer's email in To, a subject line that references what they left behind (e.g. "Your [product] is still in your cart"), and the AI-written body. After a successful send, append (cart_id, customer_email, sent_at) to the internal record used in step 3.

At the end of the run, report: how many carts were found in the window, how many were skipped because they were guest carts, missing an email, or already emailed in the last 24 hours, and how many recovery emails were sent.

Related prompts

Explore more prompts
Win back LiveChat visitors whose chats went unansweredChase the paperwork every new client and vendor still owesFile Gmail attachments into storage with names you can findCandidate rediscovery desk for your archived Lever applicantsLaytime and demurrage claim workspace for chartering opsKajabi customer support console for member access fixesRun your application review round on Jotform submissionsRun your nutrition clients' weekly meal plans from one consoleReplace the dispatch whiteboard with a live production boardJob search command center with a self-filling pipeline board