Introduction

L'intégration Capfile pour Home Assistant permet de récupérer automatiquement les données de consommation (et d'injection) de votre compteur Linky via l'API Capfile, et de les injecter dans le tableau de bord Énergie de Home Assistant.

Version bêta. Cette intégration est fournie en l'état, à titre expérimental. Capfile décline toute responsabilité en cas de dysfonctionnement, de perte de données ou de tout préjudice lié à son utilisation.
Usage personnel. Cette intégration est destinée aux particuliers disposant d'un compte Capfile. Elle ne peut pas être utilisée à des fins commerciales.

Compteurs compatibles. Seuls les compteurs Linky C5 (consommation) et P4 (injection) sont pris en charge.
Ce que fait l'intégration
  • Importe l'historique de consommation (jusqu'à 3 ans)
  • Injecte des statistiques journalières par cadran tarifaire dans le recorder HA
  • Calcule les coûts du mois en cours selon vos tarifs
  • Supporte l'injection (production) pour les compteurs P4
  • Configure automatiquement le tableau de bord Énergie (option activée par défaut)
  • Génère un thème de couleurs pour le dashboard Énergie
Ce que ça nécessite
  • Un compte sur capfile.com
  • Un compteur Linky C5 ou P4 rattaché à votre compte
  • Home Assistant 2024.1.0 ou supérieur
  • Le composant recorder activé dans HA (par défaut)

Prérequis

