Paheko

    Fonctionnement🔗

    Paheko (anciennement Garradin) est un logiciel de comptabilité libre destiné aux associations. Il offre une interface de gestion des adhérent·es, une section wiki / site web / documentation, une prise en charge complète des plans comptables associatifs et permet de générer des bilans et des comptes de résultat pour nos bilans financiers.

    Pour consulter le guide d’utilisation de Paheko destiné à notre usage interne, consultez la documentation administrative.

    Historique🔗

    Nous utilisons Paheko depuis la création de La Contre-Voie, nous avons par ailleurs soutenu financièrement leur association pour le développement de ce logiciel en 2021.

    De janvier 2019 à octobre 2022, notre instance Paheko était autohébergée en local (avec Docker) sur l’ordinateur de notre trésorière.

    À partir d’octobre 2022, en anticipation de la passation du mandat à la trésorerie, nous hébergeons finalement notre instance Paheko en ligne sur notre serveur Sarus.

    Installation🔗

    Nous utilisons notre propre image Docker de Paheko, réécrite depuis une base créée par ajanvier. Retrouvez notre Dockerfile sur le dépôt Core. Une autre image créée par alexandregv est également disponible pour cet usage.

    Notre image inclut un serveur HTTP (nginx) et nous n’avons pas de variante PHP-FPM.

    Par défaut, Paheko utilise une base de données SQLite pour conserver ses données. Il est possible de paramétrer des sauvegardes régulières dans sa configuration. Par conséquent, il ne nécessite qu’un seul volume, celui qui contient ses fichiers de données.

    Tests🔗

    Une simple tentative d’affichage de la page depuis un navigateur web suffit pour tester le fonctionnement du service. Une attention particulière doit être portée au chargement des assets de la page, qu’il est possible de paramétrer à travers les variables WWW_URI et WWW_URL dans le fichier de configuration de Paheko.

    Consommation de ressources🔗

    En date de juillet 2023, Paheko consomme 34 Mo de RAM et très peu de CPU, une performance plutôt notable pour un logiciel développé en PHP, même s’il est destiné à un usage interne.

    Précautions🔗

    L’installation de Paheko ne suppose pas de précautions particulières autres que celles décrites dans son guide d’installation. Toutefois, les données de comptabilité contiennent des informations potentiellement sensibles (coordonnées bancaires, noms et prénoms…) qui nécessitent que l’on en prenne soin ; c’est la raison pour laquelle nous hébergeons ce service chez Picasoft plutôt que notre hébergeur principal (en date de 2023).

    Restrictions d’accès🔗

    Si vous renseignez un email dans le formulaire de création de membre et que vous avec configuré la catégorie du membre pour autoriser la connexion, les membres pourront se connecter à leur espace dans Paheko, ce qui n’est peut-être pas souhaité.

    Pour notre part, nous avons opté pour bloquer par défaut toute connexion à notre instance en ajoutant une basic authentication sur notre reverse-proxy.

    Entretien🔗

    En tant que service à usage interne, Paheko ne demande aucun entretien particulier, sans prendre en compte les opérations de comptabilité à réaliser et les mises à jour du logiciel.

    Mise à jour🔗

    Paheko🔗

    Les mises à jour de Paheko sont assez fréquentes (une par mois en moyenne). Le changelog est très clair et instructif. Dans notre installation, il nous suffit de modifier la variable d’environnement build-time PAHEKO_VERSION et de reconstruire l’image, puis de redémarrer le conteneur. Une visite de l’interface web permet de déclencher le processus de migration de la base de données.

    PHP🔗

    Comme Paheko ne dispose pas d’image officielle et que nous avons créé la nôtre de toutes pièces, nous devons également nous occuper de la mise à jour de PHP dans l’image. Le changelog de Paheko indique généralement lorsque la compatibilité avec la version suivante de PHP est assurée et permet d’engager plus sereinement le processus de mise à jour.

    Évolutions envisagées🔗

    Utilisation de l’API pour synchroniser la barre des dons🔗

    Paheko dispose d’une API depuis la version 1.1, qui permet notamment d’exécuter des requêtes SQL. Il serait envisageable de synchroniser la barre des dons à La Contre-Voie, affichée sur notre page d’accueil, pour automatiser son actualisation (elle est actuellement mise à jour à la main à travers un fichier JSON sur le dépôt Blog).