Skip to content

About

Fork of dvejsada/HA-RohlikCZ (Rohlík.cz for Home Assistant) with live courier tracking: courier-on-the-way sensor, minutes countdown and faster ETA polling

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

 
 

Repository files navigation

🛒 Rohlík.cz Integration for Home Assistant — courier tracking fork

hacs_badge GitHub release Upstream HA Version

Note

This is a fork of dvejsada/HA-RohlikCZ — all credit for the integration goes to its author. The fork tracks upstream and adds live courier tracking:

  • Courier on the way binary sensor — on from the moment the courier leaves with your order until it is delivered, with the courier's name, the number of bags, their phone (shared for the final approach), a nearby flag and the departure time as attributes
  • Minutes to Delivery sensor — minutes until the Delivery Time, ticking every minute (negative while the courier is late)
  • Faster live ETA — while the courier is on the way, the delivery announcement is refreshed every 2 minutes (every minute in the final 15 minutes) instead of every 10, so no polling automation is needed
  • Delivery banner card — a slim full-width dashboard banner showing the order and then the courier, in its own repository hruskin/rohlik-courier-card

The fork has its own version numbers: 1.0.4 = upstream 1.0.0 + courier tracking, the add-items deadline and the next order's line items. The changes are intended to be sent upstream as a pull request.

Bring your Rohlík.cz grocery deliveries into Home Assistant! Track deliveries, monitor your cart, automate shopping, and never miss a delivery window — all from your smart home dashboard.

What is Rohlík.cz?
Rohlík.cz is one of the most popular online grocery and food-delivery services in the Czech Republic (also operating as Knuspr.de in Germany, Gurkerl.at in Austria, Kifli.hu in Hungary and Sezamo.ro in Romania — all supported by this integration). They deliver fresh groceries, household goods and more — often within hours.

Warning

This integration uses a reverse-engineered API from the Rohlík.cz website. It is not officially supported by Rohlík.cz. Use it at your own risk.


✨ What Can You Do With This Integration?

  • 📦 Track your next delivery — see exactly when your groceries arrive, right on your dashboard
  • 🛒 Monitor your shopping cart — keep an eye on your cart total without opening the app
  • ⏰ Automate delivery reminders — turn on porch lights or trigger a notification when a delivery window starts
  • 🔍 Add products to cart by voice — use Home Assistant automations to add items hands-free
  • 📅 Calendar view — all your delivery windows visible in the Home Assistant calendar
  • 💳 Account overview — credit balance, premium status, reusable bag count, and more
  • 🧩 Ready-made dashboard cards — install the companion Rohlík.cz Cards from HACS for a next-delivery card, a live shopping cart with search, delivery slots, account and spending cards

🚀 Installation

Option 1 — HACS (Recommended)

Install in one click via the Home Assistant Community Store:

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Don't have HACS yet? Get it here.

Trying pre-releases

New versions are sometimes published as pre-releases (betas) first. HACS hides them by default; to try one, open Rohlík.cz in HACS, click ⋮ → Redownload, enable Show beta versions and pick the version. Please report anything you run into.

Option 2 — Manual Installation

  1. Download rohlikcz.zip from the latest release.
  2. Extract it into a new config/custom_components/rohlikcz/ directory in your Home Assistant configuration.
  3. Restart Home Assistant.

⚙️ Configuration

  1. Go to Settings → Devices & Services in your Home Assistant UI.
  2. Click Add Integration (the + button in the bottom right).
  3. Search for Rohlik.cz and select it.
  4. Pick your Shop and enter its credentials:
    • Shop — Rohlík.cz, Knuspr.de, Gurkerl.at, Kifli.hu or Sezamo.ro
    • Email — your account email
    • Password — your account password
  5. Click Submit — entities will be set up automatically.

Amounts (credit, cart total, spending) are reported in the shop's currency (CZK, EUR, HUF or RON).

Note

If your password later changes or stops working, Home Assistant prompts you to re-enter it (re-authentication) instead of the integration silently failing. Each account can only be added once.

Tip

