No description
Application web locale (FastAPI + SQLite + React SPA) pour la gestion des immobilisations fiscales d'une PME québécoise (T2 / CO-17). ─── Modèle de données ─────────────────────────────────────────────────────── • Deux niveaux : PARENT (immobilisation fiscale) + PIÈCE (inventaire physique) • Trois vues par actif : Propriétaire, CPA, Auditeur • Porteur d'étiquette d'assemblage (unique par immobilisation) • Piste d'audit journalisée sur chaque modification ─── Mécanique fiscale ─────────────────────────────────────────────────────── • Pool DPA par catégorie (Cat. 8, 10, 12, 46, 50) — amortissement dégressif • Règle de la demi-année paramétrable (coeff. 0..1 par exercice) • Perte finale et récupération d'amortissement calculées automatiquement • Annexe 8 / Schedule 8 multi-catégories (JSON + CSV téléchargeable) • Rapport fiscal HTML imprimable — lignes Schedule 1 (T2 : 104/107/410/414 ; CO-17 : 130/135/150/155) • Export immobilisations par catégorie (JSON + CSV) ─── Fonctionnalités ───────────────────────────────────────────────────────── • CRUD complet : parents et pièces, rattachement/détachement (libre/stock/rebut) • Écriture comptable générée au détachement • Registre de pool DPA multi-exercices avec override manuel • Sauvegarde/restauration (SQLite native backup, horodatée) • Factures jointes aux pièces (PDF/JPG/PNG, max 20 Mo, UUID + regex) • UI mobile-first : bottom nav, FAB, bottom sheet, safe-area iPhone • Guide utilisateur complet in-app (aide.html, 11 sections) • Données de démonstration riches (6 immos, 5 catégories, perte finale + récupération incluses) ─── Qualité ───────────────────────────────────────────────────────────────── • 50 tests pytest — 100 % verts (calculs DPA, export, backup, factures, seed) • Lancement en 1 commande : ./lancer.sh (Mac/Linux) ou lancer.bat (Windows) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| app | ||
| data | ||
| scripts | ||
| static | ||
| tests | ||
| .gitignore | ||
| lancer.bat | ||
| lancer.sh | ||
| README.md | ||
| requirements.txt | ||
Gestionnaire d'immobilisations fiscales
Outil de gestion d'actifs pour les PME québécoises / canadiennes. Produit les intrants pour les déclarations fiscales (Annexe 8 / Schedule 8, CO-17) et maintient un inventaire d'équipements défendable devant un auditeur.
Avis : Les calculs DPA/FNACC sont structurellement corrects mais indicatifs. Toute déclaration fiscale doit être validée par un CPA autorisé.
Lancement
Requiert Python 3.10+ (python.org).
Mac / Linux — dans un terminal :
./lancer.sh
Windows — double-clic sur lancer.bat
L'environnement Python est créé automatiquement à la première utilisation.
Les données sont conservées dans le dossier data/ du projet.
Ce que l'outil produit
| Vue | Pour qui | Contenu |
|---|---|---|
| Propriétaire | Dirigeant | VNC linéaire, coût de remplacement, statut, barre d'amortissement |
| CPA | Comptable | FNACC fiscale (décroissante), base capitalisable, catégorie DPA |
| Auditeur | Inspecteur | Numéro de série, fournisseur, facture, piste d'audit horodatée |
Fonctions fiscales
- Registre pool par catégorie DPA (Cat. 50, 46, 8, 12, 10…)
- Annexe 8 / Schedule 8 multi-catégories avec export CSV
- FNACC indicative par pièce (taux dégressif + règle demi-année)
- Amortissement linéaire indicatif par pièce (usage comptable)
Fonctions d'inventaire
- Modèle à deux niveaux : immobilisation fiscale → pièces composantes
- Porteur d'étiquette : une pièce porte le tag, les autres l'héritent
- Piste d'audit complète sur chaque actif (toutes modifications horodatées)
- Coût de remplacement pour assurances et budgets
Structure
app/
main.py Routes FastAPI
store.py Persistance SQLite + calculs
accounting.py Comptabilité de détachement (journal)
cca_registry.py Registre pool DPA
cca_pool.py Calculs pool CCA
static/
index.html Interface React
data/
immos.db Base de données (créée au premier lancement)
Développement
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
.venv/bin/uvicorn app.main:app --reload --port 8001