[Custom integration] Eaux de Marseille - conso eau (SEM, SEMM, Vivaigo)

Note: this thread is also posted on the French HA community. Feel free to reply on either side — I’m watching both.

Hi everyone,

I just published an unofficial HA integration that covers the three water utilities serving the Marseille area in the south of France. If you live anywhere between Forcalquier, Marseille and Salon-de-Provence — or you have a holiday home there — and you’re tired of copying your water consumption from the customer portal once a month, this might help.

Who it’s for

The integration logs into your utility’s customer portal, so you just need an existing account. Three utilities supported (you pick yours from a dropdown when adding the integration):

  • Société des Eaux de Marseille (SEM) — Ventabren, Bandol, Vitrolles, Trets, Fuveau, Cabriès, Bouc-Bel-Air, Forcalquier and other peripheral communes
  • Eau de Marseille Métropole (SEMM) — Marseille proper, La Ciotat, Cassis, Carnoux, Marignane, Allauch, Carry-le-Rouet, Gémenos
  • Vivaigo — Salon-de-Provence, Berre-l’Étang, Lambesc, Eyguières, Pélissanne, Velaux, Rognac, Sénas

All three run on the same back-end (operated by SOMEI/Veolia), so a single integration handles them — only the URL and the embedded application credentials differ between providers.

What it exposes

12 sensors per contract (current month in m³ and L, year-to-date, meter index, last billed reading, days in last billing period, etc.) plus a monthly external statistic backfilled to January 2024. The latter plugs directly into the Energy dashboard as a water source, so you see your water consumption alongside electricity and gas.

The integration polls the portal once per hour — matching the portal’s own update cadence (water meters telemeter once or twice a day in practice, not faster).

Installation

Currently as a HACS custom repository (a PR to add it to HACS default is open and pending review):

  1. HACS → Integrations → ⋮ menu → Custom repositories
  2. Add https://github.com/EnO33/eaux-marseille-ha with category “Integration”
  3. Search for “Eaux de Marseille”, install, restart HA
  4. Settings → Devices & Services → Add Integration → Eaux de Marseille
  5. Pick your utility, enter your portal credentials and contract number (visible on your bills)

Quick example

Alert when monthly consumption exceeds a threshold:

alias: "Water: monthly consumption alert"
trigger:
  - platform: numeric_state
    entity_id: sensor.eaux_de_marseille_<contract>_mois_en_cours
    above: 12  # tweak to your typical monthly use, in m³
action:
  - service: notify.mobile_app_<your_phone>
    data:
      message: >-
        Monthly water consumption: {{
          states('sensor.eaux_de_marseille_<contract>_mois_en_cours')
        }} m³

The README has more examples (Energy dashboard wiring, statistics-graph card, daily consumption template sensor derived from the meter index).

Technical side

  • Quality scale Gold — every required rule satisfied
  • 64 tests, 96 % coverage, CI on Python 3.14
  • Multi-provider, multi-contract (one device per contract)
  • Automatic reauthentication when the portal password changes
  • In-place reconfiguration (change email / contract / utility without losing sensor history or imported statistics)
  • Documentation in English and French

Code and issues

Adoption is still early — only one confirmed user so far (on SEMM, Marseille contract). If any of you are on SEM or Vivaigo, your feedback is especially useful since I could only test those flows with my own SEM credentials. Feel free to open an issue or ping me here if anything breaks at install time.

Thanks for reading

1 Like

Please post in English.

2 Likes