Checkout UI Extension Target for "Pickup" tab

Currently we have Checkout UI Extension targets inside the “Pickup” tab for:

  • purchase.checkout.pickup-location-list.render-after
  • purchase.checkout.pickup-location-list.render-before
  • purchase.checkout.pickup-location-option-item.render-after

As per docs none of these will render when no pickup locations are available for these items.

To add to this - if there are items in the cart that are not available at all pickup locations, there is no way to detect whether a customer is currently on the “Ship” tab or “Pickup” tab if they haven’t entered a delivery address. The deliveryGroups array will be empty in both cases.

When customers are viewing the “Pickup” tab I’m wanting to display a message when they have an item (or items) that aren’t available for pickup, along with the ability for them to remove the relevant (unavailable) items from their cart and continue checking out.

Currently, my only option is to use a checkout block target, but this is visible both for “Ship” and “Pickup” tabs, with no way to detect the current view when deliveryGroups array is empty.

Here are some proposed solutions:

  • Add a UI Extension target for the “Pickup” tab that is outside of the locations
  • Add an additional field in the api somewhere which tells us whether a customer is viewing “Ship” vs “Pickup”
  • Populate the deliveryGroups array even when the data is not complete - i.e. before a customer fills in delivery address

Any help/feedback would be appreciated.

Cheers,
Dean