Skip to main content

Cart Sync: Keep Carts in Sync Between Web and App

How Cart Sync keeps logged-in shoppers' carts aligned between your Shopify storefront and Tapcart app, including abandoned-cart push recovery.

Cart Sync keeps a logged-in shopper's cart consistent between your online store and your Tapcart app. Add an item on web, and it appears in the app. Add in the app, and it appears on web. When a shopper builds a cart on your site and leaves, you can also recover that cart with an app push after a window you choose.

What shoppers experience

  • Two-way sync. Cart changes on web and in the app stay aligned for the same logged-in customer.

  • Abandoned-cart push. If a shopper abandons a cart on web, Tapcart can send an app push (for example, "You left something in your cart") that opens the app with the cart ready to check out.

  • Native Shopify checkout. Checkout stays 100% native Shopify on both surfaces. Tapcart does not intercept checkout.

  • Logged-in only. Guests are untouched. Sync activates only after a shopper logs in.

How it works

When a logged-in shopper's cart changes on either surface, Tapcart syncs those line items to a cart record keyed to their Shopify customer account. Each surface reconciles against that record.

  • Merging is item-level: the newest change wins per item, and deletions stick.

  • A purchased cart cannot reappear from a stale device.

  • Sold-out or zero-quantity lines are ignored.

  • Cart data is stored per customer and auto-expires after 10 days of inactivity.

Requirements

  • Your app must be on Tapcart React Native release 21.8.0 or newer.

  • Shoppers need customer accounts (classic or New Customer Accounts).

  • Tapcart must enable Cart Sync for your app. Contact your AM or reach out through LiveChat if you do not see Settings → Cart Sync in your dashboard.

Setup paths

Abandoned-cart push

In Settings → Cart Sync you can:

  • Set the Abandoned Cart Window (hours a cart can sit idle before the push fires; default is 4).

  • Turn Abandoned Cart Push Notifications off if you already run your own abandonment flow (for example, Klaviyo email). Cart Sync continues to work either way.

For the push to send, Abandoned Cart Push Notifications must be on, the cart must idle for the full window with the latest activity on web, and the shopper needs an active push-enabled device. A successful send is not repeated for the same abandonment.

FAQ

Does Cart Sync touch checkout?

No. Checkout remains native Shopify on both web and app.

What about guest shoppers?

Guests are unaffected. Sync starts only after login on a surface.

Can I exclude certain items?

Yes. You can exclude specific variants, products, or line-item property patterns (for example, gift-with-purchase or bundle lines) from the Cart Sync settings in your dashboard.

What data is stored?

Cart line items keyed to the Shopify customer ID. Records auto-expire after 10 days of inactivity and are cleared when an order completes.

Do bundles sync?

Cart Sync moves plain line items only — variant, quantity, selling plan and line properties. If your bundle adds to the web cart as normal single-product lines, those lines appear in the app cart. Lines that a bundle app tags with underscore-prefixed properties (for example _bundle_) are deliberately not synced, so the apps on each surface do not add the same components twice. Whether a bundle behaves as single products or as app-tagged components depends on the bundle app, so test yours before going live.

Do discounts apply in the app cart?

Prices are never synced — Shopify prices the app cart natively. Automatic discounts, meaning anything triggered by what is in the cart, reapply on their own. Discount codes do not travel between surfaces, because a code is checkout state rather than a cart line; the shopper enters the code at app checkout as usual.

Will shoppers get both my abandonment email and a Tapcart push?

They can, if you leave our push on while running your own abandonment flow. The two are independent systems with no cross-suppression: your flow triggers off Shopify's own web events and knows nothing about our push, and ours knows nothing about your email. Our push does avoid stacking with our own sends, since it shares the quiet hours and daily frequency cap used by Tapcart campaigns, but it cannot see your provider. If you already send abandonment messages elsewhere, turn Abandoned Cart Push Notifications off in Settings → Cart Sync. That is what we recommend at setup for merchants with an existing flow. Cart Sync keeps working either way.

Can I test Cart Sync before turning it on for shoppers?

Yes, and no shopper sees it. Duplicate your live theme, turn the Tapcart Cart Sync embed on for the copy only, then open that copy through Shopify's theme preview and sign in as a test customer. Sync runs for real against Tapcart while your live theme stays untouched. On the app side, sign in to any current build with the same test account. This is the right way to check how a bundle behaves before going live, since whether its lines sync depends on how your bundle app builds them. Cart Sync must still be enabled in Settings → Cart Sync first, and your Tapcart contact can watch the backend during the test and tell you exactly which lines synced and which were filtered.

More Questions

Have more questions about Cart Sync? We're happy to help. Reach out through LiveChat on your Tapcart Dashboard or email us at [email protected].

Did this answer your question?