{"id":3183,"date":"2026-02-24T11:38:41","date_gmt":"2026-02-24T11:38:41","guid":{"rendered":"https:\/\/www.swiftcommerce.io\/help\/?post_type=docs&#038;p=3183"},"modified":"2026-11-07T11:41:19","modified_gmt":"2026-11-07T11:41:19","password":"","slug":"cart-recovery","status":"publish","type":"docs","link":"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/","title":{"rendered":"Abandoned Cart Recovery"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Follow up on eligible abandoned WooCommerce carts with timed emails and cart-restoration links. Free includes one reminder; Pro adds sequences, supported unpaid-order reminders, coupons and aggregate reports.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Overview<\/h2>\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"950\" height=\"650\" src=\"https:\/\/www.swiftcommerce.io\/help\/wp-content\/uploads\/2026\/02\/clipboard-1.jpeg\" alt=\"Cart Recovery dashboard showing tracking settings and recovery sections\" class=\"wp-image-3334\" srcset=\"https:\/\/www.swiftcommerce.io\/help\/wp-content\/uploads\/2026\/02\/clipboard-1.jpeg 950w, https:\/\/www.swiftcommerce.io\/help\/wp-content\/uploads\/2026\/02\/clipboard-1-300x205.jpeg 300w, https:\/\/www.swiftcommerce.io\/help\/wp-content\/uploads\/2026\/02\/clipboard-1-767x525.jpeg 767w, https:\/\/www.swiftcommerce.io\/help\/wp-content\/uploads\/2026\/02\/clipboard-1-360x246.jpeg 360w\" sizes=\"auto, (max-width: 950px) 100vw, 950px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A customer can leave a cart without placing an order. Cart Recovery records eligible carts and uses an available email address to send a reminder after the configured inactivity threshold and email delay. It cannot email an anonymous visitor who has not supplied an address.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Whether a customer forgot to check out or left an order unpaid, Cart Recovery brings them back with well-timed, professionally designed emails that match your store&#8217;s branding through the built-in Email Customizer.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Key Capabilities<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Track abandoned carts for both logged-in customers and guests<\/li>\n\n\n\n<li>Send automated recovery email sequences with customizable timing<\/li>\n\n\n\n<li>One-click recovery links that rebuild the customer&#8217;s cart and redirect to checkout<\/li>\n\n\n\n<li>Built-in unsubscribe handling; configure your own privacy notice and contact permissions<\/li>\n\n\n\n<li>Full integration with the Email Customizer for consistent store branding<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Getting Started<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1: Enable Cart Recovery<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to&nbsp;<strong>Swift Commerce \u2192 Sales Recovery \u2192 Cart Recovery<\/strong><\/li>\n\n\n\n<li>Toggle the&nbsp;<strong>Enable Cart Recovery<\/strong>&nbsp;switch at the top of the page<\/li>\n\n\n\n<li>Click&nbsp;<strong>Save Changes<\/strong><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2: Configure Tracking Settings<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to the&nbsp;<strong>General<\/strong>&nbsp;tab<\/li>\n\n\n\n<li>Set the&nbsp;<strong>Abandonment Threshold<\/strong>&nbsp;\u2014 the number of minutes of inactivity before a cart is flagged as abandoned (default: 60 minutes)<\/li>\n\n\n\n<li>Set the&nbsp;<strong>Cart Expiration<\/strong>&nbsp;\u2014 how many days to keep abandoned cart records before they&#8217;re automatically cleaned up (default: 30 days)<\/li>\n\n\n\n<li>Enable or disable&nbsp;<strong>Track Guest Carts<\/strong>&nbsp;to capture guest emails from the checkout billing field<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3: Set Up Your Recovery Email<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Go to the&nbsp;<strong>Emails<\/strong>&nbsp;tab<\/li>\n\n\n\n<li>Configure the subject line and delay timing for your first recovery email<\/li>\n\n\n\n<li>Click&nbsp;<strong>Customize Email<\/strong>&nbsp;to open the Email Customizer and personalize the heading, body text, product display options, and button text<\/li>\n\n\n\n<li>Use placeholders like&nbsp;<code>{customer_name}<\/code>,&nbsp;<code>{site_name}<\/code>, and&nbsp;<code>{cart_total}<\/code>&nbsp;to personalize the message<\/li>\n\n\n\n<li>Click&nbsp;<strong>Save Changes<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s it \u2014 Cart Recovery will now automatically track, detect, and email customers who abandon their carts.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Settings Reference<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">General Tab<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Cart Tracking<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Abandonment Threshold<\/td><td>Minutes of inactivity before a cart is flagged as abandoned (15\u20131,440)<\/td><td>60 minutes<\/td><\/tr><tr><td>Cart Expiration<\/td><td>Days before abandoned cart records are automatically deleted (1\u2013365)<\/td><td>30 days<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Guest Tracking<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Track Guest Carts<\/td><td>Capture guest emails from the checkout billing email field to enable recovery<\/td><td>Enabled<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Recovery<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Delete Cart on Recovery<\/td><td>Automatically delete the abandoned cart record when the customer completes their order. If disabled, recovered carts are kept for analytics.<\/td><td>Disabled<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Unpaid Order Recovery (Pro)<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Enable Unpaid Order Recovery<\/td><td>Send automated payment reminder emails for orders that remain unpaid<\/td><td>Disabled<\/td><\/tr><tr><td>Payment Timeout<\/td><td>Minutes to wait before sending the first payment reminder (15\u201310,080)<\/td><td>60 minutes<\/td><\/tr><tr><td>Order Statuses to Track<\/td><td>Which order statuses trigger unpaid recovery: Pending Payment, Failed, On Hold<\/td><td>Pending, Failed<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Admin Recovery Notification (Pro)<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Enable Admin Notification<\/td><td>Send an email to the store admin whenever a cart is successfully recovered<\/td><td>Disabled<\/td><\/tr><tr><td>Notification Email<\/td><td>Admin email address to notify (defaults to the WordPress admin email if left blank)<\/td><td>WordPress admin email<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Exclude Roles from Tracking (Pro)<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Exclude Roles<\/td><td>Select user roles whose carts should not be tracked. Useful for excluding staff, editors, or other internal users.<\/td><td>None<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Emails Tab<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">Recovery Email Sequence<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">You can configure a sequence of follow-up emails sent to customers who abandon their carts.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Free:<\/strong>&nbsp;1 email<\/li>\n\n\n\n<li><strong>Pro:<\/strong>&nbsp;Up to 5 emails with individual timing and subject lines<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Each email in the sequence has:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default (First Email)<\/th><\/tr><\/thead><tbody><tr><td>Enabled<\/td><td>Toggle this email step on or off<\/td><td>Enabled<\/td><\/tr><tr><td>Subject Line<\/td><td>The email subject line \u2014 supports placeholders<\/td><td>&#8220;You left something in your cart!&#8221;<\/td><\/tr><tr><td>Delay<\/td><td>How long to wait before sending this email<\/td><td>60<\/td><\/tr><tr><td>Delay Unit<\/td><td>Minutes, Hours, or Days<\/td><td>Minutes<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">The first email&#8217;s delay is measured from when the cart is flagged as abandoned. Subsequent emails are timed relative to the previous email in the sequence.<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Tip:<\/strong>&nbsp;A common sequence is: 1 hour (first reminder), 24 hours (gentle nudge), 72 hours (final reminder with coupon).<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\">Per-Email Coupon Controls (Pro)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Each email can optionally include an auto-generated coupon:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Include Coupon<\/td><td>Attach a unique discount coupon to this email<\/td><td>Disabled<\/td><\/tr><tr><td>Discount Type<\/td><td>Percentage (%) or Fixed Amount ($)<\/td><td>Percentage<\/td><\/tr><tr><td>Amount<\/td><td>The discount value<\/td><td>10<\/td><\/tr><tr><td>Expiry (days)<\/td><td>How many days the coupon remains valid<\/td><td>7<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"wp-block-paragraph\"><strong>Note:<\/strong>&nbsp;Only the first email with a coupon enabled will generate one. Subsequent emails include the same coupon code to avoid creating multiple discounts for the same cart.<\/p>\n<\/blockquote>\n\n\n\n<h4 class=\"wp-block-heading\">Email Template<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Click&nbsp;<strong>Customize Email<\/strong>&nbsp;to open the full Email Customizer overlay where you can personalize:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Heading<\/td><td>The email heading displayed above the body<\/td><td>&#8220;Your cart is waiting!&#8221;<\/td><\/tr><tr><td>Body Text<\/td><td>The main email message \u2014 supports placeholders<\/td><td>&#8220;Hi {customer_name},\\n\\nIt looks like you left some items in your cart at {site_name}. Your cart is saved and ready for you.&#8221;<\/td><\/tr><tr><td>Show Product Image<\/td><td>Display product thumbnail images in the cart summary<\/td><td>Enabled<\/td><\/tr><tr><td>Show Product Title<\/td><td>Display product names in the cart summary<\/td><td>Enabled<\/td><\/tr><tr><td>Show Product Price<\/td><td>Display prices in the cart summary<\/td><td>Enabled<\/td><\/tr><tr><td>Button Text<\/td><td>The call-to-action button label<\/td><td>&#8220;Complete Your Order&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Unpaid Order Email Sequence (Pro)<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">When Unpaid Order Recovery is enabled, a separate email sequence appears with up to 5 payment reminder emails. These have the same controls (subject, delay, timing, coupon) tailored for payment reminders.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Default (First Email)<\/th><\/tr><\/thead><tbody><tr><td>Subject<\/td><td>&#8220;Complete your payment for order #{order_number}&#8221;<\/td><\/tr><tr><td>Heading<\/td><td>&#8220;Your order is waiting for payment&#8221;<\/td><\/tr><tr><td>Body Text<\/td><td>&#8220;Hi {customer_name},\\n\\nYour order #{order_number} at {site_name} is awaiting payment&#8230;&#8221;<\/td><\/tr><tr><td>Button Text<\/td><td>&#8220;Pay Now&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Abandoned Carts Tab<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">View and manage all tracked abandoned carts in a searchable table.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Filters<\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Status:<\/strong>&nbsp;All Statuses, Abandoned, Recovered, Unsubscribed<\/li>\n\n\n\n<li><strong>Refresh:<\/strong>&nbsp;Reload the cart list<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Table Columns<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Column<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>Customer<\/td><td>Customer name (if logged in) and email address<\/td><\/tr><tr><td>Items<\/td><td>Number of items in the cart<\/td><\/tr><tr><td>Total<\/td><td>Cart total formatted with currency<\/td><\/tr><tr><td>Status<\/td><td><strong>Abandoned<\/strong>&nbsp;(red),&nbsp;<strong>Recovered<\/strong>&nbsp;(green),&nbsp;<strong>Unsubscribed<\/strong>&nbsp;(gray), or&nbsp;<strong>Active<\/strong>&nbsp;(outline)<\/td><\/tr><tr><td>Emails<\/td><td>Number of recovery emails sent<\/td><\/tr><tr><td>Date<\/td><td>When the cart was created<\/td><\/tr><tr><td>Actions<\/td><td>Delete the cart record (with confirmation)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Coupons Tab (Pro)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Configure global settings for auto-generated recovery coupons.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Coupon Code Settings<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Coupon Code Prefix<\/td><td>Prefix for generated coupon codes (e.g.,&nbsp;<code>recover-a1b2c3d4<\/code>). Only lowercase letters, numbers, and hyphens.<\/td><td>&#8220;recover&#8221;<\/td><\/tr><tr><td>Individual Use Only<\/td><td>Prevent the coupon from being combined with other coupons<\/td><td>Enabled<\/td><\/tr><tr><td>Exclude Sale Items<\/td><td>Coupon won&#8217;t apply to items already on sale<\/td><td>Disabled<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Coupon Restrictions<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Minimum Spend<\/td><td>Minimum cart total required to use the coupon (0 = no minimum)<\/td><td>$0<\/td><\/tr><tr><td>Allow Free Shipping<\/td><td>Grant free shipping when the coupon is applied<\/td><td>Disabled<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Auto-Managed Properties<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">These are automatically set by the system and cannot be changed:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Usage limit:<\/strong>&nbsp;1 per coupon (single-use)<\/li>\n\n\n\n<li><strong>Email restriction:<\/strong>&nbsp;Locked to the recipient&#8217;s email address<\/li>\n\n\n\n<li><strong>Expiry:<\/strong>&nbsp;Set per email in the Emails tab<\/li>\n\n\n\n<li><strong>Discount type &amp; amount:<\/strong>&nbsp;Set per email in the Emails tab<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">Coupon Display in Emails<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Customize how the coupon appears inside recovery emails:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Box Background Color<\/td><td>Background color of the coupon callout box<\/td><td>#f0fdf4<\/td><\/tr><tr><td>Box Border Color<\/td><td>Border color of the coupon callout box<\/td><td>#bbf7d0<\/td><\/tr><tr><td>Box Text Color<\/td><td>Text color inside the coupon callout box<\/td><td>#166534<\/td><\/tr><tr><td>Code Background Color<\/td><td>Background color behind the coupon code itself<\/td><td>#dcfce7<\/td><\/tr><tr><td>Message Text<\/td><td>The coupon message template (use&nbsp;<code>{coupon_code}<\/code>&nbsp;placeholder)<\/td><td>&#8220;Use code {coupon_code} at checkout for a special discount!&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">Analytics Tab (Pro)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Track your recovery performance with a real-time analytics dashboard.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Summary Cards<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Metric<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>Total Abandoned<\/td><td>Number of carts flagged as abandoned<\/td><\/tr><tr><td>Total Recovered<\/td><td>Number of carts successfully recovered<\/td><\/tr><tr><td>Recovery Rate<\/td><td>Percentage of abandoned carts that were recovered<\/td><\/tr><tr><td>Revenue Recovered<\/td><td>Total monetary value of all recovered carts<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Email Performance<\/h4>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Metric<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td>Emails Sent<\/td><td>Total recovery emails sent<\/td><\/tr><tr><td>Emails Opened<\/td><td>Number of emails opened by recipients<\/td><\/tr><tr><td>Links Clicked<\/td><td>Number of recovery links clicked<\/td><\/tr><tr><td>Open Rate<\/td><td>Percentage of emails opened<\/td><\/tr><tr><td>Click Rate<\/td><td>Percentage of emails where the recovery link was clicked<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Email Placeholders<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Use these placeholders in your email subject lines and body text. They are automatically replaced with real data when the email is sent.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Cart Recovery Emails<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Placeholder<\/th><th>Description<\/th><th>Example<\/th><\/tr><\/thead><tbody><tr><td><code>{customer_name}<\/code><\/td><td>Customer&#8217;s first name (or &#8220;there&#8221; for guests)<\/td><td>John<\/td><\/tr><tr><td><code>{customer_email}<\/code><\/td><td>Customer&#8217;s email address<\/td><td>john@example.com<\/td><\/tr><tr><td><code>{cart_total}<\/code><\/td><td>Cart total with currency symbol<\/td><td>$149.99<\/td><\/tr><tr><td><code>{recovery_link}<\/code><\/td><td>Unique one-click cart recovery URL<\/td><td>https:\/\/store.com\/?recover=abc123<\/td><\/tr><tr><td><code>{unsubscribe_link}<\/code><\/td><td>Opt-out link for recovery emails<\/td><td>https:\/\/store.com\/?unsubscribe=abc123<\/td><\/tr><tr><td><code>{site_name}<\/code><\/td><td>Your website name<\/td><td>My Store<\/td><\/tr><tr><td><code>{site_url}<\/code><\/td><td>Your website URL<\/td><td>https:\/\/mystore.com<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Unpaid Order Emails (Pro)<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Placeholder<\/th><th>Description<\/th><th>Example<\/th><\/tr><\/thead><tbody><tr><td><code>{customer_name}<\/code><\/td><td>Customer&#8217;s first name<\/td><td>John<\/td><\/tr><tr><td><code>{customer_email}<\/code><\/td><td>Customer&#8217;s email address<\/td><td>john@example.com<\/td><\/tr><tr><td><code>{order_number}<\/code><\/td><td>WooCommerce order number<\/td><td>#1042<\/td><\/tr><tr><td><code>{order_total}<\/code><\/td><td>Order total with currency<\/td><td>$149.99<\/td><\/tr><tr><td><code>{order_date}<\/code><\/td><td>Date the order was placed<\/td><td>Feb 24, 2026<\/td><\/tr><tr><td><code>{payment_link}<\/code><\/td><td>Direct link to the payment page<\/td><td>https:\/\/store.com\/checkout\/pay\/1042\/<\/td><\/tr><tr><td><code>{site_name}<\/code><\/td><td>Your website name<\/td><td>My Store<\/td><\/tr><tr><td><code>{site_url}<\/code><\/td><td>Your website URL<\/td><td>https:\/\/mystore.com<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">How Recovery Links Work<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Each abandoned cart is assigned a unique recovery token. When a customer clicks the recovery link in their email:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Their current cart is cleared<\/li>\n\n\n\n<li>The abandoned cart contents are restored (products, quantities, variations)<\/li>\n\n\n\n<li>If a coupon was included, it&#8217;s automatically applied<\/li>\n\n\n\n<li>The customer is redirected to the checkout page<\/li>\n\n\n\n<li>Once they complete the purchase, the cart is marked as&nbsp;<strong>Recovered<\/strong><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">The recovery link replaces the current cart. Products must still be purchasable and in stock, and the current prices and checkout rules apply. The link can expire; a restored cart is not yet a recovered sale.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Unsubscribe Handling<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Every recovery email includes an unsubscribe link in the email footer. When a customer clicks it:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Their cart status changes to&nbsp;<strong>Unsubscribed<\/strong><\/li>\n\n\n\n<li>Other active, abandoned or restored carts for the same email are stopped too, and later capture is suppressed<\/li>\n\n\n\n<li>A confirmation message is displayed to the customer<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The unsubscribe link text and visibility can be configured in the Email Customizer under the&nbsp;<strong>Footer<\/strong>&nbsp;section:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>Setting<\/th><th>Description<\/th><th>Default<\/th><\/tr><\/thead><tbody><tr><td>Unsubscribe Link<\/td><td>Toggle the unsubscribe link on or off in the email footer<\/td><td>Enabled<\/td><\/tr><tr><td>Unsubscribe Text<\/td><td>Customize the link text<\/td><td>&#8220;Unsubscribe from these emails&#8221;<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Current dashboard layout<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In the current dashboard, <strong>General<\/strong> contains Cart Tracking, Guest tracking, and Completed recoveries. <strong>Emails<\/strong> contains the basic recovery email and template. <strong>Abandoned Carts<\/strong> is the review and search table. Pro adds separate <strong>Automation<\/strong>, <strong>Advanced<\/strong>, <strong>Coupons<\/strong>, and <strong>Analytics<\/strong> tabs. The Pro settings described earlier under General or Emails now appear in Automation or Advanced, not those Free tabs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Automation (Pro)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Build a timed recovery email sequence for abandoned carts, with individual email content and timing. When unpaid-order recovery is enabled, configure a separate reminder sequence and template for pending, failed, or on-hold orders. Review the timing and any per-email coupon options before enabling the sequence, then test with a cart and an unpaid order you control.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Advanced (Pro)<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Unpaid order recovery:<\/strong> enable payment reminders for eligible pending, failed, or on-hold orders.<\/li>\n\n\n\n<li><strong>Admin recovery notification:<\/strong> notify the store team when an attributed cart or unpaid order is recovered and paid.<\/li>\n\n\n\n<li><strong>Exclude roles from tracking:<\/strong> avoid recording staff or other internal accounts.<\/li>\n\n\n\n<li><strong>Recovery eligibility:<\/strong> set a minimum cart value before a cart is retained for recovery.<\/li>\n\n\n\n<li><strong>Abandonment webhook:<\/strong> send an event to a configured endpoint when an eligible cart becomes abandoned. Treat the endpoint URL as a sensitive integration setting.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Analytics (Pro)<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The report separates overview, email engagement, and coupon performance. Review abandoned versus recovered carts, attributed recovered revenue, recent activity, customer and product breakdowns, message opens\/clicks, and generated coupon results. Empty states mean no data in the selected period; they do not by themselves indicate a sending failure.<\/p>\n\n\n\n<h2 id=\"recovery-email-timing\" class=\"wp-block-heading\">When is the first reminder due?<\/h2>\n\n\n<p class=\"wp-block-paragraph\">The inactivity threshold and email delay are separate. If a cart is inactive for 60 minutes and the first reminder delay is 60 minutes, the reminder is due roughly two hours after the last activity, plus background-processing time. Pro&#8217;s later delays follow the preceding sent email. WordPress scheduled processing must run for due messages to be attempted.<\/p>\n\n\n<h2 id=\"recovery-email-eligibility\" class=\"wp-block-heading\">Which customers can receive a reminder?<\/h2>\n\n\n<p class=\"wp-block-paragraph\">A tracked cart needs a valid, non-suppressed email address before a reminder can be sent. Signed-in customers can be associated with their account email. With guest tracking enabled, the checkout capture script listens for an entered email on supported classic and Block checkout forms. Confirm capture on your actual theme and checkout rather than assuming every visitor is contactable.<\/p>\n\n\n<p class=\"wp-block-paragraph\">Capturing an email does not by itself establish permission to send marketing. Configure your privacy notice and contact permissions for your audience and review whether recovery follow-ups are appropriate for your store.<\/p>\n\n\n<h2 id=\"recovery-status-definitions\" class=\"wp-block-heading\">What do restored, ordered and recovered mean?<\/h2>\n\n\n<p class=\"wp-block-paragraph\"><strong>Restored<\/strong> means the recovery link rebuilt a cart. <strong>Ordered<\/strong> means that recovery-linked cart produced an order, which removes it from the cart-reminder queue. <strong>Recovered<\/strong> is attributed when the linked order is paid or reaches Processing or Completed. A pending order or an email click is not recovered revenue. Unrelated orders without the recovery attribution are not credited to the cart.<\/p>\n\n\n<p class=\"wp-block-paragraph\">An unsubscribe suppresses the email address and stops its other recoverable carts. This is not a global unsubscribe from unrelated WooCommerce transactional order messages. Keep the recovery unsubscribe route accessible and test it with an address you control.<\/p>\n\n\n<h2 id=\"recovery-report-definitions\" class=\"wp-block-heading\">How should I read email performance?<\/h2>\n\n\n<p class=\"wp-block-paragraph\">A sent record means the mail system accepted the send request; it does not confirm inbox delivery. Open and click events are tracking signals and can be affected by privacy tools and automated scanners. Pro reports attributed recovered orders and revenue separately from email engagement. Check the selected date range and retention settings when interpreting totals.<\/p>\n\n\n<h2 id=\"recovery-preflight\" class=\"wp-block-heading\">Test one complete recovery before enabling follow-ups<\/h2>\n\n<ol class=\"wp-block-list\"><li>Use a test customer or guest email you control. Add an available product and enter the email at checkout; verify the tracked cart in <strong>Abandoned Carts<\/strong>.<\/li><li>In <strong>Emails<\/strong>, configure the Free reminder and use <strong>Customize<\/strong> to review its supported Email Customizer content. In Pro, configure additional steps in <strong>Automation<\/strong>.<\/li><li>Preview and send a test email. Separately let the test cart pass the inactivity threshold and delay to verify the scheduled recovery message.<\/li><li>Open its recovery link and inspect the restored quantities, variations and current prices. Complete the test purchase and inspect the linked cart\/order status.<\/li><li>With a separate test address, use the unsubscribe route and verify that later recovery follow-ups stop. Never test by emailing real abandoned customers.<\/li><\/ol>\n\n<p class=\"wp-block-paragraph\">Follow <a href=\"https:\/\/swiftcommerce.io\/customize-woocommerce-cart-recovery-emails\/\">how to customize recovery emails<\/a> and compare <a href=\"https:\/\/swiftcommerce.io\/feature\/cart-recovery\/\">Cart Recovery Free and Pro capabilities<\/a>. A successful template test does not prove scheduled sending, restoration or attribution; test those separately.<\/p>\n\n\n\n<script type=\"application\/ld+json\" data-swift-commerce-documentation-schema=\"1\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"TechArticle\",\"@id\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/#article\",\"url\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/\",\"headline\":\"Abandoned Cart Recovery\",\"description\":\"Configure cart tracking and recovery reminders, understand delay timing and recovery status, customize emails, and test restoration and unsubscribe handling.\",\"inLanguage\":\"en\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/#webpage\"},\"publisher\":{\"@type\":\"Organization\",\"name\":\"Swift Commerce\",\"url\":\"https:\/\/swiftcommerce.io\/\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/#webpage\",\"url\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/\",\"name\":\"Abandoned Cart Recovery\",\"description\":\"Configure cart tracking and recovery reminders, understand delay timing and recovery status, customize emails, and test restoration and unsubscribe handling.\",\"inLanguage\":\"en\",\"breadcrumb\":{\"@id\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Documentation\",\"item\":\"https:\/\/www.swiftcommerce.io\/help\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sales Recovery\",\"item\":\"https:\/\/www.swiftcommerce.io\/help\/docs-category\/sales-recovery\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Abandoned Cart Recovery\",\"item\":\"https:\/\/www.swiftcommerce.io\/help\/sales-recovery\/cart-recovery\/\"}]}]}<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Configure cart tracking and recovery reminders, understand delay timing and recovery status, customize emails, and test restoration and unsubscribe handling.<\/p>\n","protected":false},"author":101,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"doc_category":[75],"doc_tag":[],"class_list":["post-3183","docs","type-docs","status-publish","hentry","doc_category-sales-recovery"],"year_month":"2026-11","word_count":2281,"total_views":"144","reactions":{"happy":"0","normal":"0","sad":"0"},"author_info":{"name":"Mansoor Ahmad","author_nicename":"helpadmin","author_url":"https:\/\/www.swiftcommerce.io\/help\/author\/helpadmin\/"},"doc_category_info":[{"term_name":"Sales Recovery","term_url":"https:\/\/www.swiftcommerce.io\/help\/docs-category\/sales-recovery\/"}],"doc_tag_info":[],"knowledge_base_info":[],"knowledge_base_slug":[],"_links":{"self":[{"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/docs\/3183","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/users\/101"}],"replies":[{"embeddable":true,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/comments?post=3183"}],"version-history":[{"count":8,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/docs\/3183\/revisions"}],"predecessor-version":[{"id":3387,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/docs\/3183\/revisions\/3387"}],"wp:attachment":[{"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/media?parent=3183"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/doc_category?post=3183"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.swiftcommerce.io\/help\/wp-json\/wp\/v2\/doc_tag?post=3183"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}