Easily integrate and manage your Grocy shopping list within your Home Assistant dashboard. This integration seamlessly syncs with Home Assistant's native To-Do lists, enabling you to mark items as done and remove completed entries effortlessly.
β οΈ Early Release Notice: This integration is still under development. Expect possible bugs and instability. Please report any issues or request features here.
This integration relies on MQTT with auto-discovery. Ensure you have the following set up:
- MQTT Integration enabled in Home Assistant.
This integration is available in HACS. You can install it by clicking:
Or manually:
- Navigate to HACS > Integrations in Home Assistant.
- Click Explore & Add Repositories.
- Search for Grocy and select this integration.
- Click Install this repository in HACS.
- Press Install.
- Obtain your
URL
andAPI key
from Grocy:- Navigate to "Manage API Keys" in Grocy.
- Click Add to generate a new API key.
- Copy your Grocy URL (
https://<your-grocy-url>/
) and API key.
Click below to start the configuration:
Or manually:
- Go to Configuration > Integrations in Home Assistant.
- Click Add Integration.
- Search for Grocy and select this integration.
- Follow the setup instructions.
β οΈ Important: If using Grocy as a Home Assistant add-on, ensure you configure a port (e.g.,9192
). Usehttps://<HA-IP>:9192
with SSL enabled, orhttp://<HA-IP>:9192
if SSL is disabled.
This integration provides the following sensors:
- ID:
sensor.products_shopping_list_with_grocy
- Displays the total number of products in Grocy.
- Can include product details if enabled during setup.
- ID:
sensor.shopping_list_shopping_list_with_grocy
- Shows the number of items in your Grocy shopping list.
- Can include product details if enabled.
- ID:
binary_sensor.updating_shopping_list_with_grocy
- Indicates if the list is currently being updated.
- ID:
switch.pause_update_shopping_list_with_grocy
- Temporarily pauses synchronization between Grocy and Home Assistant.
service: shopping_list_with_grocy.add_product
data:
product_id: sensor.shopping_list_with_grocy_<your_product>
shopping_list_id: <shopping_list_id> # Optional, default is list 1
note: "Optional note..."
service: shopping_list_with_grocy.remove_product
data:
product_id: sensor.shopping_list_with_grocy_<your_product>
shopping_list_id: <shopping_list_id> # Optional, default is list 1
service: shopping_list_with_grocy.update_note
data:
product_id: sensor.shopping_list_with_grocy_<your_product>
shopping_list_id: <shopping_list_id> # Optional, default is list 1
note: "New note..."
service: shopping_list_with_grocy.refresh_products
data: {}
You can add custom fields to your products in Grocy and use them in Home Assistant. Example: Create a Custom Sort field in Grocy:
Entity: products
Name: customsort
Caption: Custom Sort
Type: Number(decimal)
Show as column in tables: checked
Then modify your dashboard to sort using this field:
sort:
method: attribute
attribute: userfields:customsort
numeric: true
- This is likely an MQTT configuration issue. Ensure MQTT is correctly set up and that anonymous connections are disabled. More details here.
A Lovelace card is available in HACS:
Or check it out on GitHub: Shopping List with Grocy Card
- Request new features or report issues here.
- Contribute via pull requests here.
- If you find this project useful, consider buying me a coffee β!