Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
      • Get a Tailored Demo
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +32 2 290 34 90
    • Get a Tailored Demo
  • Pricing
  • Help
  1. APPS
  2. eCommerce
  3. Ecommerce Abandoned Cart Recovery v 19.0
  4. Sales Conditions FAQ

Ecommerce Abandoned Cart Recovery

by Hexalian LLC https://hexalian.com
Odoo
v 19.0 Third Party 17
Download for v 19.0 Deploy on Odoo.sh
Apps purchases are linked to your Odoo account, please sign in or sign up first.
Versions 17.0 18.0 19.0
You bought this module and need support? Click here!
Versions 17.0 18.0 19.0
  • Description
  • Manifest

Abandoned Cart Recovery

Automated Email Reminders & Cart Recovery for Odoo 18 eCommerce

FREE & Open Source Odoo 18.0+ LGPL-3 License Guest Cart Recovery
Install Free — Abandoned Cart Recovery

Free lifetime updates & bug fixes · LGPL-3 License

What's Included

Everything you need to recover lost sales from abandoned carts

What You Get Details
Automatic Abandonment Detection JavaScript heartbeat tracks cart activity; configurable inactivity threshold (default: 10 min)
Email Recovery Sequences Up to 3 escalating HTML emails: friendly nudge, gentle follow-up, final urgent notice
Guest Cart Recovery Captures email during checkout so even non-logged-in shoppers can be recovered
Secure Recovery Links UUID4 token-based cart restoration with configurable expiry (default: 72 hours)
Multi-Website Support Each website tracked independently with correct base URL resolution
Analytics Dashboard Pivot and graph views for recovery rate, revenue recovered, email performance
Professional Email Templates Responsive HTML emails with Jinja rendering and partner language detection
Admin Dashboard Manage all abandoned carts from a single tree/form interface with search filters
Bulk Actions Send reminders or resolve multiple carts at once from the list view
Rate Limiting IP-based rate limiting on heartbeat (40 req/min) and email capture (5 req/5 min)
Mobile Responsive All frontend components, emails, and recovery pages work on any device
Clean Uninstall All data, tables, and config parameters properly cleaned on module removal

Overview

Recover up to 70% of abandoned carts automatically

Smart detection via a 30-second heartbeat system. When a customer leaves the cart page without purchasing, the module detects inactivity and automatically marks the cart as abandoned after a configurable threshold.

Escalating email sequences bring customers back. Up to 3 professional HTML emails with increasing urgency, each containing a secure one-click link back to their cart.

Guest cart recovery captures the customer's email during checkout — even if they never log in. No sale is lost just because a customer didn't create an account.

Full analytics with pivot tables and graphs. Track recovery rates, revenue recovered, email performance, and trends over time to optimize your strategy.

3
Cron Jobs
3
Email Templates
14
Settings
100%
Free

Key Features

Everything you need for cart recovery on your Odoo store

Automated Email Recovery

Up to 3 escalating reminder emails sent automatically. Polite, firm, then urgent — each with a professional responsive design.

Secure Recovery Links

UUID4 token-based cart restoration links with configurable expiry. One-click return to cart — no login required.

Guest Cart Recovery

Captures email during checkout so even guest shoppers can be recovered. Non-intrusive widget that fires on blur.

Analytics Dashboard

Pivot and graph views for recovery rate, revenue recovered, email performance. Track trends by week or month.

Multi-Website Support

Works correctly in multi-website environments. Each website tracked independently with correct URL resolution.

Bulk Actions

Send reminders or resolve multiple abandoned carts at once from the list view. Save time on manual operations.

Rate Limiting

IP-based rate limiting on heartbeat (40 req/min) and email capture (5 req/5 min). Built-in protection against abuse.

Mobile Responsive

All frontend components, email templates, and recovery pages work perfectly on any device or screen size.

14 Configurable Settings

Threshold, delays, max emails, intervals, expiry, guest recovery, link validity, 3 email templates — all adjustable from Settings.

