Aller au contenu principal

Intégration domotique Energi Data Service (Denmark), gratuite et open source

Intégration Energi Data Service (Denmark) pour Gladys Assistant

Prix de l’électricité au Danemark : tarif réseau, Energinet, elafgift, spot DK1/DK2.

Intégration non officielle. Elle tarifie votre électricité au Danemark sous forme de contrat d’énergie Gladys : le tarif réseau horaire de votre gestionnaire (netselskab), les tarifs de transport et de système d’Energinet, la taxe sur l’électricité (elafgift) et, si vous le voulez, le prix spot DK1/DK2 avec la marge de votre fournisseur, TVA 25 % comprise. Tout vient d’Energi Data Service, le portail de données ouvertes d’Energinet, sans compte ni clé.

Elle n’a jamais été testée avec un vrai contrat Gladys ni un vrai compteur danois : les prix sont vérifiés par les tests sur de vraies réponses de l’API. Signalez toute différence avec votre facture.

Mise en place​

  1. Installez l’intégration (Gladys 5.3.0 ou plus). Rien à remplir dans son écran de configuration.
  2. Dans Énergie > Contrats, créez un contrat avec le modèle « Energi Data Service (Danemark) : tarifs et spot » et rattachez votre compteur :
    • Gestionnaire de réseau : son nom (« Radius », « N1 A/S - 131 ») ou son GLN (13 chiffres, sur votre facture). La liste est plus bas.
    • Code du tarif : laissez vide, sauf si le statut le demande.
    • Fourniture : grid_only (tarifs et elafgift seuls) ou spot (plus le prix spot au quart d’heure et la marge du fournisseur).
    • Zone de prix (obligatoire pour spot, sans valeur par défaut) : DK1 à l’ouest du Grand Belt (Jutland, Fionie), DK2 à l’est (Seeland, Lolland-Falster, Bornholm).
    • Marge du fournisseur (DKK/kWh hors TVA, entre -1 et 5) : le « tillæg » de votre fournisseur, ajouté au prix spot.
    • Abonnements mensuels (DKK/mois, TVA comprise) : abonnement réseau, celui d’Energinet et celui du fournisseur, comptés par Gladys comme un montant fixe mensuel. Ils ne sont pas lus dans DataHub.
  3. Un appareil « Elpris <gestionnaire> » apparaît dans Découverte : il affiche le prix actuel d’un kWh (DKK/kWh, TVA comprise).

L’API accepte environ une requête par minute : l’intégration demande une chose à la fois, à 65 secondes d’écart au moins. Après la création d’un contrat, ses prix arrivent en quelques minutes (tarifs d’Energinet, puis ceux du gestionnaire, puis les prix spot). D’ici là, Gladys ne reçoit aucun coût pour les intervalles et redemande au passage suivant (jamais un zéro).

Calcul du prix​

Pour chaque demi-heure, en DKK, TVA comprise :

kWh × (tarif réseau de l’heure locale + tarif de transport + tarif de système + elafgift + [prix spot + marge]) × 1,25

  • Tarif réseau : le tarif résidentiel (« Nettarif C ») du gestionnaire, par heure locale (Price1 = 00:00-01:00 heure danoise). La nuit du changement d’heure d’automne, l’heure 02:00 a lieu deux fois : les deux prennent le même prix, comme l’indique Energinet ; au printemps elle n’existe pas.
  • Energinet : tarif de transport (code 40000), tarif de système (41000) et elafgift (EA-001), par jour.
  • Spot : DayAheadPrices de la zone, prix au quart d’heure (depuis le 1er octobre 2025), moyenne des deux quarts d’heure de la demi-heure (Gladys envoie des relevés à la demi-heure : la consommation y est supposée régulière).
  • Gestionnaire avec plusieurs codes de tarif résidentiel (« NT-01 », « NT-10 »…) : sans Code du tarif, ils ne servent que s’ils donnent le même prix à chaque heure de chaque jour que DataHub contient pour eux (et couvrent les mêmes jours). Dès qu’ils diffèrent quelque part, y compris un code publié pour la saison suivante et pas l’autre, le statut demande le Code du tarif et cite les choix : un code n’est jamais pris parce qu’il est le seul à avoir un prix.

