The Abandoned Cart module is disabled by default. This page explains how to enable it and what happens when you do.
How to Enable
- Go to WooCommerce > Mautic Integration in your WordPress admin.
- Click the Abandoned Cart tab.
- Check the box labeled Enable Abandoned Cart Module at the top of the tab.
- Click Save Changes.
What Happens When Enabled
Once the module is active, several things start working automatically:
- Checkout script – A lightweight JavaScript file is loaded on your checkout page. It captures the customer’s email address and cart contents via AJAX as soon as the email field is filled in.
- GDPR checkbox – If the GDPR checkbox is enabled (it is by default), a consent checkbox appears on the checkout page after the billing fields. Cart data is only captured when the customer checks this box.
- Database table – Cart data is saved to a dedicated table (
wp_mautic_woo_abandoned_carts) in your WordPress database. This table is created automatically during plugin activation. - Cron jobs – Two WordPress cron events are scheduled. The first runs every 15 minutes to detect abandoned carts and sync them to Mautic. The second runs daily to clean up old cart records (older than 90 days) and expired recovery coupons.
- Recovery URL handler – The plugin starts listening for recovery link clicks (
?mautic_woo_recover=TOKEN). When a customer clicks this URL, their cart is restored and they are redirected to checkout. - Order recovery detection – When any order is completed, the plugin checks if the billing email matches an abandoned cart. If it does, the cart is marked as recovered and the recovered cart tag is applied in Mautic.
Requirements
The Abandoned Cart module depends on the Authentication module. If your Mautic connection is not configured or the test connection fails, the module will not initialize even when the checkbox is enabled. Make sure your Mautic connection is working before enabling Abandoned Cart.
WordPress Cron Note
WordPress cron is triggered by page visits. On low-traffic sites, the 15-minute cron may not fire exactly on schedule. If you need reliable timing, set up a real server cron job that calls wp-cron.php every few minutes. Your hosting provider can help with this, or you can use a free external cron service.