Cart builder

Last updated: August 7, 2026

Cart builder turns a Products block into a working cart inside the email. Each product card gets a quantity stepper, a running total sits at the bottom, and one button sends the whole cart to checkout.

It is useful anywhere you want the customer to buy several things in one go rather than one item at a time: abandoned cart recovery, replenishment, and reactivating a cancelled subscription after letting the customer adjust it first.

Screenshot 2026-08-07 at 4.18.23 PM.png

Why its settings look like the Products block

Cart builder is its own block, and you drag it in from the block list like any other. Under the hood it is built on the same engine as the Products block, running in cart mode.

That is worth knowing for one practical reason: its settings panel shares most of its options with the Products block, including how you choose which products appear. The settings that do not apply to a cart, such as per-card purchase options, are hidden automatically.

Before you start

  • Shopify needs to be connected.

  • For the subscribe and reactivate flows, you need Recharge, Skio, or Stay AI. Other subscription providers are not supported for this yet.

Choose what goes in the cart

Cart builder fills itself from a product feed, the same way a normal Products block does. The sources most often used with a cart are:

Source

What it pulls

Abandoned Cart

the items the customer left in their cart

Checkout Started Event

the items from a started checkout

Viewed Product Event

items the customer looked at, which can also prefill the cart

Latest Cancelled Subscription

the items from the customer's most recent cancellation

Custom product(s)

products you pick by hand

Products from a Collection

a Shopify collection

Shopify Best SellersShopify RecommendationsZaymo Recommended Products

recommendation feeds

You can also chain several sources together and cap how many items each one contributes, so a single cart might show cancelled items first, then abandoned items, then best sellers.

Edit before reactivate

Pairing Cart builder with the Latest Cancelled Subscription feed gives you a reactivation email where the customer can change their order before restarting it. They can drop an item they no longer want, add more of something else, adjust quantities, and then reactivate with one tap.

This is different from the Reactivate block, which brings a cancelled subscription back as it was. Use Cart builder when you want to let people adjust their order first.

Subscribing happens automatically

There is no toggle to switch on. If the customer is on Recharge, Skio, or Stay AI and the cart contains subscription items, Cart builder creates the subscription when they check out. If they are not a subscriber, they go to a normal Shopify checkout instead.

If you use a different subscription provider, such as Ordergroove, the cart still works, it just always goes to a normal Shopify checkout rather than creating a subscription. We're not able to say yet when, or whether, that will change.

Two details worth knowing:

  • A cart discount applies to every subscription created from that cart.

  • If part of the subscription creation fails, Zaymo rolls the whole thing back rather than leaving the customer with half an order.

The checkout button

The footer button is editable and says Checkout by default.

Screenshot 2026-08-07 at 4.18.23 PM.png

For subscribers (active and churned), Zaymo swaps that wording to Subscribe, but only if you left the default text alone. If you typed your own label, for example "Reactivate", your wording is kept exactly as you wrote it for everyone. So if you want the button to say something specific, type it and it will stick.

Screenshot 2026-08-07 at 4.50.57 PM.png

What the customer sees

Each product card has a stepper for quantity. The footer keeps a running count and total, along the lines of "3 items, $84.00". One tap on the footer button takes the whole cart to checkout with everything they selected.

Quantity limits

Max Quantity Per Item controls how many of any single item a customer can add. It defaults to 3 and you can set it anywhere from 1 to 9.

Nine is a hard ceiling rather than an arbitrary one. The stepper has to work inside Apple Mail, where it is built from CSS instead of script, and the design only supports a single digit. Keep it as low as your promotion actually needs, because a lower cap also makes the cart faster in Apple Mail.

Where the quantity control and the cart panel sit

Two layout settings, both optional:

Quantity Input Location controls where the − / + stepper appears once an item is in the cart. Default is Product Card, meaning the control lives right on the item. Switch it to Cart to move it into the cart summary line instead, and leave the product card itself as a plain button.

Cart Placement controls where the whole cart panel (the summary, totals, and checkout button) sits relative to the products. Default is Below Products. Switch it to Above Products to put the cart panel first.

A note on Apple Mail performance

In Apple Mail the stepper is built out of CSS rather than script, which means Zaymo has to generate markup for every possible quantity of every variant. Products with a lot of variants therefore make the stepper heavier, and it can start to feel slow.

If a customer reports a laggy or sluggish cart in Apple Mail, a high variant count is the first thing to look at. Reducing the number of products or variants in the cart is the fix.

If the cart comes up empty

The most common cause is that the feed found the customer's items but could not match them to products in your store. That happens when:

  • the product or variant has been deleted in Shopify

  • the event came from a different store

  • a product override is hiding that variant

Zaymo drops a line it cannot match rather than substituting a different variant, which is the right call, since charging someone for the wrong variant is worse than showing one fewer item. But it does mean a feed can look like it "pulled nothing" even though the underlying event had items in it. Check the products in Shopify first, then check your product overrides.

In email clients that cannot run interactive content

The customer sees a static image of the cart with a button underneath. Tapping it opens a hosted cart page where they can adjust quantities and check out for real.

For background on this across all blocks, see Parts of an interactive email: interactive vs fallback.

Related articles