Ce que Gladys ne sait pas exprimer, dit clairement :

  • Un total négatif (prix spot très négatif) coûte zéro : Gladys ne prend pas de crédit pour un intervalle. Le « prix actuel » de l’appareil peut être négatif.
  • Pas d’elafgift réduite (elvarme) ni de règles de TVA d’entreprise : les prix résidentiels.
  • Pas de prix spot avant le 1er octobre 2025 (début du jeu au quart d’heure).
  • Les abonnements sont une saisie mensuelle de votre part.

Un prix inconnu (tarifs pas encore lus, pas de tarif pour cette date, quart d’heure de spot manquant) n’est jamais deviné ni compté zéro : l’intervalle n’a pas de coût et Gladys redemande.

Données et requêtes​

  • Tarifs : jeu DatahubPricelist, lu pour les gestionnaires de vos contrats et pour Energinet, puis une fois par jour (une lecture en échec est retentée après une heure ; les tarifs détenus restent utilisés, et le statut signale quand ils n’ont pas été relus depuis 3 jours). Gardés dans /data : seulement les périodes des 400 derniers jours, donc un intervalle de plus de 400 jours n’a pas de coût (et n’est pas redemandé).
  • Prix spot : jeu DayAheadPrices, ceux du jour et, dès 13:00, ceux du lendemain, plus tout jour que Gladys demande, historique compris (31 jours par requête au plus). Un jour n’est gardé qu’entier, dans /data, 62 jours après sa lecture (quelle que soit sa date : un mois lu pour un recalcul est tarifé depuis là, sans relecture), 800 jours par zone au plus.
  • Un 429 (trop de requêtes) ou un 5xx met en pause toutes les requêtes pour la durée demandée par l’API, 2 minutes au moins, doublée à chaque fois de suite jusqu’à 6 heures ; la pause survit à un redémarrage et le statut l’affiche.
  • Chaque requête porte le User-Agent propre à l’intégration. Aucun compte, aucune clé, aucune donnée personnelle n’est envoyée.
  • Le bouton Tester affiche, pour 3 contrats au plus, le gestionnaire trouvé, la date de lecture de ses tarifs et les parts du prix actuel. Il ne fait aucune requête.

Contient des données utilisées selon les « Conditions for use of Danish public-sector data » du portail Energi Data Service (www.energidataservice.dk), Energinet. Energinet ne cautionne pas cette intégration.

Gestionnaires de réseau​

La liste livrée avec cette version (lue le 2026-11-12) : gestionnaires ayant un tarif résidentiel « Nettarif C » dans DataHub. Un GLN absent de la liste est accepté avec son code de tarif (DataHub, colonne ChargeTypeCode).

GestionnaireGLNCodes de tarif résidentiel
Cerius A/S579000070518430TR_C_ET, 93TR_C_ET
Dinel A/S5790000610099TCL<100_02, TCL>100_02
Elektrus A/S57900008362396000091
Elinord A/S579000109527743300
Elnet Midt A/S579000110052030002, T3001, T3002
FLOW Elnet A/S5790000392551FE1 NT-01, FE2 NT-01
Forsyning Elnet A/S5790001088309STR-NT-03
Grindsted Elnet A/S5790000681105GEV-NT-01
Hammel Elforsyning Net A/S5790001090166C-Tarif
Ikast El Net A/S5790000682102IEV-NT-01, IEV-NT-05
Konstant Net A/S - 1515790000704842151-NT01T, C_FBTNTR_B
Konstant Net A/S - 2455790000683345245-NT01T, C_FBTNTR_B
L-Net A/S57900010901113000, 4010
Læsø Elnet A/S579000110346043100
Midtfyns Elforsyning A.m.b.A5790001089023NT15000, NT15001, TNT15000, TNT15001
N1 A/S - 0165790002502699C-Tarif, K_21100, K_22100
N1 A/S - 1315790001089030CD
N1 A/S - 3445790000611003T-C-F-F-TD, T-C-F-T-TD
Netselskabet Elværk A/S57900006813585NCFF, 5NCFP
NOE Net A/S579000039562030030, Net C
Nord Energi Net A/S5790000610877TAC
Radius Elnet A/S5790000705689DT_C_01
RAH Net A/S5790000681327RAH-C
Ravdex A/S5790000836727NT-C
Sunds Net A.m.b.a5790001095444SEF-NT-05
Tarm Elværk Net A/S5790000706419TEV-NT-01, TEV-NT-01T
TREFOR El-net A/S5790000392261C
TREFOR El-net Øst A/S579000070668646
Veksel A/S5790001088217NT-01, NT-10
Vores Elnet A/S5790000610976TNT1009, TNT1011
Zeanet A/S579000108937543100, 43110
Aal El-Net A M B A5790001095451AAL-NT-05

