Shopping list

The Shopping list integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] allows you to keep track of shopping list items.

Your shopping list will be accessible from the sidebar, and you can optionally add the To-do list card to your dashboard. With the conversation integration, you can add items to your shopping list using voice commands like “Add eggs to my shopping list.”

Configuration

To add the Shopping list integration to your Home Assistant instance, use this My button:

Manual configuration steps

If the above My button doesn’t work, you can also perform the following steps manually:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select Shopping list.

  • Follow the instructions on screen to complete the setup.

List of actions

The Shopping list integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] provides the following actions. Each link below opens a dedicated page with examples, parameters, and a step-by-step UI walkthrough.

For an overview of every action across all integrations, see the actions reference.

Using in automations

A shopping_list_updated event is triggered when items in the list are modified, with the following data payload attached to it. This can be used to trigger automations such as sending a push notification when someone adds an item to the shopping list, which when clicked, will open the list.

Data payload attribute Description
action What action was taken on the item. Either add for a new item being added, update for an item being updated, or remove for an item being removed.
item A dictionary containing details of the item that was updated.
item.id A unique ID for this item
item.name The text attached to the item, for example Milk
item.complete A boolean indicated whether the item has been marked as complete.
alias: "Notify on new shopping list item"
triggers:
  - trigger: event
    event_type: shopping_list_updated
    event_data:
      action: "add"
actions:
  - action: notify.notify
    data:
      message: "{{ trigger.event.data.item.name }} has been added to the shopping list"
      data:
        clickAction: "/shopping-list"
        url: "/shopping-list"

You can also trigger an automation when a shopping_list_updated event was triggered by any of the following actions:

  • clear: A completed item was cleared from the list.
  • sorted: The items in the list were sorted by name.
  • reorder: An item has been reordered in the list.
  • update_list: All items have been updated.

In these cases, the event does not return a list item.