Documentation
Feedback
Guides

Release Notes
Release Notes
Deprecated
Store Framework: Shipping Option Components deprecated in favor of Delivery Promise Components
2 days ago

The vtex.shipping-option-components app is now deprecated and has been replaced by vtex.delivery-promise-components. We made this change to provide a more flexible and modular way to configure the Delivery Promise experience in your Store Framework storefront.

What has changed?

Previously, the Delivery Promise experience relied on the vtex.shipping-option-components app and a single header block, shipping-option-location-selector, to collect the shopper's location.

Now, the header experience is powered by the vtex.delivery-promise-components app, which provides three separate Store Framework blocks you can use:

  • shopper-location-setter (required): Collects the shopper's location data, such as postal code, to determine Delivery Promise availability and filters.
  • shipping-method-selector (optional): Allows shoppers to choose between delivery and pickup after setting their location.
  • pickup-point-selector (optional): Allows shoppers to choose a specific pickup point after setting their location.

Breaking changes for storefront themes

Migrating from vtex.shipping-option-components to vtex.delivery-promise-components requires more than just a dependency name change. The following table highlights the main breaking changes:

AreaBefore (vtex.shipping-option-components)Now (vtex.delivery-promise-components)
Theme dependencyvtex.shipping-option-componentsvtex.delivery-promise-components
BlocksSingle block: shipping-option-location-selector.Separate blocks: shopper-location-setter, shipping-method-selector, and pickup-point-selector.
Block propsProps like callToAction, compactMode, and dismissible on one block.Props are split across the new blocks, such as required, mode, and shippingSelection.
CSS handlesHandles such as buttonLabel, deliveryPopover, and shippingOptionButton.New set of handles, including shopperLocationSetterContainer and shippingMethodSelector. Find the full updated list of CSS handles in the Delivery Promise Components app documentation.

What needs to be done?

To adapt to this change and continue using Delivery Promise in your Store Framework storefront header, follow the instructions below:

  1. In your theme's manifest.json file, replace the dependency vtex.shipping-option-components with vtex.delivery-promise-components:
manifest.json

_10
"dependencies": {
_10
- "vtex.shipping-option-components": "2.x"
_10
+ "vtex.delivery-promise-components": "1.x"
_10
}

  1. Remove any usage of the shipping-option-location-selector block from your header layout configuration.

  2. Add and configure the new blocks:

  • Add the shopper-location-setter block to your header (Required).
  • Optionally, add the following blocks depending on your needs:
    • shipping-method-selector to allow shoppers to choose between delivery and pickup.
    • pickup-point-selector to allow shoppers to choose a specific pickup point.
  1. Validate the storefront behavior by confirming that:
  • The header collects the shopper's location.
  • Delivery Promise availability and filters respond correctly to the chosen location, shipping method, and pickup point.

To learn more about configuring Delivery Promise in Store Framework, see the Setting up Delivery Promise components (Beta) guide and the Delivery Promise Components app documentation.

Was this helpful?
Yes
No
On this page