Dépannage​

  • « tariffs of ... not read yet » : attendez quelques minutes (une requête par minute).
  • « no tariff of ... for <date> » : DataHub n’a pas de tarif de ce code ce jour-là ; vérifiez le gestionnaire et le code.
  • « has several household tariffs that differ » : remplissez Code du tarif avec celui de votre facture.
  • « Energi Data Service asks to wait » : la limite de l’API est atteinte ; rien n’est demandé avant l’heure affichée.

Paramètres de configuration​

Voici les paramètres demandés par Energi Data Service (Denmark) dans son écran de configuration dans Gladys.

ParamètreTypeObligatoireDescription
Prix de l’électricité au DanemarksectionNonCette intégration tarifie votre électricité au Danemark : créez un contrat avec le modèle « Energi Data Service (Danemark) » dans Énergie > Contrats et indiquez-y votre gestionnaire de réseau (netselskab). Données : Energi Data Service (Energinet), données ouvertes, sans compte : les tarifs des gestionnaires et d’Energinet (DatahubPricelist) et les prix spot day-ahead (DayAheadPrices). L’API accepte environ une requête par minute : après la création d’un contrat, ses prix arrivent dans les minutes qui suivent.

Comment installer Energi Data Service (Denmark) dans Gladys​

  1. Dans Gladys, ouvrez Intégrations : Energi Data Service (Denmark) apparaît dans le catalogue, aux côtés des intégrations natives, avec un badge communautaire.
  2. Cliquez sur Installer. Gladys télécharge l'image Docker (ghcr.io/lm1lc3n7/gladys-energi-data-service:0.1.1), la démarre dans un bac à sable isolé du cœur, et génère l'interface de l'intégration (appareils, découverte et configuration).
  3. Ouvrez l'écran Configuration de l'intégration, remplissez les paramètres, puis enregistrez.
  4. Vous pouvez aussi l'installer directement depuis l'URL de son dépôt : https://github.com/LM1LC3N7/gladys-energi-data-service.

Energi Data Service (Denmark) nécessite Gladys >=5.3.0. Le catalogue dans Gladys se rafraîchit toutes les heures : une nouvelle version est donc disponible au plus tard une heure après sa sortie.

Vous n'utilisez pas encore Gladys ? C'est gratuit et open source : suivez le guide d'installation pour démarrer.

À propos des intégrations externes​

Energi Data Service (Denmark) est une intégration externe : une intégration communautaire empaquetée dans un conteneur Docker et publiée sur GitHub, que Gladys installe en un clic et exécute dans un bac à sable isolé de son cœur. Elle est publiée et maintenue par LM1LC3N7, et non par l'équipe cœur de Gladys.

Inscrivez-vous à la newsletter Gladys Assistant

Quelques emails par mois sur les nouveautés et l'actualité du projet. Envoyés par Pierre-Gilles Leymarie, le fondateur du projet. Désinscription possible à tout moment 🙂