JouloDocs
Integrations

Smappee

How Joulo connects a Smappee charger: Dev API, hourly energy buckets and MID meter detection.

Smappee chargers connect through the Smappee Dev API. Smappee has no per-session feed for most installations, so Joulo builds sessions from hourly energy. The EV Base, EV One and EV Wall also speak OCPP 1.6J if you prefer the direct route.

At a glance

PropertyValue
RouteCloud API, or OCPP 1.6J
APISmappee Dev API v3
AuthenticationYour own client_id and client_secret, plus your Smappee login
SyncEvery 15 minutes
MID detectionMeter serial and bus address, read live from the Smappee bus
BackfillAutomatic, to 1 January 2026

How the connection works

Smappee issues API credentials per developer, not per platform. You request a client_id and client_secret from Smappee once and paste them into Joulo. If you would rather not do that, connect the charger over OCPP instead.

A Smappee account holds one service location per device. Joulo tells three kinds apart:

  • EV chargers. The location's own device is the charging-station controller. Energy comes from /consumption.
  • Genius and Infinity home monitors. These watch the house, including the charger. Counting one would double-count the charger, so Joulo excludes them from discovery and sync.
  • Mixed installations. One location that is both the station controller and the whole-house meter. Here /consumption is the house total, so Joulo pulls real sessions from the charging-station endpoint instead.

What Joulo reads

For a plain EV charger location, the historical events endpoint returns nothing. /consumption is the real source and it returns hourly buckets in Wh.

Joulo stores every bucket, then materialises contiguous non-idle buckets into charging sessions using a 90-minute gap rule. Both steps are idempotent, keyed on the charger and the bucket start. A re-run never double-counts, and a change to the gap rule rebuilds sessions from the stored buckets without refetching.

MID certification

Smappee is one of the few brands that proves MID per device rather than per model. Joulo reads the charging-station serial and the midBusAddress from the bus. A meter serial in the 582 series is the MID meter itself.

Your MID status is therefore measured, not assumed.

Limitations

  • Session boundaries are derived from hourly buckets, so a start time is accurate to the hour, not to the minute.
  • A house monitor on the same account is deliberately ignored. Its energy is the charger's energy plus everything else.

Next steps