Carts
E-Commerce → Carts lists your store carts and what became of them. It answers "did this abandoned cart come back, and with which order?" - the same for Shopify (abandoned checkouts), WooCommerce, Magento, PrestaShop, and carts sent by the SDKs or the API.
Statuses
| Status | Meaning |
|---|---|
| Abandoned | The cart was left with items in it and no order has recovered it yet |
| Recovered | The cart was abandoned, then an order was placed from it. The row names the order (number and total) |
| Checked out | The cart became an order without ever being abandoned |
| No contact | Abandoned by a visitor nobody can reach: no email, phone or customer id, and not known to an app or browser (a store guest who left before checkout). It is listed apart, starts no abandoned-cart journey or campaign, and is not counted as Abandoned - here, on the Overview, or in the recovery rate. If the contact later becomes reachable, the cart is reported as abandoned then, once. If it becomes an order, it counts as checked out, not recovered |
| Restored copy | A cart a recovery link restored in another browser (or signed out), with no email: the products of the original cart, not a lost cart. The row names the original cart's contact ("Restored from ...'s cart") and links to the original. It is listed on All carts and No contact but not counted - the original is the abandoned cart, and an order from either counts as its one recovery. See A restored copy in another browser |
A recovery is recorded only when the order was placed from that abandoned cart: the order names the same store cart (the Shopify checkout, the Magento quote, the WooCommerce session or the PrestaShop cart), or a recovery link restored it. A recovery link counts also when the shopper checks out under another email (a guest opening the link from your message and checking out with a different address). The row then shows "bought by" with the buyer, and the cart stays with the contact it was abandoned by.
When the same contact places an order from a new cart, the abandoned cart is not recovered: it is closed, leaves the Abandoned list, and the order gets no Recovered cart tag. Orders that name no store cart keep the earlier rule and recover the contact's abandoned cart: orders sent through the API or the SDKs, WooCommerce orders received by webhook, and orders from a Magento extension before 1.4.15 or a WooCommerce plugin before 1.6.14. A PrestaShop guest cart opened from a recovery link counts as recovered from module 1.2.7.
Recoveries are kept: when that contact builds a new cart later, the earlier recovery stays in the list.
A WooCommerce shopper who signs in before checking out keeps the same cart: WooCommerce moves the guest's cart to the account, and the order recovers it.
A cancelled order does not count. An order that is cancelled, whose payment failed, or that is refunded in full recovers no cart and does not count as checked out - for every store and for orders sent through the API. When an order is cancelled or refunded in full after it recovered a cart, the recovery is withdrawn: the cart leaves Recovered (or Checked out), the order loses its Recovered cart tag, and the abandonment is recorded as open again. No second Cart Abandoned is sent for it. A partially refunded order still counts as a recovery.
One store cart, one row
A store reports a guest's cart before the guest has typed an email, under a contact of its own (with no name or email). When the store later names the guest's email - at checkout, or in its abandoned-cart notice - the cart moves to the contact with that email, and an order closes it wherever it is. So one store cart (a Magento quote, a WooCommerce session, a PrestaShop cart or a Shopify checkout) is never listed twice. An order closes a guest's earlier copy when it names its cart (Magento extension 1.4.15, WooCommerce plugin 1.6.14 or later, PrestaShop and Shopify), or, for an order that names none, when the store reported that guest's session under the buyer. Each cart is reported as abandoned at most once.
A guest cart that becomes an order is listed under the buyer. When the cart's contact has no email, phone or customer id - a guest who went straight to checkout - the order's buyer becomes the cart's contact. A cart that already had a contact keeps it, even when someone else places the order (for example through a recovery link under another email); the Order column's "bought by" line names the buyer.
The page
- Date range - each row is filtered by its own date: when it was abandoned, or when it became an order. A link from elsewhere in the app can open it on all dates.
- Status tabs - All carts / Abandoned / Recovered / Checked out / No contact, with counts for the whole range (not just the page).
- Search - a contact's name or email, an order number, or the store's cart reference ("quote 17" finds Magento's
quote_17). - Columns - the contact and items, value, when it was abandoned, status, the order that recovered or completed it, and the store. Under the contact, the store's own reference of the cart: Magento "quote 17", PrestaShop "cart 42", WooCommerce "session ...", Shopify "checkout ..." (shortened). Carts last updated before 2026-10-26 may have none.
- Value - the cart's items subtotal, before shipping and tax: the subtotal the store sent, else the sum of the cart's lines. A store's own cart total can include shipping (Magento's, once the shopper reaches the shipping step), so the same items would otherwise read higher on an abandoned cart than on a checked-out one. When the store's total differs it is shown under the value as Cart total incl. shipping. The Order column shows the order's own total.
The Abandoned cart value card on the E-Commerce Overview opens this page.
Where else a recovery shows
- Orders - an order that recovered a cart carries a Recovered cart tag, and its drawer says whose cart it was, with a link to it here. See Orders.
- Contact profile - the Orders tab lists the contact's carts: the current one and every recovery or checkout, with the order.
Recovery and attribution
They answer different questions. Recovery says which cart an order came from. Attribution ("Attributed to" on Orders) says which message gets the credit. A recovered order is credited to the message whose recovery link was clicked: the link carries Joryio's click parameters to the cart (Magento extension 1.4.12, WooCommerce plugin 1.6.11, PrestaShop module 1.2.6 or later), and when the buyer checks out under a different email than the one the message went to, the order is credited to that contact's click on the message within the attribution window. A recovered order shows "Not attributed" only when no click on a message was recorded - for example a recovery that came back on its own. The journey or campaign report shows the carts its orders recovered and that revenue.
When the store does not report the abandonment
WooCommerce, Magento and PrestaShop report an abandoned cart themselves, with the store's recovery link, after the abandonment time set in the store. When a cart is left and the store has not reported it, Joryio marks it abandoned itself and sends Cart Abandoned with source: cart_abandonment_scan (the store's own report has source: plugin_event). This happens for example on a quiet WooCommerce site: WordPress runs the plugin's scheduled check only when someone visits the site.
From WooCommerce plugin 1.6.24, Magento extension 1.4.23 and PrestaShop module 1.2.12, Joryio follows the store's own settings when it does this:
- Track guest carts off - Joryio never marks a guest's cart abandoned either. Browser events (page views, product views,
Product Added,Checkout Started) are still recorded for guests: the setting covers guest carts only. - Abandonment time - Joryio waits that long plus 20 minutes for the store's own report, and never less than 30 minutes.
- Recovery link - every cart update carries the store's recovery link, so a cart Joryio marks itself has it too. When the store's report arrives after Joryio marked the cart, its recovery link is kept for the reminders still to come; no second
Cart Abandonedis sent.
The store reports both settings with every request it makes to Joryio. With an older plugin version Joryio waits 30 minutes and does not know the guest setting.
Cart Abandoned carries recoveryLink: true when checkoutUrl is the store's recovery link (it rebuilds the cart on any device), false when it is only the checkout or cart page - for example a cart of an older plugin version that Joryio marked itself. Branch on it in a journey, for example to send a message without a cart link.
Shopify carts and carts sent by the SDKs or the API are unchanged: Joryio is their abandoned-cart path and marks them after 30 minutes. The storefront events of WooCommerce, Magento and PrestaShop no longer build a separate cart on the contact, so the store's cart is the only one.
The same cart abandoned again
A contact can leave the same store cart more than once - for example a signed-in customer whose WooCommerce session never changes. Each time it is left again after a real change, it is a new abandonment: a new Cart Abandoned event with a new cartId and the store's recovery link, so the abandoned-cart journey can remind them again. It counts as a change when, after the cart was reported abandoned:
- its items changed - emptied and refilled, items added or removed, or a quantity changed; or
- it comes back unchanged a day or more after it was abandoned (24 hours by default).
Repeats of the same abandonment are still sent once: the store retrying its report, a second check of a cart nobody touched, or the cart written again unchanged within the day. Whether a contact who already went through the journey enters it again is the journey's own re-entry setting. The earlier abandonment stays in the list of recorded abandonments as replaced by the new one. The same rule applies to every store (Shopify, WooCommerce, Magento, PrestaShop) and needs no plugin update. Before 2026-11-01 the second abandonment of the same store cart was recorded on the cart but sent no event.
A restored cart abandoned again
When a shopper opens a recovery link, the store puts the saved products into a cart in their browser - a restored copy. If they leave that cart again, the store reports it once more after the normal abandonment time (Magento extension 1.4.13, WooCommerce plugin 1.6.12 or later):
- At most one more reminder per original cart, for 30 days. Any further copy of the same cart that is left idle - the same link opened on another device, or the second reminder's link opened and left again - is not reported.
- A guest's restored copy has no email - the link copies the products only, never the guest's email or address. From Magento extension 1.4.18, WooCommerce plugin 1.6.17 and PrestaShop module 1.2.9 the store still reports it, without an email, and Joryio records it on the contact of the original cart, so the second reminder goes to the same address as the first. The store never copies or sends that email. It reports such a copy only while it tracks guest carts (Track Guest Carts in Magento and WooCommerce, Track guest carts in PrestaShop) and is connected, like any guest cart: with the setting off, no guest cart is reported, a restored copy included (from the same versions; WooCommerce 1.6.17 also stops reporting guest carts saved before the setting was turned off). If Joryio cannot find the original cart's contact, nothing is recorded. A copy where the shopper typed an email at checkout is recorded under that email, as before. Earlier versions never reported a guest's copy, so no second reminder was sent.
- The
Cart Abandonedevent carries two extra properties:reabandonedAfterRecovery(true) andoriginalSessionId(the store's session id of the cart first abandoned). Use them in a journey to send a different message the second time, for example a branch on "reabandonedAfterRecoveryis true". - An order placed from the copy counts as one recovery of the original cart. When the buyer is another contact than the one the cart was abandoned by, the copy is not counted as a second recovery.
- A cart that already had products and only received the saved ones (the shopper confirmed "Add to my cart") is an ordinary cart: it is reported like any other, without these properties and without the limit.
PrestaShop marks a second abandonment the same way from module 1.2.9; module 1.2.8 and earlier reported a restored cart that is left again as an ordinary abandonment.
Restore chains
When a shopper opens a recovery link and then leaves the restored cart again, both carts stay on the Carts page, linked to each other:
- The restored copy is listed as Abandoned with Re-abandoned after recovery · from the original cart's reference. Click it to show the original.
- The original cart is listed as Restored - not ordered, with Restored as the copy's reference.
- The chain counts as one abandoned cart in the tab counts and the Overview. The number of carts beside the search box is the tab's count too; the original is listed under it as a restore-chain original, not counted.
- An order placed from the copy turns both carts to Recovered, with that order. It counts as one recovery. The chain lines then turn grey: the copy reads Came back from the original's reference · abandoned again before ordering, the original keeps Restored as.
- A copy that was never reported as abandoned - for example a guest's copy that nobody reached, or a link preview that a store version before Magento 1.4.18, WooCommerce 1.6.17 or PrestaShop 1.2.9 turned into a cart - is not part of the chain.
- "No contact" carts follow the usual rules.
Carts abandoned before this change show only their latest state: earlier steps of a restore chain were not recorded and cannot be recovered.
A restored copy in another browser
When a recovery link is opened in another browser (or by a signed-out guest), the store puts the saved products into a cart of that browser's own and copies no email or address. Earlier, such a cart was listed as No contact - No email or phone to recover it with, which looked like a lost cart. From WooCommerce plugin 1.6.23, Magento extension 1.4.22 and PrestaShop module 1.2.11, the store names the cart it was restored from, and the row reads:
- Restored copy, with Restored from the original contact's cart (a link to that contact) and Copy of the original cart's reference in another browser (click it to show the original);
- Counted on the original cart in the Order column.
A restored copy is listed on All carts and No contact but not counted in the tabs, on the Overview or in the recovery rate (the number beside the search box names it apart as a restored copy). An order placed from the copy recovers the original cart, once, with the order's revenue; the copy is then listed beside the recovered original on All carts and Recovered as a Restored copy with the same order, and is not counted - the order counts once, as the recovery, never also as Checked out. Shopify has no restored copies: its recovery link reopens the same checkout. Copies made with earlier store versions stay No contact until the store reports them again.
Older data
Recoveries recorded before 2026-10-26 show the order but not the cart's value or abandonment time, which were not kept at the time. Checked-out carts are listed from 2026-10-26.
Carts abandoned before 2026-10-27 were not checked for a contact: a guest's cart from before then can still be listed and counted as Abandoned.
Guest carts that became an order before 2026-10-29 can still show "Unknown contact" until they are updated to name their buyer.