This project is not covered by Drupal’s security advisory policy.

ECO (Extra Customization Options for Ubercart) provides additional ("extra") options to customize Ubercart.

Please see a list of features below. Some of the functionality provided also includes a degree of integration with other contributed modules like Legal, Webform, and Ubercart Discount Coupons. Among the customization options are using URL parameters to auto-apply coupons in checkout, requiring new customers to choose a password, and integration with the Webform module to pre-populate address fields in checkout.

Among other things you can accomplish with ECO is to have a shopping experience that does involve a product page or add to cart button. For example, you could include a webform in a block, via Panels, or through Views, etc. in which you collect information and pass it through to Checkout along with adding a product to the cart automatically. The Webform module saves the data entered regardless of whether or not checkout is completed in Ubercart.


Ubercart 2.3 - This module requires the newest version of Ubercart (2.3) because it was re-engineered towards the end of initial development to take advantage of Ubercart API changes. The ECO: Webform sub-module is an exception and can be used with earlier versions (it adds additional pre-built lists for Webform select form options).

Current Features

The following are among the current options (none are required, specific options can be selected as desired):

  • Make passwords required for new customers.
  • Disable Drupal account creation for anonymous checkout - (Note: you will probably need to edit your order notification template to remove references to logging into an account.)
  • Remove an attribute from the product description in shopping cart for attributes where no option was selected / is empty (instead of having all attribute labels displayed even when empty).
  • Country, US States, Canadian province pre-built lists for Webform module select (list) element options - i.e. import/synchronize country, states, provinces with the settings in Ubercart (example: if you only have 48 US States allowed in Ubercart, a Webform select list can display the same 48 states without entering them manually).
  • Integration with Webform - pass name, address, and other fields directly to the billing pane in Ubercart checkout. It features an edit button to allow changes during checkout.
  • Same as above for the customer information pane (i.e. pass email address for anonymous users).
  • Integration with Webform includes same code for webform processing, including adding a product to the shopping cart when the webform is submitted.
  • Display terms and conditions from the Legal module (i.e. if specifically using the Legal module / display the same terms as the registration form without additional work).
  • Integrate with Ubercart Discount Coupons, allowing URLs to be used to auto-apply coupons in checkout - useful for online advertising. (Example: adding "?coupon=COUPON_CODE" to a URL or "?coupon=no" to disable). This can be added to any site URL regardless of whether checkout is the next step / page request.


Install as usual, see for further information. This module also includes full uninstall functionality. However, it is still a recommend best practice to backup your Drupal database first.

Help and Configuration

This module comes with a Help page. Additional updates to the help page, support for the Advanced Help module, and a Drupal Handbook page are planned. Demonstration sites will likely be added soon when available.

To configure, please visit the Help Page first (if installed on your site) and/or navigate to:

Administer >> Store administration >> Configuration >> ECO settings.

The information and options presented on this page depend in part on the modules currently installed on your system. You should generally find messaging on this page to indicate additional modules which could be installed for which ECO provides customization and integration options.

Maintainer Message

Part of where I am today is based on the Drupal community and contributions of others. If this module has helped meet your needs, please help by contributing back in any way you can - answer questions in the Forums, help with Drupal documentation, report bugs, etc. It's good Karma :-)

To Do / Upcoming

This is a partial To Do List / Upcoming Items:

  • Add support for delivery address pane (and billing/delivery combinations)
  • ECO: Attribute module - withheld from beta1 release for further bug fixing / testing
  • Option to disable account creation for anonymous checkout - added to development release
  • Support for registration profile integration - pending conversations with other project maintainers for similar features


There are no current plans to backport this for Drupal 5.x / Ubercart 1.x or Ubercart versions 2.2 and earlier (because the API in Ubercart 2.3 is better!) unless there is strong request and sponsorship to make this feasible.

Project information