Entries created before shop selection existed point at Rohlík.cz. To move one to another shop (e.g. Knuspr.de), open the integration entry's ⋮ menu → Reconfigure and pick the shop — no need to remove and re-add it.

Note

The Delivery Time sensor reads the courier's arrival time from the shop's delivery announcement. Announcements that give a clock time work in every shop; "in N minutes" countdowns are currently only understood in Czech.

Optional: Spending Analytics

After setup you can enable Spending Analytics at any time via the integration's Configure button:

  • Choose which category levels to track (top-level, mid-level, detailed, most specific, per-item)
  • Set how many top items to display in sensor attributes (default: 10)
  • Optionally hide discontinued products from rankings

Enabling analytics triggers a one-time download of your full order history (this may take several minutes).


📊 Entities

🔵 Binary Sensors

Entity Description
Premium Membership Active when your premium subscription is valid; premium details available as attributes
Reusable Bags Active when reusable bags are enabled on your account
Next Order Active when you have a scheduled upcoming order; order details as attributes, and (fork) the order's line items as items (name, amount, textual_amount; not recorded in history)
Timeslot Reservation Active when you have a reserved delivery timeslot
Parents Club Active when you are a member of the Parents Club
Express Available Active when express delivery is currently available in your area
Courier on the way Active from the courier's departure until delivery; departed_at, initial_eta (ETA announced at departure), courier, bags, phone, nearby, title and message as attributes (fork)

🟢 Sensors