See It In Action

Screenshots from the Odoo backend

Admin Dashboard — Abandoned Cart List

Odoo backend showing the abandoned cart list view with status badges, cart amounts, recovery email counts, and click tracking

The main Abandoned Carts list view shows every tracked cart with status badges, cart value, item count, number of emails sent, and whether the recovery link was clicked. Color-coded decorations highlight abandoned, email-sent, recovered, and expired carts at a glance. Bulk actions let you send reminders or resolve multiple carts at once.

Professional Email Templates

Three professional HTML email templates: friendly reminder in purple, gentle follow-up in green, and urgent final notice in red

Three responsive HTML email templates with escalating urgency: a purple friendly nudge, a green gentle follow-up, and a red final notice. Each email includes the cart total and a prominent one-click recovery button. Templates use Jinja rendering for dynamic content and support partner language detection.

Settings Panel

Odoo Settings panel showing Abandoned Cart Recovery configuration: enable toggle, abandonment threshold, email delay, max emails, interval, expiry, guest recovery, link validity

All configuration lives in Website > Configuration > Settings under the Abandoned Cart Recovery section. Toggle the module on/off, set the abandonment threshold, configure email delays and intervals, enable guest recovery, and set recovery link validity — all from one clean settings panel.

Analytics Dashboard

Pivot and graph views showing abandoned cart analysis: cart amounts by state, recovery trends by month, email performance metrics

The Cart Analytics dashboard provides pivot tables and graphs to analyze abandonment trends, recovery rates, and revenue recovered. Filter by state, group by customer or website, and track performance over weekly or monthly intervals to optimize your recovery strategy.

Why Install Abandoned Cart Recovery?

See what you get vs. Odoo out of the box

Feature Odoo Default Abandoned Cart Recovery
Abandoned cart detection No detection at all Automatic via 30s heartbeat
Recovery emails Not available Up to 3 escalating emails
Guest cart recovery Not available Email capture at checkout
Recovery links Not available Secure token-based, time-limited
Analytics dashboard Not available Pivot + graph views
Email templates Not available 3 responsive HTML templates
Multi-website support N/A Per-website tracking
Bulk actions Not available Send reminders / resolve in bulk
Rate limiting N/A IP-based on all endpoints
Auto-converted detection Not tracked Auto-marks when order confirmed
Price Free (no feature) Free (LGPL-3)

Technical Specifications

Built with Odoo best practices

Dependencies:

  • base
  • web
  • website
  • website_sale
  • product
  • sale
  • mail

Compatibility:

  • Odoo 18.0 Community Edition
  • Odoo 18.0 Enterprise Edition
  • Bootstrap 5 compatible
  • Works with all standard themes

Automation:

  • Scan & mark abandoned carts — every 5 min
  • Send recovery emails — every 10 min
  • Check recovered carts — every 1 hour

API Endpoints:

  • /cart/current_order — Session cart lookup (JSON-RPC)
  • /cart/activity — Heartbeat (JSON-RPC, 40 req/min)
  • /cart/capture_email — Guest email capture (5 req/5 min)
  • /cart/recover/<token> — One-click cart recovery
  • /cart/unsubscribe/<token> — One-click email opt-out

File Structure:

ecommerce_abandoned_cart/
├── controllers/
│   └── main.py               # 5 JSON/HTTP endpoints
├── data/
│   ├── cron_data.xml          # 3 automated crons
│   ├── default_config.xml     # 14 default settings
│   └── mail_template_data.xml # 3 email templates
├── models/
│   ├── abandoned_cart.py      # Core model
│   ├── res_config_settings.py # Settings panel
│   └── sale_order.py          # Cart activity + conversion
├── security/
│   ├── abandoned_cart_security.xml  # Groups & rules
│   └── ir.model.access.csv    # ACL permissions
├── static/
│   ├── description/
│   │   ├── icon.png
│   │   ├── index.html
│   │   ├── admin_dashboard.png
│   │   ├── email_templates.png
│   │   ├── settings_page.png
│   │   └── analytics_dashboard.png
│   └── src/
│       ├── css/
│       │   └── abandoned_cart.css
│       └── js/
│           ├── cart_activity_tracker.js
│           └── email_capture.js
├── views/
│   ├── abandoned_cart_views.xml  # Tree/form/search
│   ├── dashboard_views.xml       # Pivot/graph
│   ├── recovery_page_template.xml
│   ── res_config_settings_view.xml
├── wizards/
│   ├── abandoned_cart_bulk_action_wizard.py
│   └── abandoned_cart_bulk_action_wizard_views.xml
├── __init__.py
├── __manifest__.py
├── hooks.py                      # Clean uninstall
├── LICENSE
└── README.md

Perfect For

Ideal for these business types

  • Online Retailers — Recover lost sales from shoppers who leave items in their cart
  • B2B Stores — High-value carts deserve follow-up to close the sale
  • Fashion & Apparel — Win back shoppers comparing prices across stores
  • Electronics — Recover considered purchases with urgent final reminders
  • Subscription Products — Recover near-complete signups before they lapse
  • Multi-Website Stores — Track abandonment independently per website
  • High-Traffic Stores — Even a 5% recovery rate can mean significant revenue
  • Any Odoo eCommerce — If you use website_sale, this module adds immediate value

Quick Configuration

Get started in minutes

  1. Install Abandoned Cart Recovery from the Apps menu
  2. Go to Website > Configuration > Settings and find the Abandoned Cart section
  3. Enable the module and configure the abandonment threshold (default: 10 minutes)
  4. The heartbeat, email crons, and recovery links are all active immediately
Zero configuration needed: Install the module and it starts tracking carts immediately. The default settings (10 min threshold, 3 emails, 24h interval) work well for most stores. Fine-tune later as you learn your customers' behavior.

How It Works

From cart abandonment to recovered sale in 4 steps

Step 1 — Customer adds items to cart

A JavaScript widget sends a heartbeat every 30 seconds while the customer is on the cart page. The cart value and item count are tracked automatically.

Step 2 — Customer leaves without purchasing

When the heartbeat stops and the inactivity threshold is exceeded (default: 10 minutes), the cart is automatically marked as abandoned.

Step 3 — Recovery email is sent

A professional HTML email with a direct link back to their cart is sent automatically. Up to 3 reminders at increasing urgency if the customer doesn't return.

Step 4 — Customer clicks and completes purchase

The one-click recovery link takes them back to their cart. When the order is confirmed, the cart is automatically marked as converted. Revenue recovered!

Email Delivery — How & When Emails Actually Go Out

Everything you need to know about delivery timing and troubleshooting

Emails are sent immediately by the module's own cron

Recovery reminders are sent directly by the module's "Abandoned Cart: Send Recovery Emails" scheduled action (every 10 minutes), the moment a cart becomes eligible. Delivery is therefore driven by your configured timing — not by Odoo's generic hourly mail queue — so a reminder goes out as soon as the abandonment threshold + email delay has elapsed.

What drives delivery timing?

Three values, all set in Website > Configuration > Settings: the Abandonment Threshold (minutes of inactivity before a cart is marked abandoned, default 10), the Email Delay (minutes to wait before the first email, default 10), and the Email Interval (hours between subsequent emails, default 24). A cart typically receives its first reminder about 20–35 minutes after it is abandoned.

"Emails Sent" counts when the email is created

On a cart, Emails Sent and Last Email Sent On are recorded when the send is triggered; the delivery is then confirmed by your outgoing mail server. If a customer says "I never received the email", verify with the SMTP server or the recipient's spam folder, not just the cart counter.

