Rueil-Malmaison (France) waste collection (built on departmental open data) - Collecte des déchets à Rueil-Malmaison

I’ve published a custom vibe coded integration that shows upcoming waste collection dates for Rueil-Malmaison, a town in the western suburbs of Paris (France). It covers all 5 kerbside streams: household waste, packaging, glass, bulky items and garden waste.

How it works

The data comes from the open data portal of the Hauts-de-Seine department. During setup you enter your address once: the integration geocodes it through the French national address database (Base Adresse Nationale), works out which collection zone you fall into for each stream, then computes the upcoming dates. No API key is needed, and data refreshes every 12 hours.

Each stream has its own rules, which the integration handles:

  • Household waste: several days a week
  • Packaging: weekly
  • Glass and bulky items: even or odd weeks, depending on the zone
  • Garden waste: seasonal, March to mid-December only — outside the season, the sensor automatically points to the first collection of the following year

What you get

A single device named “Rueil-Malmaison”, with:

  • 5 sensors, one per stream, with a date device class and the next collection as their state. Attributes include the weekday, frequency, period, time of day (morning or evening), days remaining, and the next 6 dates.
  • 1 calendar entity, gathering all upcoming collections across every stream, so they show up in the native Home Assistant calendar.

The time-of-day attribute matters more than you’d think: some zones are collected in the evening, so the bin has to go out that afternoon rather than the night before.

A note on naming: entity IDs and attributes are in French, since this targets a French municipality and that’s what makes sense for local users.

Installation

Through HACS, as a custom repository:

  1. HACS → ⋮ menu → Custom repositories
  2. URL: https://github.com/milimilo/collecte-dechets-ha, type: Integration
  3. Search for “Collecte des déchets Rueil-Malmaison”, download, restart Home Assistant
  4. Settings → Devices & Services → Add Integration → enter your address

Manual install also works: copy custom_components/collecte_dechets/ into your config/custom_components/ folder.

Limitations

The integration only covers Rueil-Malmaison (92500). That said, the Hauts-de-Seine open data schema is identical for every town in the department, so adapting it to another municipality mostly means swapping the dataset identifiers.

Feedback welcome

This is my first published integration. Comments are welcome!

Card Lovelace

type: entities
title: Collectes des déchets
entities:
  - type: attribute
    entity: sensor.rueil_malmaison_ordures_menageres
    attribute: quand
    name: Ordures ménagères
    icon: mdi:trash-can
  - type: attribute
    entity: sensor.rueil_malmaison_emballages
    attribute: quand
    name: Emballages
    icon: mdi:recycle
  - type: attribute
    entity: sensor.rueil_malmaison_verre
    attribute: quand
    name: Verre
    icon: mdi:bottle-wine
  - type: attribute
    entity: sensor.rueil_malmaison_encombrants
    attribute: quand
    name: Encombrants
    icon: mdi:sofa
  - type: attribute
    entity: sensor.rueil_malmaison_dechets_verts
    attribute: quand
    name: Déchets verts
    icon: mdi:leaf

Did you know about this custom integration ?

It seems to cover your city :

…and pretty much every other one around the world.

Maybe the AI bot was overwhelmed?

Disclaimer: I use the Waste Collection Schedule one also and have found support for requests and changes either very fast or very slow, depending on how well you document your request, and if the solution can be AI assisted. AI again? Sighs.

Could you add those towns in a setup GUI, say in a selectable dropdown list?

It depends on how the other cities expose their data (each one has its own dataset). So it is not universal. But I could have a look if someone needs to try another Hauts de Seine city.

This was mainly an integration AI poc :grin: