111 lines
4.9 KiB
Markdown
111 lines
4.9 KiB
Markdown
---
|
|
title: SolidInvoice
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, accounting, facturation, laravel, php, crm, paiements]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Accounting, https://github.com/SolidInvoice/SolidInvoice, https://solidinvoice.co/]
|
|
---
|
|
|
|
# SolidInvoice 💎
|
|
|
|
> **Plateforme de facturation et de gestion commerciale** pour freelances et PME, écrite en **PHP (Laravel/Symfony)** — alternative mature à Invoice Ninja avec un focus sur la **simplicité**.
|
|
|
|
| Métadonnée | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | https://solidinvoice.co |
|
|
| **GitHub** | https://github.com/SolidInvoice/SolidInvoice |
|
|
| **License** | MIT |
|
|
| **Langage** | PHP 8.2+ (Symfony + bundles) + MariaDB/PostgreSQL |
|
|
| **Étoiles** | ⭐222 |
|
|
| **Dernière MAJ** | 2025-02 |
|
|
| **Catégorie** | [[cat-accounting]] |
|
|
|
|
## Description
|
|
|
|
**SolidInvoice** est une **plateforme de facturation et de gestion commerciale** écrite en **PHP** sur la base du framework **Symfony** (avec des composants réutilisés du monde Laravel). Le projet vise les **freelances, agences et PME** qui ont besoin d'un outil complet pour gérer devis, factures, clients et paiements, dans une interface web moderne et responsive, sans les lourdeurs d'un ERP traditionnel.
|
|
|
|
L'application couvre le **cycle commercial complet** : gestion de **clients et contacts**, émission de **devis** convertibles en factures d'un clic, **factures récurrentes** (abonnements), **notes de crédit / avoirs**, **rappels automatiques** de paiement, **multi-devises** et **multi-taxes**, **tableaux de bord** synthétisant le chiffre d'affaires encaissé / en attente / en retard. L'**export PDF** des documents est natif (basé sur des templates Twig), et une **API REST** permet des intégrations tierces (CRM, e-commerce).
|
|
|
|
SolidInvoice se positionne comme une **alternative plus légère et plus simple** à [[app-invoice-ninja]] (qui souffre d'une double licence AGPL + Elastic) et à [[app-akaunting]] (plus complet mais plus lourd). Sa **license MIT** claire, son **architecture Symfony** solide et son **code base de qualité** en font un bon choix pour un auto-hébergeur qui veut une solution PHP éprouvée, sans la complexité administrative de logiciels comme Sage ou QuickBooks.
|
|
|
|
## Installation
|
|
|
|
### Via Docker (placeholder à adapter)
|
|
|
|
```yaml
|
|
# docker-compose.yml
|
|
services:
|
|
solidinvoice:
|
|
image: ghcr.io/solidinvoice/solidinvoice:latest
|
|
container_name: solidinvoice
|
|
restart: unless-stopped
|
|
ports:
|
|
- "8080:80"
|
|
environment:
|
|
APP_ENV: prod
|
|
APP_SECRET: changez-moi-long-aleatoire
|
|
DATABASE_URL: mysql://solidinvoice:secret@db:3306/solidinvoice?serverVersion=10.11
|
|
volumes:
|
|
- ./uploads:/var/www/html/var/uploads
|
|
depends_on:
|
|
- db
|
|
db:
|
|
image: mariadb:11
|
|
container_name: solidinvoice-db
|
|
restart: unless-stopped
|
|
environment:
|
|
MARIADB_DATABASE: solidinvoice
|
|
MARIADB_USER: solidinvoice
|
|
MARIADB_PASSWORD: secret
|
|
MARIADB_ROOT_PASSWORD: root-secret
|
|
volumes:
|
|
- ./dbdata:/var/lib/mysql
|
|
```
|
|
|
|
### Manuelle (PHP ≥ 8.2, Composer)
|
|
|
|
```bash
|
|
git clone https://github.com/SolidInvoice/SolidInvoice.git
|
|
cd SolidInvoice
|
|
composer install --no-dev
|
|
php bin/console doctrine:database:create
|
|
php bin/console doctrine:migrations:migrate
|
|
php -S 0.0.0.0:8000 -t public/
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Variables d'environnement principales : `APP_ENV` (`prod` recommandé), `APP_SECRET` (clé applicative, ≥ 32 caractères), `DATABASE_URL` (MariaDB/MySQL ou PostgreSQL), `MAILER_DSN` (notifications et relances SMTP). Le fichier `config/packages/*.yaml` permet d'ajuster la **devise par défaut**, les **formats de numérotation** des factures, les **modèles PDF** (Twig) et les **passerelles de paiement** actives (PayPal, Stripe, etc.).
|
|
|
|
## Alternatives
|
|
|
|
- **Open Source** : [[app-invoice-ninja]] (Laravel, plus complet), [[app-akaunting]] (Laravel, comptabilité intégrée), [[app-invoiceplane]] (PHP legacy), [[app-crater]] (Node/React)
|
|
- **Propriétaire** : **FreshBooks**, **QuickBooks**, **Sage**, **Wave Accounting**, **Xero**
|
|
|
|
## Sécurité
|
|
|
|
- **APP_SECRET** : valeur aléatoire forte, unique par instance
|
|
- Mettre le service **derrière HTTPS** (Traefik, Caddy, Nginx) — voir [[recettes-docker-compose]]
|
|
- MariaDB : ne **jamais** exposer le port 3306 sur l'hôte (réseau Docker interne)
|
|
- Sauvegardes : `mariadb-dump` quotidien + test de restauration mensuel
|
|
- Activer les **en-têtes de sécurité** (HSTS, CSP, X-Frame-Options) via reverse-proxy
|
|
- Mettre à jour PHP et les dépendances Composer régulièrement (`composer audit`)
|
|
|
|
## Ressources
|
|
|
|
- Site officiel : https://solidinvoice.co
|
|
- Code source : https://github.com/SolidInvoice/SolidInvoice
|
|
- Documentation Symfony : https://symfony.com/doc
|
|
- Documentation Doctrine ORM : https://www.doctrine-project.org
|
|
|
|
## Pages Liées
|
|
|
|
- [[cat-accounting]]
|
|
- [[recettes-docker-compose]]
|
|
- [[app-invoice-ninja]]
|
|
- [[app-akaunting]]
|
|
- [[app-invoiceplane]]
|