Magento Extensions

Estimated Delivery Date

Display on the Magento product pages and in the customer cart the estimated delivery date for the available products and for the backorders with a completely customizable message.

  /  8 Reviews



You may also be interested in...


Give your customers the ability to pick up their orders from any of your sales outlets or warehouses when checking out. Locations to pickup can be displayed on a Google Map and can be managed by store-views and/or customer groups.



General Use of Estimated Delivery Date for Magento

Overview of the Magento extension

Estimated Delivery Date is a Magento extension which allows you to manage your lead times on several levels.

First, you can configure your Magento store in a general way, assigning lead times by default. But you can also configure lead times for attributes and even for products of your store. Estimated Delivery Date offers you a multi-level lead times management (an overall, specific and detailed level).

Another positive aspect of Estimated Delivery Date is that it is a Magento extension entirely customizable. You have the possibility to completely personalize the delivery messages: either by groups (from X to Y days, from X to Y weeks...), or with deadlines and this for each language.


When a customer will be on the page of an Apple product, or for example, a silver colored product, he will be able to see a message indicating, according to your Estimated Delivery Date settings, when the product will arrive, or will show a countdown until the product is received.  

Case study

Here are two websites. The first one is composed of two store views, an English store and a German one. The second website is composed of a default view.  

With Estimated Delivery Date, you can define lead times for each store view in a general way.  

Let’s imagine that you are exporting from Great Britain, the lead times are not the same depending on where you are exporting your products. Then you only have to fill in the number of delivery days needed for each store view.

In the following example, 4 days are needed for the delivery of the DE store whereas only 2 days are enough for the GB store.  

You can also define more specific lead times for some attributes (such as colors or brands). Let’s imagine, we have chosen the “type” attribute, then for the website 1, we have defined that 3 additional days were needed for any furniture and 1 extra day for electronics. Concerning the website 2, we have defined that for the “Brand” attribute, more precisely Apple products, one extra day should be added for the delivery.

Finally, this Magento extension allows you to configure lead times in a more detailed way. If in your catalog, you have a product that needs more time to be delivered (example of backorders where the product often needs to be ordered from the vendor), you can assign to this product 5 extra days as for the DE store in the following example. But if the product is in stock, no day will be added.  

Estimated Delivery Date is the essential extension allowing you to establish and personalise your lead times for each one of your Magento store on several levels.  

Estimated Delivery Date in 3 steps

To configure Estimated Delivery Date go to System > Configuration > Wyomind > Estimated Delivery Date.

Before anything, you need to define a certain number of parameters.

STEP 1: Configure your extension in a general way

First of all, be sure that the current configuration scope is Default Config.

Then, you can start with defining the default lead time and the default lead time in case of backorders in days.
If you want to use ranges such as: 'from 2 days to 4 days', please write: '2-4'

Check how to manage your lead times according to store views.

After that, you can define the shipping days for orders and for backorders.
Choose the days when the orders or backorders will be delivered as well as the last shipping time of the day. 

Estimated Delivery Date allows you to set days off for shipping. Each date must be written in a new line as: YYYY-MM-DD.

You may want to manage your lead times according to some of the attributes of your products. If it's the case, set Use attributes to define additional lead times to YES. Choose the attributes that need additional lead times and define the scope between Orders, Backorders or both.

Check how to manage your lead times by product attributes.

Estimated Delivery Date allows you to display messages in the product page, in the cart and for each item in the cart. To display a message for each item in the cart, set Use message to display for each item in cart to YES.

The messages and the date format are totally customizable.

Find out how to personalize the messages and the date format.

STEP 2: Personalize the messages and the date format

With Estimated Delivery Date, you can personalize your messages. There are three kinds of message:

  • The first message is displayed in the shopping cart.
  • You can then display or not a message for each item of the shopping cart selecting Yes
  • Finally, the last message will be displayed in the product page

These messaged can be totally personalized. You can include specific syntaxes just as below in order to display the lead times, the availability date and the time left before the order is received.

You have several possibilities:

  • {{leadtime_from}} = number of minimum lead times (+ days off)
  • {{leadtime_to}} = number of maximum lead times (+ days off)
  • {{date_from}} = d-day + minimum lead times (+ days off)
  • {{date_to}} = d-day + maximum lead times (+ days off)
  • {{countdown}} = number of hours, minutes and seconds before the last shipping of the day.


  • for the English Store view: This item will be ready to ship on {{date_from}}.
  • for the French Store view: Cet article sera prêt à être expédié le {{date_from}}.

The last field includes the date format to display. Indeed, the date format is often different from a country to another. You can refer to the following table in order to create your own date format.


  • for 'Sunday 5st of July 2014'
  • write 'l jS \of F Y'

You can also define some date formats for each store view.

  • for the English Store view: l jS \of F Y will give: Tuesday 26th of August 2014
  • for the French Store view: l j F Y will give: Mardi 26 Août 2014

STEP 3: Manage leadtimes

By store view

Estimated Delivery Date allows you to configure lead times according to the store view. From the general configuration (System > Configuration > Wyomind > Estimated Delivery Date), have a look to the Current configuration scope at the top of the admin.

When choosing a configuration scope, you have the possibility to use default data or to change the settings as you want.

For example, if you need two additional days to send goods to England, you can define it in the Default lead time in days field for the English store view.

By product attribute

First of all, you need to enable the option to use attributes to define additional leadtimes in System > Configuration > Wyomind > Estimated Delivery Date. Then choose the attributes to which you want to add additional leadtimes as well as the scope of these leadtimes.

After having selected the attributes to which you want to add lead times, save your configuration. A notification should appear at the top of your admin:

Then go to Catalog > Attributes > Manage Leadtimes/Attributes. There, you will be able to assign additional lead times for each one of the value of these attributes. As on the example below, where we added 4 lead time days for products available in silver color.

Save all your modifications by clicking on Save all changes.

For each product

With Estimated Delivery Date, you can manage lead times at the product level. Go to Catalog > Manage Products. Select a product and click on Edit. Go to the Inventory tab.

In the Shipment lead times tab, you'll be able to add or modify lead times for this product in particular.

Don’t forget to click on Save.

Note that if you use the Google Trusted Stores extension, you can use Estimated Delivery Date to manage the orders estimated delivery dates more specifically.

Estimated Delivery Date Features
  • Display on the frontend the estimated delivery date in product pages and in the customer cart
  • Manage your lead times by store view, by product attributes and for each products
  • Manage your lead times for 'in stock' products and backorders
  • Calculate the delivery date depending on the days off and the current day time
  • Completely customize the messages in product page and customer cart (delay in days, delivery date and countdown before next shipping)
  • NEW! Dynamic countdown in the product page
  • Easy to install
  • Easy to configure
  • Open source
  • Free lifetime support
    Estimated Delivery Date Screenshots
    General questions Process questions Installation questions
    General questions

    Which version of Magento is supported by Estimated Delivery Date?

    This extension works with Magento Community Edition and also Magento Enterprise Edition. To know if Estimated Delivery Date is compatible with your Magento version, please check the Compatibility tab. 

    Process questions

    How to display the message in the product page for a customized theme?

    You only need to copy the following code and to paste it in any .phtml file:

    $__['day'] = Mage::helper('estimateddeliverydate/data')->__('day');
    $__['days'] = Mage::helper('estimateddeliverydate/data')->__('days');
    $__['hour'] = Mage::helper('estimateddeliverydate/data')->__('hour');
    $__['hours'] = Mage::helper('estimateddeliverydate/data')->__('hours');
    $__['min'] = Mage::helper('estimateddeliverydate/data')->__('minute');
    $__['mins'] = Mage::helper('estimateddeliverydate/data')->__('minutes');
    $__['second'] = Mage::helper('estimateddeliverydate/data')->__('second');
    $__['seconds'] = Mage::helper('estimateddeliverydate/data')->__('seconds');
    $countdown_format = Mage::getStoreConfig("estimateddeliverydate/display_settings/countdown_format");
    $dynamic_countdown = Mage::getStoreConfig("estimateddeliverydate/display_settings/dynamic_countdown") ? "1" : "0";
        var elapsed_time = 0;
        function countdown(decrement) {
            if ($('edd_countdown')) {
                var current_countdown = parseInt($('edd_countdown').getAttribute('countdown')) - elapsed_time;
                if (decrement) {
                    elapsed_time += 1;
                if (current_countdown <= 0) {
                var d = Math.floor(current_countdown / 86400);
                var h = Math.floor(current_countdown % 86400 / 3600);
                var m = Math.floor(current_countdown % 86400 % 3600 / 60);
                var s = (current_countdown % 86400 % 3600 % 60);
                var timer = new Array();
                if (<?php echo $countdown_format; ?> >= 1) {
                    var day = (d > 0) ? ((d > 1) ? (d + " <?php echo $__['days']; ?>") : (d + " <?php echo $__['day']; ?>")) : "";
                    if (day != "")
                if (<?php echo $countdown_format; ?> >= 2) {
                    var hour = (h > 0) ? ((h > 1) ? (h + " <?php echo $__['hours']; ?>") : (h + " <?php echo $__['hour']; ?>")) : "";
                    if (hour != "")
                if (<?php echo $countdown_format; ?> >= 3) {
                    var min = (m > 0) ? ((m > 1) ? (m + " <?php echo $__['mins']; ?>") : (m + " <?php echo $__['min']; ?>")) : "";
                    if (min != "")
                if (<?php echo $countdown_format; ?> >= 4) {
                    var sec = (s > 0) ? ((s > 1) ? (s + " <?php echo $__['seconds']; ?>") : (s + " <?php echo $__['second']; ?>")) : "";
                    if (sec != "")
                $('edd_countdown').update(timer.join().replace(/,/g,', '));
        document.observe("dom:loaded", function () {
            if (<?php echo $dynamic_countdown; ?> == 1) {
                setInterval(function () {
                }, 1000);
    if ($_product->isConfigurable()) {
        $attributes = array();
        $_attributes = $_product->getTypeInstance(true)->getConfigurableAttributes($_product);
        foreach ($_attributes as $_attribute) {
            $attributes[] = Mage::getModel('eav/config')->getAttribute('catalog_product', $_attribute->getAttributeId());
        $AssociatedProduct = $_product->getTypeInstance()->getUsedProducts();
        $children = array();
        $i = 0;
        foreach ($AssociatedProduct as $child) {
            foreach ($attributes as $attr) {
                $children[$i]["attribute" . $attr->getAttributeId()] = $child->getData($attr->getAttributeCode());
            $children[$i]['message'] = Mage::helper("estimateddeliverydate/data")->getProductMessage($child, Mage::app()->getStore()->getId());
            var edd = <?php echo json_encode($children); ?>;
            var launched = false;
            document.observe("dom:loaded", function () {
                $$(".super-attribute-select").each(function (sa) {
                    sa.observe("change", function () {
                        attr = [];
                        selection = true;
                        $$(".super-attribute-select").each(function (s) {
                            if (s.value === "")
                                selection = false;
                            attr.push({'id':, 'value': s.value});
                        if (selection) {
                            edd.each(function (e) {
                                found = true;
                                attr.each(function (a) {
                                    if (eval("e." + !== a.value)
                                        found = false;
                                if (found) {
                        else {
        <div class="notice" id="leattimes"></div>
    <?php } else { ?>
        <div class="notice"> <?php echo Mage::helper("estimateddeliverydate/data")->getProductMessage($_product, Mage::app()->getStore()->getId()); ?></div>
    <?php } ?>

    How to personalize "delivery date" messages?

    In System > Configuration > Wyomind > Estimated Delivery Date, you can personalize your messages. There are three options:

    • Personalization of the product page
    • Personalization of the shopping cart page
    • Personalization for each item of the cart

    The first field allows you to edit or not the message displayed in the shopping cart.

    You can then display a message for each item of the shopping cart. If you select Yes, You will also be able to edit the default message.  

    In your personalized message, you can include specific syntaxes just as below in order to display the lead times, the availability date and the time left before the order is received.

    You have several possibilities: 

    • {{leadtime_from}}
    • {{leadtime_to}}
    • {{date_from}}
    • {{date_to}}
    • {{week_from}}
    • {{week_to}}
    • {{countdown}}

    The last field includes the date format to display. Indeed, the date format is often different from a country to another. For that latter, you can refer to the following table in order to create your own date format.

    For example, if you wish to write « 1st of January 2014 », then you must use the following syntax « l jS \of F Y ». 

    You can also customize messages with CSS and HTML using tags such as:

    Estimated Delivery Date:<span style="color:green">{{date_from}}</span> to <span style="color:red">{{date_to}}</span>

    Here is below an example in a product page.

    How do I change the position of the "Estimated Delivery Date" text in checkout/cart?

    You can edit the layout of the module for the checkout in app/design/frontend/default/default/layout/estimateddeliverydate.xml
    The part you can modify is:

    	<reference name="content">
    		<block type="estimateddeliverydate/notification" name="estimateddeliverydate.notification" as="estimateddeliverydate_notification" before="-"/>

    You can change the reference and the position of the block, for example:

    	<reference name="content"> 
    		<block type="estimateddeliverydate/notification" name="estimateddeliverydate.notification" as="estimateddeliverydate_notification" after="checkout.cart"/> 

    What to do if the "Delivery date" message is not displayed in the product page?

    By default, Estimated Delivery Date overwrites the below file:




    Some extensions or templates can do the same and so a conflict can be due to that situation and prevent the "Delivery date" message from being displayed.

    Several solutions allow to fix the problem:

    • Move the template \leadtimes\catalog\product\view\type\default.phtml to your theme and/or personnalized design.
    • Merge your version of default.phtml with \leadtimes\catalog\product\view\type\default.phtml

    How to add the "Delivery date" message in any .phtml files?

    You only need to add the following code in your .phtml file:

    <?php echo Mage::helper("estimateddeliverydate")->getCartMessage(Mage::app()->getStore()->getId()); ?>

    Why when I add a new option to an attribute, it is not displayed in Catalog > Attributes > Manage leadtime/Attribute?

    When adding an option to an attribute that you already use to manage leadtimes, you need to re-save the configuration of the extension in System > Configuration > Estimated Delivery Date. Check that your attribute is selected in Attributes for additional lead times and click on "Save Config".

    Why price shows up twice on the product page after I copied the extension design files into the theme folder?

    You have to edit the following file:


    Then remove the following line at the bottom:

    <?php echo $this->getPriceHtml($_product) ?>

    What to do when using another template package than "default" (eg: "rwd" for Magento 1.9)?

    Simply copy the files and folders you'll find in app/design/frontend/default/default/ into app/design/frontend/your_package/default/.

    How to translate some text on the frontend?

    For example, you want to translate some expressions for the French store view.

    Go to your Magento root directory. Copy the Wyomind_estimateddeliverydate.csv file under app/locale/en_US to app/locale/fr_FR (or to the language you want).

    In that file, you can add some entries and translations. For example:

    • "First name","Prénom"
    • "Last name","Nom"
    • ....

    Here is below an example of a translation csv file.

    You could also use the "Translate Inline" tool available in the magento system (System > Configuration > Advanced > Developer > Translate Inline).

    Installation questions

    I didn't receive my payment confirmation for Estimated Delivery Date

    1. The payment confirmation email should only take a few minutes, rarely more than one hour
    2. Check your spam filter
    3. Contact us: we will try again to send it

    Can I use the same license for my staging server?

    No need to buy 2 licenses for 2 domains to test an extension on a staging server first, a license is valid for one live domain and as many staging or development environments you need. To be able to use your extension on production and pre-production domains, you have to follow some steps. Here is how to proceed:

    1. Install the extension on your production environment.

    2. Activate the license.

    3. You can now use your extension on your production domain.

    Now you want to use the extension on your live domain.

    1. Redownload your extension package from your Wyomind account.

    2. Install the extension on your live domain.

    3. From your Magento admin panel, in System > Config > Wyomind > Your extension, fill in your current activation key.

    4. Save config.

    5. A notification is displayed offering you to Buy a new license or to Request a free license transfer.

    6. Request a free license transfer.

    7. Our team approves or denies your request within one hour (see conditions).

    8. You receive a confirmation email.

    9. Once your request is accepted, you can use your extension on both domains.

    The order in which you activate your license on your domains has no importance, you can activate the extension on your live domain first and then on your staging or dev environments.

    Where can I find the extension package?

    You can find the extension package directly in your Wyomind account.

    Go to My account > My downloads and click on the grey arrow next to the extension you've just purchased.

    A new window opens. Click on the orange link on the right that specifies the version of the extension. Your download can start.

    For any extension, you can download the package even after your free upgrade period.

    In the case where the extension you've purchase includes other ones (for example Advanced Inventory or Pickup@Store), before being able to see the orange link, you will need to click on your domain name.

    After that, you will be able to click on the orange link to reupload the extension package.

    Check our faqs to install your extension and activate your license.

    How do I install Estimated Delivery Date?

    1. Before installing the extension, it's advisable to backup your Magento installation. To complete the setup of your extension in the best way, you first need to disable the compiler in your Magento admin. For that, go to System > Tools > Compilation.

    If the compiler is activated, you must disable it by clicking on Disable.

    2. Then, you need to refresh caches in System > Cache Management.

    3. Now you can download the zipped extension from your Wyomind account > My downloads. Find the extension and click on the grey arrow.

    4. Click on the orange link (example: 8.1.0 Available) to download your extension.

    5. Once you have downloaded it, unzip the folder content.

    6. Copy the folder content and paste all files and directories into your Magento web site root directory (the folder content can vary according to the extension but it generally includes the app, lib and skin folders). 

    7. Once your installation is complete, don’t forget to enable the Compiler if it was activated before the installation and to Run Compilation Process.

    8. Clear the cache and log in again.  

    Well done, your Wyomind extension installation is all set! Have a look to our next FAQ on how to activate your license.

    I'm asking to overwrite /lib/Varien/Data/Form/Element/link.php, should I carry on?

    You can skip this file, it's only for magento < 1.4.

    Where can I find my activation key?

    You can find your activation key in 3 different places.

    1. In the confirmation email that you've received after the purchase of your extension

    2. In your Wyomind account

    Log into your Wyomind account. In My account > My downloads, choose your extension and click on the grey arrow on its right. There your should find the activation key.

    3. In your Magento admin when the extension is already installed and activated

    Log into your Magento admin panel. In System > Config > Wyomind > your extension, you should see the License activation tab. In that tab you'll find your activation key.

    How do I activate Estimated Delivery Date ?

    You have installed your extension. Now you need to activate the license.

    1. Copy the activation key available in your Wyomind account (check our FAQ to know where to find your activation key). For example: ACTKEY-ABCD.

    2. Go to your Magento admin. A message appears at the top.

    3. In System > Config > Wyomind > Your extension, paste the activation key in the Activation key field.

    4. Choose between the Automatic (Yes) or the Manual (No) activation method.

    • Automatic (Yes): you allow a connection to Wyomind's license server
    • Manual (No): you must log in with your browser to Wyomind's license server

    5. Save your config.

    6. A message appears at the top of your admin: Activate it now! Click on that link.

    7. Copy and paste the license code in the License code field from your admin or simply click on Activate now!.

    8. Finally, you must log out and clear the caches so that the installation is complete. And that's all!

    To activate the license of an extension that includes other modules (for example Advanced Inventory that includes 3 modules), you will have to repeat the above steps for each module (in the case of Advanced Inventory there will be 4 modules to activate) using the activation keys corresponding to each module.

    How do I uninstall Estimated Delivery Date?

    In order to uninstall Estimated Delivery Date, you must remove all the following files and directories:

    • app/etc/modules/Wyomind_estimateddeliverydate.xml
    • app/code/local/Wyomindestimateddeliverydate
    • design/adminhtml/default/default/layout/estimateddeliverydate.xml
    • design/adminhtml/default/default/template/estimateddeliverydate
    • skin/adminhtml/default/default/estimateddeliverydate
    • app/locale/lang_LANG/Wyomind_estimateddeliverydate.csv


    Clean the cache and re-launch the compiler (if you use it).

    How do I upgrade to the latest version of the extension?

    You can upgrade directly from your account.

    1. Go to My account > My downloads

    2. Click on the grey arrow next to the extension you want to upgrade

    3. Tick the domain(s) you want to upgrade

    4. Choose 1 month or 1 year of upgrade

    5. Click on Pay now with Paypal

    Why do I get a message 'Request an IP unlock' in my admin?

    If you're getting this message, it probably means that you have filled in the Activation Key field in System > Config > Wyomind > Your extension with a wrong activation key too many times.

    You need to follow these steps:

    1. Click on Request an IP unlock.
    2. Our team should accept your request within one hour.
    3. During that time, check which activation key you need to provide (our Faq will help you find your activation key).
    4. Once your IP unlock request has been approved, paste your activation key in the Activation key field (in System > Config > Wyomind > Your extension) and click on Save Config.

    Then, you can finalize the activation of the license.

    Why do I get a message 'Unable to update your license' in my admin?

    If you get the following message in your Magento admin:

    Wyomind extension
    Unable to update your license : your subscription has expired.
    In order to extend your subscription, please connect into your Wyomind account.

    It probably means that you installed a higher version than the one you're licensed for.

    You'll have 2 possibilities:

    1. Download and install the extension version you purchased
    2. or increase your upgrade period and install the new version of the extension

    I get a 404 error instead of the configuration page in the admin panel

    Most of the time log-out/log-in may solve this issue.

    I get a fatal error concerning Mage_Core_Model_Resource_Setup.php

    If your site crashes and gives this error message after uploading all files to the correct folders:

    Fatal error: Class 'Wyomind_Notificationmanager_Model_Resource_Setup' not found in includes/src/Mage_Core_Model_Resource_Setup.php on line 234

    It probably comes from installing an extension while the compiler is still enabled.

    Important note:
    • If the compilation is enabled on your website (System > Tools > Compilation). Disable it first before installing any extension. After installation re-run the compilation process and re-enable the compiler.
    • Before installing any extension, it's advisable to backup your Magento installation.

    Here is the way to disable the magento compiler:
    Edit the following file: includes/config.php and add a # before the 2 following lines:

    define('COMPILER_COLLECT_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'stat');

    to get:

    #define('COMPILER_INCLUDE_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'src');
    #define('COMPILER_COLLECT_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR.'stat');

    Then go back to your website admin and re-run the compilation process.

    I get an error saying "err_connection_reset".

    It can happen on localhost environments because of rights on session files stored locally.
    You have to rename app/code/local/wyomind/estimateddeliverydate/sql/estimateddeliverydate_setup to something different: for example estimateddeliverydate_setup_XX.

    Magento Compatibility

    Magento Community Edition

    1.9.2 1.3.2 1.3.1

    Magento Enterprise Edition

    User's reviews

    Excellent extension
    Does what it says and works. If issues arise the support is very responsive and qualified. I can only recommend Wyomind.



    Best Delivery Date Solution
    Flawless to use. Exactly what we were looking for to configure estimated delivery dates for all of our products .
    In our product line, delivery times can vary based on a wide range of attributes. Bu customers won't order unless they know approx when it can be delivered.
    This solution has been a boon to our sales.
    Thanks to the awesome Wyomind support, we are featuring estimated delivery times for every product on every page of our site.
    The thing just works!



    Excellent Extension,top class support
    The product work just as it is stated to work. I am very pleased with it.
    I had an issue in my site which was no fault of the software but the guys fixed it for me.
    Their response time was fast it caught me by surprise most of the time they would be waiting on me to respond.
    Excellent Service with a great product.
    A big caribbean thank you guys.



    Estimated Delivery Date Customized
    Excellent extension , it does what it say, we have asked to costumize the extension to comply to the italian law and show delivery date on checkout and on thank you page after payment.
    Pier was very helpfull and willing to please us in all our needs.
    Thank you very much



    Great Extension! Worth the price!
    This is one of the best extensions I've downloaded. The code is clean and was easy to navigate and customize a bit.
    I did have one issue and the developer responded within hours with a fix!!
    Great Extension+Great Support=Great Deal!



    Great extension!
    This extension is great. Exactly what i needed. When problems occured the developer responded immediatelly and found a solution. 5 stars from me. Thank you Wyomid!



    Does what it says!
    Great extension! Great support.............................................



    Great Module A+++
    I installed the extension, very simple install
    I contacted the Developer and asked for assistance, he contacted me back quickly help me,
    The extension does exactly what it says and I am a very happy Customer, In fact I make use of most of this Developers extensions and I have never had any issues.
    Great Job, keep up the good work.
    Thanks Again



    logo of PayPal

    We are proud to be
    magento partner

    Customer Support or Enquiries 7 days a week. answer under 24h*

    15 days money back guarantee

    Free Lifetime Support

    3 months free updates