Checklist when an email doesn't arrive

  • Is an outgoing mail server configured (Settings > General > Discuss > Outgoing Mail Servers) with valid credentials?
  • Check the recipient's Inbox and Spam — mail from datacenter IPs is often filtered.
  • Inspect the delivery state: Settings > Technical > Email > Outgoing Mail. State exception means delivery failed and the reason is stored on the record.
  • Verify the module crons are active: Settings > Technical > Scheduled Actions — "Abandoned Cart: Scan and Mark Abandoned" (every 5 min) and "Abandoned Cart: Send Recovery Emails" (every 10 min).
  • Confirm the cart is not marked sequence finished (max emails reached) or expired — eligible carts stop receiving emails.

Frequently Asked Questions

Common questions about Abandoned Cart Recovery

How does the abandoned cart detection work?

A JavaScript heartbeat sends a signal every 30 seconds while the customer is on the cart page. When the heartbeat stops and the configurable inactivity threshold is exceeded, the cart is automatically marked as abandoned and recovery emails begin.

Can I recover guest carts without login?

Yes. The module captures the customer's email address during checkout via a non-intrusive widget. Even if the customer never creates an account, you can still send recovery emails.

How many recovery emails are sent?

Up to 3 escalating reminders: a friendly nudge, a gentle follow-up, and a final urgent notice. The number of emails, delay before the first email, and interval between emails are all configurable.

Does it work with multi-website setups?

Yes. Each website is tracked independently. Recovery links use the correct website base URL, and the analytics dashboard shows per-website breakdowns.

I enabled Auto-Send but no email arrives. Why?

Recovery emails are sent immediately by the module's own scheduled action once a cart becomes eligible (abandonment threshold + email delay). If nothing arrives, verify an outgoing mail server is configured, check the recipient's spam folder, confirm the module crons are active, and look at Settings > Technical > Email > Outgoing Mail for failed (exception) messages. See the Email Delivery section above.

Is this module really free?

Yes. Abandoned Cart Recovery is 100% free and open source under the LGPL-3 license. Free lifetime updates, no hidden fees, no per-user charges.

Complete Your Conversion Toolkit

These modules work alongside Abandoned Cart Recovery to maximize revenue at every stage of the customer journey

E-Commerce Suite All-in-One

10+ features in one bundle: Quick View, Wishlist, Comparison, Bundles, Stock Alerts, Reviews, Recently Viewed & more.

$160 (Save $94+)

View Suite

Wishlist & Favorites

Save favorites, price drop alerts, back-in-stock notifications, wishlist sharing, and analytics. Drives repeat visits and reduces cart abandonment.

$69

View Module

Back in Stock Alerts

Automated email notifications when out-of-stock products are restocked. Captures customer emails and recovers lost sales from unavailable items.

$35

View Module

Quick View Modal

Fast product preview without leaving the shop page. Boosts conversion rates.

$30

View

Product Bundles & Kits

Combo deals and smart bundles to increase average order value.

$40

View

Product Comparison

Side-by-side comparison for up to 4 products. Helps customers decide faster.

$35

View

Reviews & Ratings

Verified customer reviews with 5-star ratings, filters, and AJAX pagination.

$35

View

Recently Viewed

Browsing history carousel that helps customers rediscover products.

$10

View

B2B Pricing Suite

Tiered pricing, MOQ, quantity steps & volume discounts for wholesale.

$79

View

Smart Dunning

Payment reminders & collection suite. Escalating dunning emails with automation.

€99

View

Announcement Bar

Promo banners, sticky header announcements, and countdown timers.

€49

View

Support

For technical support or feature requests, contact support@hexalian.com

Install Free — Abandoned Cart Recovery

Abandoned Cart Recovery v18.0.1.0.1 | Developed by Hexalian LLC

License: LGPL-3. This software is provided "as is", without warranty of any kind.

Availability
Odoo Online
Odoo.sh
On Premise
Odoo Apps Dependencies • Discuss (mail)
• Website (website)
• eCommerce (website_sale)
• Invoicing (account)
Lines of code 2069
Technical Name ecommerce_abandoned_cart
LicenseLGPL-3
Websitehttps://hexalian.com

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with