When does Magento consider a cart to be abandoned? Where's that time limit set?

Kale picture Kale · Mar 1, 2013 · Viewed 18.5k times · Source

If left to default settings, what circumstances would have to occur for Magento 1.7 to consider a cart abandoned? Where is the code that makes this determination located?

I know that this is probably set somewhere in the quote, but I can't find it for the life of me.

I've done some Googling, but like so many Magento questions I'm left empty handed. Thanks!

Answer

khoekman picture khoekman · Mar 6, 2013

As you probably know the setting is located here:

Admin => system => Configuration => Sales => Checkout => Quote Lifetime (days)

This will add the setting to the database (core_config_data table) with path:

checkout/cart/delete_quote_after

This path is used in the code on:

app/code/core/Mage/Sales/Model/Observer.php line 54

So when someone is adding something to a cart it will be updated. When a customer logs in and his cart is there it will be updated. When a cart is not updated for the last 30 days. It will be removed.

Extra information:

In case you wonder when this code is used, It is used by the cronjob of magento.

check: App/code/core/Mage/Sales/etc/config.xml line 1732

<crontab>
    <jobs>
        <sales_clean_quotes>
            <schedule>
                <cron_expr>0 0 * * *</cron_expr>
            </schedule>
            <run>
                <model>sales/observer::cleanExpiredQuotes</model>
            </run>
        </sales_clean_quotes>

Hope this helps.