Home Assistant
  • Version minimale : 2024.1.0
  • Le composant intégré recorder doit être actif (il l'est par défaut dans toute installation standard)
  • Une connexion Internet sortante vers api.capfile.com et capfile.com
Compte Capfile
  • Un compte actif sur capfile.com avec vos identifiants (e-mail + mot de passe)
  • Au moins un compteur Linky C5 ou P4 associé à votre compte (en propre ou partagé par un autre utilisateur)
Pour les compteurs partagés, l'accès aux données dépend des autorisations définies par le propriétaire du compteur lors du partage.

Installation

Installation par script (recommandé)

Un script d'installation automatique est disponible. Il télécharge et déploie le composant directement dans votre installation Home Assistant.

ÉTAPE 1 Installer l'add-on "Terminal & SSH"

Le script s'exécute dans un terminal sur votre machine Home Assistant. Si vous n'avez pas encore accès à un terminal, installez l'add-on officiel :

  1. Allez dans Paramètres → Modules complémentaires → Boutique
  2. Recherchez Terminal & SSH et installez-le
  3. Activez l'option "Afficher dans la barre latérale" pour y accéder facilement
  4. Démarrez l'add-on, puis ouvrez son interface Web
ÉTAPE 2 Lancer le script d'installation

Dans l'interface Web du terminal, collez la commande suivante avec Shift + Insert puis appuyez sur Entrée :

curl -fsSL https://capfile.com/capfile/ha/install.sh | bash

Le script télécharge la dernière version du composant, l'installe dans config/custom_components/capfile/ et vous indique la suite à suivre.

Pourquoi Shift+Insert ? Le terminal Web de l'add-on ne supporte pas le raccourci habituel Ctrl+V. Utilisez Shift+Insert pour coller du texte dans ce terminal.
ÉTAPE 3 Redémarrer Home Assistant et configurer

Le script redémarre Home Assistant automatiquement en fin d'installation. Une fois HA de retour :

  1. Allez dans Paramètres → Appareils et services → Ajouter une intégration et recherchez Capfile
  2. Suivez l'assistant de configuration
Une fois installée, l'intégration peut se mettre à jour automatiquement depuis la carte Mises à jour de Home Assistant, sans manipulation manuelle. Voir section Mises à jour.

Installation sur HA Container (Docker)

Les installations HA Container (Docker pur) ne disposent pas du menu Applications ni du Terminal web. L'installation se fait depuis un terminal sur le serveur hôte ou depuis un shell dans le conteneur.

ÉTAPE 1 Ouvrir un terminal sur le serveur

Option A — Terminal sur l'hôte (recommandée) : accédez via SSH ou localement au serveur qui héberge le conteneur. Le répertoire de configuration HA est monté en volume (chemin défini dans votre docker-compose.yml).

Option B — Shell dans le conteneur :

docker exec -it homeassistant bash
Le nom du conteneur (homeassistant) peut varier. Vérifiez avec docker ps.
Sur TrueNAS SCALE (TrueCharts), le conteneur s'appelle généralement ix-home-assistant et le terminal est accessible depuis Système → Shell dans l'interface TrueNAS.
ÉTAPE 2 Lancer le script d'installation

Dans le terminal (hôte ou conteneur), collez et exécutez :

curl -fsSL https://capfile.com/capfile/ha/install.sh | bash

Le script installe les fichiers dans /config/custom_components/capfile/.

ÉTAPE 3 Redémarrer Home Assistant et configurer

Redémarrez le conteneur pour charger le composant :

docker restart homeassistant

Ou depuis l'interface HA : Paramètres → Système → Redémarrer.

Une fois HA de retour, allez dans Paramètres → Appareils et services → Ajouter une intégration et recherchez Capfile.

Installation manuelle

  1. Téléchargez la dernière version depuis capfile.com
  2. Copiez le dossier capfile dans le répertoire config/custom_components/ de votre installation Home Assistant
  3. Redémarrez Home Assistant, puis ajoutez l'intégration via Paramètres → Appareils et services

Assistant de configuration

La configuration s'effectue en 3 étapes via l'interface graphique de Home Assistant. Aucune édition de fichier YAML n'est nécessaire.

1
Connexion

Saisie de vos identifiants Capfile (e-mail + mot de passe). La clé API est récupérée automatiquement et stockée de façon sécurisée.

2
Choix du compteur

Sélection du compteur dans la liste de vos PRM accessibles (propres et partagés). Les informations tarifaires sont récupérées automatiquement.

3
Tarifs

Vérification et ajustement des prix par cadran (pré-remplis depuis l'API). Option de mise à jour automatique des prix activable.

Pour un compteur P4 sans soutirage (injection uniquement), l'étape 3 est ignorée et l'entrée est créée directement après l'étape 2.
ÉTAPE 1 Connexion au compte Capfile
Champs requis
  • login : adresse e-mail du compte Capfile
  • password : mot de passe
Ce qui se passe
  • Appel GET /api_key en Basic Auth → récupération de la clé API
  • Appel GET /meters → liste des compteurs disponibles
ÉTAPE 2 Sélection du compteur

La liste déroulante affiche tous les compteurs accessibles avec leur nom et leur PRM. Les compteurs partagés par d'autres utilisateurs sont indiqués avec le suffixe [partagé].

Ce qui se passe
  • Appel GET /data/{PRM}/info → récupération des cadrans, couleurs, tarifs et informations contractuelles
Cas particulier P4 injection seule

Si le compteur sélectionné ne dispose que d'un flux d'injection (pas de soutirage), la configuration est créée directement sans passer par l'étape 3.

ÉTAPE 3 Confirmation des tarifs

Les champs sont pré-remplis avec les prix fournis par l'API Capfile. Vous pouvez les ajuster librement avant de valider.

Champs de prix
  • Prix par cadran : un champ par cadran de votre abonnement (ex : Base, HP, HC, BUHC…), en €/kWh
  • Coût abonnement : montant mensuel de l'abonnement réseau, en €/mois
Options
  • Mise à jour automatique des prix : cochée par défaut si l'API fournit des tarifs non nuls. Les prix sont re-vérifiés à chaque synchronisation et mis à jour automatiquement en cas de changement. Une notification persistante est envoyée dans HA.
  • Configurer automatiquement le dashboard Énergie : cochée par défaut. Après la première synchronisation, l'intégration ajoute automatiquement vos statistiques au tableau de bord Énergie. Si vous décochez cette option, la configuration devra être faite manuellement (voir section Statistiques).

Options (tarifs)

Après la configuration initiale, vous pouvez modifier les tarifs à tout moment via Paramètres → Appareils et services → Capfile → Configurer.

  • Modification des prix par cadran (en €/kWh) et de l'abonnement mensuel (en €/mois)
  • Activation / désactivation de la mise à jour automatique des prix depuis l'API
  • Après validation, les capteurs mensuels sont recalculés immédiatement

Entités créées

Pour chaque compteur configuré, l'intégration crée un appareil nommé Capfile – [Nom du site] regroupant les entités suivantes.

Capteurs mensuels

Ces capteurs sont créés uniquement pour les compteurs en soutirage (C5).

Consommation ce mois
sensor.*_consommation_ce_mois

Total des kWh consommés depuis le 1er du mois en cours. Attributs : détail par cadran en kWh, horodatage de la dernière synchro.

💶
Coût consommation ce mois
sensor.*_cout_consommation_ce_mois

Coût variable de la consommation du mois (kWh × tarif par cadran), en . Attributs : détail par cadran en .

📅
Coût abonnement ce mois
sensor.*_cout_abonnement_ce_mois

Part de l'abonnement réseau pour le mois en cours, au prorata des jours écoulés, en .

💰
Coût total ce mois
sensor.*_cout_total_ce_mois

Somme du coût variable et de l'abonnement proraté pour le mois en cours, en . Attributs : détail par cadran en .

Entité de mise à jour

🔄
Mise à jour
update.*_mise_a_jour

Indique si une nouvelle version du composant est disponible. Permet l'installation en un clic avec redémarrage automatique de Home Assistant. Les notes de version sont affichées directement dans la carte HA.

Statistiques & tableau de bord Énergie

L'intégration injecte des statistiques externes dans le recorder de Home Assistant, permettant une visualisation complète dans le tableau de bord Énergie avec un détail par cadran tarifaire.

Ces statistiques sont cumulatives et incrémentales : chaque nouvelle synchronisation ajoute uniquement les données postérieures à la dernière entrée connue. L'historique complet (jusqu'à 3 ans) est importé lors de la première synchronisation.

IDs des statistiques

ID de statistique Type Unité Description
capfile:conso_{cadran} Soutirage kWh Consommation journalière par cadran (ex : capfile:conso_hp, capfile:conso_buhc…)
capfile:cost_{cadran} Coût Coût journalier par cadran, calculé avec les tarifs configurés (ex : capfile:cost_hp…). Utilisé comme source de coût dans le dashboard Énergie.
capfile:cost Coût total Coût total toutes cadrans confondues (à titre informatif).
capfile:inj_{cadran} Injection kWh Injection journalière par cadran pour les compteurs P4 (ex : capfile:inj_baseinj…).
Décalage Enedis : Les données d'index sont transmises par Enedis avec environ 48 heures de délai. La donnée du jour J n'est donc visible qu'aux alentours de J+2. La synchronisation quotidienne a lieu à 12h00 (heure locale de votre HA).

Ajout dans le tableau de bord Énergie

Configuration automatique (par défaut). Si l'option "Configurer automatiquement le dashboard Énergie" est cochée à l'étape 3, l'intégration ajoute elle-même toutes les statistiques au tableau de bord après la première synchronisation. Aucune manipulation n'est nécessaire. Patientez quelques instants après le démarrage de HA pour que les données apparaissent.

Si vous avez désactivé cette option, configurez manuellement le tableau de bord via Énergie → Configurer :

  1. Consommation réseau : ajoutez chaque statistique capfile:conso_{cadran} et associez-lui la statistique de coût correspondante capfile:cost_{cadran}
  2. Production / retour réseau (compteurs P4) : ajoutez chaque statistique capfile:inj_{cadran}
Les cadrans apparaissent avec les couleurs définies par Capfile. Pour une cohérence visuelle optimale, appliquez le thème généré automatiquement.

Synchronisation

Déclenchements
  • Au démarrage de HA : une synchronisation est lancée immédiatement
  • Quotidiennement à 12h00 (heure locale) : synchronisation automatique
Logique incrémentale
  • Premier démarrage : demande 3 ans d'historique
  • Synchronisations suivantes : reprise à partir de la dernière statistique connue en base, sans doublons
Recommandation : L'heure de 12h00 est choisie pour maximiser la fraîcheur des données disponibles (qui arrivent en matinée). N'effectuez pas de synchronisations supplémentaires manuelles trop fréquentes pour préserver les quotas de l'API.

Mise à jour automatique des prix

Lorsque l'option "Mise à jour automatique des prix" est activée, l'intégration compare à chaque synchronisation les tarifs stockés avec ceux retournés par l'API.

Seuils de détection
  • Prix par cadran : différence > 0,0001 €/kWh
  • Abonnement mensuel : différence > 0,01 €/mois
En cas de changement
  • Les options de l'entrée de configuration sont mises à jour
  • Une notification persistante est créée dans HA avec le détail des variations
  • Les capteurs mensuels sont recalculés automatiquement

Thème de couleurs

L'intégration génère automatiquement un thème Home Assistant qui associe les couleurs définies dans Capfile à chaque cadran de votre abonnement, pour une cohérence visuelle dans le tableau de bord Énergie.

Fichier généré

Le fichier themes/capfile.yaml est créé dans le répertoire de configuration de HA. Si vous avez plusieurs compteurs, leurs couleurs sont fusionnées dans ce fichier unique. Les thèmes sont rechargés automatiquement via le service frontend.reload_themes.

Adaptation fond clair

Les couleurs dont la luminance perçue est trop élevée (risque d'invisibilité sur fond blanc) sont automatiquement assombries selon la formule :
L = 0.299·R + 0.587·G + 0.114·B

Pour activer le thème, allez dans votre profil Home Assistant et sélectionnez Capfile dans la liste des thèmes disponibles.

Mises à jour du composant

L'intégration intègre son propre mécanisme de mise à jour, visible dans Paramètres → Mises à jour de Home Assistant.

Vérification automatique
  • Au démarrage de HA
  • Chaque jour à 06h00
  • La version disponible est consultée depuis capfile.com/capfile/ha/version/
Installation en un clic
  • Téléchargement de l'archive ZIP depuis capfile.com
  • Extraction directe dans le dossier custom_components/capfile/
  • Redémarrage automatique de Home Assistant
  • Notes de version affichées dans la carte de mise à jour

Dépannage

Les statistiques n'apparaissent pas dans le tableau de bord Énergie
  • Vérifiez que la première synchronisation s'est bien terminée (consultez les logs HA en mode debug pour le domaine capfile)
  • Attendez quelques minutes après le redémarrage de HA — l'injection dans le recorder est asynchrone
  • Si l'option "Configurer automatiquement le dashboard Énergie" n'était pas cochée lors de la configuration, ajoutez manuellement les statistiques capfile:conso_* dans la configuration Énergie ; sinon, patientez quelques instants — la configuration automatique se fait après la première injection de données dans le recorder
Les données s'arrêtent à J-2 ou J-3

C'est normal. Enedis transmet les relevés à Capfile avec environ 48 heures de délai. La donnée la plus récente disponible correspond toujours à J-2 environ.

Erreur lors de la configuration — quota_exceeded

Les quotas journaliers, hebdomadaires ou mensuels de l'API Capfile Free ont été atteints. Attendez la réinitialisation (minuit pour les quotas journaliers) avant de réessayer.

Les prix ne correspondent pas à ma facture
  • Vérifiez et ajustez les tarifs via Paramètres → Appareils et services → Capfile → Configurer
  • Pour les abonnements, saisissez le montant TTC de votre abonnement mensuel
Activer les logs de débogage

Ajoutez dans votre configuration.yaml :

logger:
  default: warning
  logs:
    custom_components.capfile: debug

Redémarrez Home Assistant. Les logs détaillés de chaque appel API et de chaque injection de statistique seront visibles dans Paramètres → Journaux.