Drupal Commerce: How to collect additional case specific (rules) information during checkout

Using Drupal Commerce to create a webshop one very often encounters situations, where one needs to retrieve additional information from customers on a case per case basis. Maybe if a particular product or product type is in the basket or if specific information for the product delivery needs to be retrieved. So you wish you could add more profile types and you could enable and disable them based on predefined rules. Among other nice functionalities, the Drupal module Customer Profile Type UI provides exactly these functionalities:

  • This module provides a dynamic way to add new customer profile types for the Commerce module using a UI. So if you want another customer profile type other then the default billing pane that comes with Commerce, you can now easily add new ones using this module. Just as the billing profile type is fieldable and you control how fields are displayed, the same is true for any profile types you create using this module.
  • Rules integration. If you also enable the rules module then you can dynamically enable/disable customer profile panes during checkout.

To create a customised profile type controlled by rules, you proceed as follows:

  1. Install and enable the module
  2. Go to Store > Customer profiles > Profile types and "Add a customer profile type"
  3. Add the required fields to this new customer profile and configure their display
  4. Enable and position the customer profile type in the work flow under Store > Configuration > Checkout settings
  5. Go to Configuration > Work flow > Rules and "Add new rules" that enable/disable the new customer profile type as required

The module Commerce Fieldgroup Panes offers an alternative solution to retrieve additional information during the checkout process.

Drupal module "Customer Profile Type UI"

Drupal themes to be compared