Entity Description
First Available Delivery Earliest available delivery time with location details
Account ID Your Rohlík.cz account identifier
Email Your registered email address
Phone Your registered phone number
Remaining Orders Without Limit Premium orders with no minimum price limit remaining
Remaining Free Express Deliveries Free express deliveries still available
Credit Balance Your current account credit (in the shop's currency)
Reusable Bags Number of reusable bags on your account
Premium Days Remaining Days left in your premium subscription (premium users only)
Cart Total Current total value of your shopping cart; the Minimum Order Price attribute holds the shop's minimum order value (compare it with the total — Can Order also needs checkout details such as a delivery slot)
Last Updated Timestamp of the last successful data refresh
Slot Express Time Timestamp of the next available express delivery slot
Slot Standard Time Timestamp of the nearest standard delivery slot
Slot Eco Time Timestamp of the nearest eco delivery slot
Delivery Slot Start Start of the delivery window for your next order
Delivery Slot End End of the delivery window for your next order
Delivery Time Predicted exact delivery time for your next order
Minutes to Delivery Minutes until the Delivery Time, updated every minute (fork)
Add Items Until Until when items can still be added to the next order, from Rohlík's first announcement after ordering; kept until delivery (fork)
Monthly Spent Total amount spent this month
Yearly Spent Total amount spent this year (requires Spending Analytics)
All Time Spent Total spent across all tracked orders (requires Spending Analytics); the by_year attribute breaks the total down per year (total and order_count per year)

📅 Calendar

Orders Calendar — Shows all upcoming and recent delivery windows as calendar events (entity ID typically ending in _orders_calendar, for example calendar.rohlikcz_orders_calendar; your actual ID may vary).

Field Value
Event Title Order number (e.g., Order 123456789)
Event Start Delivery window start time
Event End Delivery window end time
Event Description Order status, item count, and total price
State on during an active delivery window, off otherwise

Events are sourced from upcoming orders and the last 50 delivered orders. Events disappear automatically once an order falls outside that window.

Ideas for using the calendar:

  • View all deliveries in the Home Assistant calendar UI
  • Trigger automations when a delivery window starts
  • Query upcoming deliveries with the calendar.get_events service

💰 Spending Analytics Sensors (opt-in)

When analytics levels are enabled in the integration options, the following sensors are created (each with "this year" and "all time" variants):

  • Top Categories (L0) - Spending by top-level categories (e.g. Drinks, Drugstore)
  • Categories (L1) - Spending by mid-level categories (e.g. Hot drinks, Cleaning products)
  • Detailed Categories (L2) - Spending by detailed categories (e.g. Coffee, Universal cleaner)
  • Specific Categories (L3) - Spending by most specific categories (e.g. Bean coffee, Spray cleaner)
  • Per-Item - Spending by individual product (e.g. Tchibo Barista, Savo Spray)

Each sensor's attributes contain the top N items (configurable, default 10) sorted by spending, with total_count, spent, units, and avg_unit_price per entry.


🚚 Delivery banner card

The dashboard banner built for this fork lives in its own HACS (Dashboard) repository, hruskin/rohlik-courier-card — the order window while ordered, then the live courier countdown and trip progress, and the bags to return.


🔧 Actions (Service Calls)

Action Description
rohlikcz.add_to_cart Add a product to your cart by product ID and quantity
rohlikcz.search_product Search for products available on Rohlík.cz by name
rohlikcz.search_and_add_to_cart Search for a product by name and add it to your cart in one step
rohlikcz.get_shopping_list Retrieve products from a saved Rohlík.cz shopping list by its ID
rohlikcz.get_cart_content Get the current contents of your shopping cart
rohlikcz.update_data Force an immediate full data refresh from Rohlík.cz
rohlikcz.refresh_slots Cheaply refresh only the delivery-slot data with a single request — light enough to poll every few seconds to catch express availability
rohlikcz.update_delivery_times Cheaply refresh only the delivery-time announcement with a single request — light enough to poll every minute to track the shifting delivery ETA
rohlikcz.fetch_order_history Download your complete order history and store it locally (backfill)
rohlikcz.enrich_orders Enrich stored orders with item details and product categories to populate the spending sensors

Tip

Want a notification the moment express delivery opens up? See automations/refresh_slots.yaml for an example that polls refresh_slots every 15 seconds while armed and notifies you when the Express Available sensor turns on.

Tip

This fork refreshes the live ETA on its own while the courier is on the way (every 2 minutes, every minute in the final 15 minutes), so the automations/update_delivery_times.yaml polling example is no longer needed.


🔄 Data Updates

Data is refreshed from Rohlík.cz every 10 minutes automatically; while the courier is on the way, the delivery announcement is refreshed every 2 minutes (every minute in the final 15 minutes). The update covers account details, premium status, delivery slots, shopping cart, and order history.

You can trigger an immediate refresh at any time using the rohlikcz.update_data action, refresh just the delivery slots more frequently with rohlikcz.refresh_slots, or refresh just the delivery-time announcement with rohlikcz.update_delivery_times.


🩺 Diagnostics

If something isn't working, download the integration's diagnostics from Settings → Devices & Services → Rohlík.cz → ⋮ (three dots) → Download diagnostics and attach the file to your bug report. Credentials and personal details (email, phone, name, address) are automatically redacted.


🔗 Related Projects

🧩 Dashboard cards

Rohlík.cz Cards is a set of custom Lovelace cards built for this integration: Next Delivery (countdown, live ETA and courier announcement, plus a badge), Shopping Cart (your cart with quantity steppers, product search and an Order button), Delivery Slots (express/standard/eco with capacity and an express watch mode), Account and Spending (month, year, all-time and category breakdown). Every card only needs you to pick your Rohlík.cz device in the visual editor, speaks Czech and English, and follows your dashboard theme.

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Rohlík.cz cards overview

🤖 AI assistant

Want to do your Rohlík.cz shopping by just talking to your AI assistant? Check out the companion Rohlík MCP Server — a Model Context Protocol server that connects Rohlík.cz to AI assistants like Claude. Search products, manage your cart, find recipes, and track orders entirely through conversation. Runs as a Docker container and works alongside this integration.


🤝 Contributing & Support

Disclaimer: This integration is an independent community project and is not affiliated with, endorsed by, or supported by Rohlík.cz. Changes to the Rohlík.cz platform may affect functionality.

About

Fork of dvejsada/HA-RohlikCZ (Rohlík.cz for Home Assistant) with live courier tracking: courier-on-the-way sensor, minutes countdown and faster ETA polling

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages