Modules agricoles pour jeunes agriculteurs et petites exploitations — AGPL-3.0-or-later.
Partie de l'écosystème MySelf — « l'étage applicatif qui repose sur les 3 piliers » (identité / droit / sécurité).
| Module | Objet | État |
|---|---|---|
self-agri-book |
hub compta central — journal, bilan, compte de résultat, export FEC | disponible |
self-invoice |
factures Factur-X pour trois régimes : franchise, micro-BA, réel | disponible |
self-pos |
caisse de marché sur PC et mobile hors ligne, à l'unité ou au poids, reportée au hub compta | disponible |
self-pa |
factures fournisseurs reçues par plateforme agréée, contrôlées, imputées après validation | disponible |
self-dnja |
prévisionnel DNJA sur quatre ans et dossier PDF pour la CDOA | disponible |
self-aid |
catalogue des aides publiques, tiré de sources officielles | disponible |
self-banking |
lecture des relevés bancaires PDF, en vue du rapprochement | en préparation |
self-culture |
parcellaire et cultures, cartographie IGN | disponible |
self-elevage |
élevage : ponte, bandes et mouvements, lots d'œufs, aliment, registre d'élevage | disponible |
self-backup |
sauvegarde et restauration, 100 % locales | disponible |
self-factur-x-agri |
TVA agricole et unités HAR/TNE pour Factur-X | à fusionner dans self-invoice |
Ces modules sont utilisables seuls ou combinés, ils n'exigent aucun ERP global et ne capturent aucune donnée dans le cloud.
Démo live publique : https://selffarm.my-self.fr
Tous les modules métier alimentent le hub compta self_agri_book via
auto-écritures. Zéro double saisie, dédup automatique par (source_module, source_id).
┌────────────────────────────────────────────────────────┐
│ MODULE COMPTA (hub central — self_agri_book) │
│ SQLite : ecritures_comptables │
│ → Journal + Bilan + Compte de résultat + FEC DGFIP │
└────▲───────▲───────▲───────▲───────▲───────────────────┘
│ │ │ │ │
┌────┴──┐ ┌──┴───┐ ┌─┴───┐ ┌─┴────┐ ┌┴───────┐
│Invoice│ │Achats│ │Immos│ │Banking│ │Manuel │
│(701) │ │(6xxx)│ │(215)│ │ (512) │ │ vente │
└───────┘ └──────┘ └─────┘ └───────┘ └───────┘
Conséquence : chaque action dans un module (générer une facture, importer un relevé, saisir un achat) met à jour en temps réel le journal, le bilan, le compte de résultat et le FEC DGFIP.
- Plan comptable : PCG Agricole officiel 2026 (ANC + arrêté 1986 + règlement ANC 2019-01)
- Export FEC : conforme art. L47 A-I LPF + BOI-CF-IOR-60-40-10 (18 colonnes tab-separated)
- Factur-X : PDF/A-3 + XML CII, profils BASIC / EN16931 / EXTENDED (obligatoire sept 2026-2028)
- Multi-régime : franchise TVA (art. 293 B CGI), micro-BA, réel simplifié/normal
- TVA agricole : taux 5,5 % / 10 % / 20 %
- Validation équilibre D/C : Pydantic model validator (refus d'insertion sinon)
Tableau de bord — vue d'ensemble de l'exploitation : résultat, aides éligibles, écritures compta, cultures.
SelfPOS — la même caisse sur PC (gestion à la ferme) et sur mobile (encaissement au marché, hors-ligne). Vente à l'unité ou au poids.
SelfAgriBook — le hub compta : journal alimenté en temps réel par tous les modules (factures, ventes, achats), zéro double saisie. Les ventes SelfPOS y remontent automatiquement.
Sauvegarde & restauration — export ZIP portable signé SHA256, 100 % local, aucun cloud.
Parcours guidé : statut (JA / NA / AGRI / PME), régime fiscal et TVA, productions de la ferme.
git clone <url-du-repo>
cd selffarm-lite
./install.sh # installe venv + deps + exécute les tests
source .venv/bin/activate
export PYTHONPATH=modules:.
# Lancer la webapp (port 8001 par défaut)
uvicorn webapp.main:app --reload --port 8001
# → http://localhost:8001
# CLI DNJA
python -m self_dnja.cli calcul examples/hypotheses-demo-publique.yaml
python -m self_dnja.cli pdf examples/hypotheses-demo-publique.yaml -o dossier.pdf
# CLI Aides
python -m self_aid.cli list
python -m self_aid.cli search --statut ja-installation
python -m self_aid.cli search --bio --zone Dordogne| Route | Rôle |
|---|---|
/ |
Tableau de bord — Production / Vente / Gestion, accès à tous les modules |
/onboarding |
Parcours de première installation (exploitation, régime fiscal, productions) |
/pos |
SelfPOS — caisse de marché (PC), app mobile PWA sur /pos/mobile |
/dnja |
Simulateur prévisionnel + scénarios + éditeur + compare + PDF CDOA |
/aides |
Catalogue d'aides filtrable HTMX |
/parcelles |
Cartographie IGN + recherche parcelles cadastre |
/invoice |
Générateur Factur-X démo live (3 régimes) |
/compta |
Hub compta — journal + boutons démo multi-sources |
/compta/resultat |
Compte de résultat live (produits vs charges) |
/compta/bilan |
Bilan comptable — actif ↔ passif équilibré |
/compta/export-fec |
Export FEC DGFIP conforme (18 colonnes) |
/compta/facture-du-journal |
PDF Factur-X consolidé depuis les ventes 411/701 du journal |
/backup |
Sauvegarde & restauration ZIP (local, disque externe, planifiée) |
/docs |
Swagger UI auto-généré (21+ endpoints documentés) |
- Anti-capture SaaS : self-hosted, vos données restent chez vous (SQLite local)
- Modulaire : une brique = un besoin, pas d'ERP monolithique
- Léger : Python 3.13 + SQLite + HTML/htmx/Tailwind CDN, tourne sur un Raspberry Pi
- Sources primaires uniquement (Légifrance, BOFiP, service-public, mesdemarches.agriculture, FranceAgriMer, MSA, portails régionaux) — jamais de blog ni site marchand comme autorité
- Factur-X natif 2026 là où c'est pertinent
- Hub central : une seule table vérité, zéro double saisie, dédup garantie
- Versioning + logging obligatoires par convention MySelf
| Couche | Choix |
|---|---|
| Langage | Python 3.13 (3.11 min sur Raspberry Pi) |
| API | FastAPI + Starlette >=1.3.1 |
| Validation données | Pydantic v2 (+ model_validator pour équilibre D/C) |
| BDD | SQLite local (1 fichier par utilisateur) |
| Front | HTML + htmx (server-rendered, pas de SPA) + Tailwind CSS compilé en local |
| WeasyPrint (HTML → PDF/A-3) | |
| Parser banque | pdfplumber (reconstruction depuis extract_words() X/Y) |
| Factur-X | XML CII EN16931 + PDF/A-3 embedded |
| Tests | pytest + pytest-cov |
| Lint | ruff |
| CI | GitHub Actions (lint + tests + validation YAML) |
| Deploy | Docker multi-arch (Raspberry Pi 4 compatible) |
| Proxy prod | nginx + Let's Encrypt (certbot) |
| Haute dispo | Watchdog matériel (reboot auto si kernel panic) |
modules/self_agri_book/— hub compta SQLite + bilan/résultat/FECmodules/self_pos/— SelfPOS : caisse marché PC + mobile (PWA), ventes → hub comptamodules/self_dnja/— moteur prévisionnel + PDF + 16 testsmodules/self_aid/— catalogue aides + CLI + 13 testsmodules/self_banking/— parsers PDF relevés (SG fait, CA/CM à venir)modules/self_culture/— parcellaire + cultures (cartographie IGN cadastre)modules/self_backup/— sauvegarde / restauration ZIP signée SHA256modules/self_factur_x_agri/— Factur-X agricole (TVA, UOM HAR/TNE)modules/self_aid/data/aides-agri-2026.yaml— aides JA nationales et régionales 2026 (les aides départementales se placent dansdata/local/, non versionné) sourcées officiellement avec date de vérificationmodules/self_agri_book/data/pcg-agricole-2026.yaml— Plan comptable agricole officiel 2026 (9 classes, 396 comptes, 133 agri-spécifiques)webapp/— routes FastAPI + templates Jinja2 + static assetsexamples/— hypothèses DNJA types + YAML démo publique anonymisédocs/— analyses architecture (Ekylibre, Odoo, libs Factur-X, API Viva, spec SelfInvoice v0.2).github/workflows/ci.yml— CI GitHub Actions prêteDockerfile— image multi-arch (amd64 + arm64)
PYTHONPATH=modules .venv/bin/python -m pytest modules/ -v29+ tests passent (moteur DNJA + loader/filtrage aides + écritures compta + parser SG). Hub compta testé E2E en conditions réelles : lettrage auto + dédup + équilibre bilan.
Conception informée par l'observation de :
- Ekylibre (AGPLv3) — FMIS Rails complet (2M+ lignes de code, Ruby 2.6 / Rails 5.2), trop lourd pour installation solo. Complémentaire, pas concurrent : SelfFarm-Lite est un « on-ramp » pour néo-installés, migration vers Ekylibre possible à croissance.
- Ouvretaferme (licence maison, non-OSI) — gestion maraîchage PHP, non réutilisable
- Odoo
account_edi_ubl_cii(LGPL) — patterns Factur-X utilisés comme inspiration
SelfFarm-Lite est une implémentation originale Python. Aucun code n'a été repris de ces projets. Les nomenclatures (PCG agricole, barèmes aides, taxes) viennent des sources officielles ouvertes (ANC, impots.gouv.fr, FranceAgriMer, Légifrance, MSA, portails régionaux).
SelfFarm-Lite est l'étage applicatif agricole de l'écosystème MySelf. Autonome par défaut, il est conçu pour s'appuyer sur les 3 piliers MySelf — intégrations à des stades divers (de l'opérationnel à la R&D), pas toutes câblées à ce jour. Les modules de MySelf, tels que leur manifeste les publie :
- SelfRecover — récupération de compte sans email ni SMS
- SelfModerate — modération communautaire par raisonnement social
- SelfJustice — consultation du droit français et européen par une API publique
- SelfAct — modèles officiels et calcul des délais de procédure
- SelfDataGuard — chiffrement des données au repos côté application
Ce que SelfFarm-Lite en attend : récupérer l'accès à son instance sans email (SelfRecover), modérer les données partagées entre exploitations (SelfModerate), consulter le droit applicable aux litiges agricoles, bail rural compris (SelfJustice), calculer les délais d'une procédure (SelfAct), chiffrer les données comptables au repos (SelfDataGuard).
AGPL-3.0-or-later — le bouclier open source anti-capture SaaS du MySelf.
Pierroons — mainteneur. Bricole des outils libres pour l'agriculture, pour que les données poussent pas dans le cloud. Contact : contact@my-self.fr
Co-écrit avec Claude (Anthropic).






