# Audit final et préparation cPanel

## Verdict au 6 août 2026

Les modules fonctionnels des phases 2 à 14 sont installés et exploitables sur la base de développement. Les cycles vente, achat, stock, facturation, encaissement, décaissement, caisse, banque, chèque, dépenses et rapprochement bancaire disposent de contrôles transactionnels et d'une traçabilité.

La mise en production reste une décision d'exploitation : elle exige les identifiants SMTP réels, le domaine cPanel, le certificat SSL, un nouveau mot de passe administrateur et une restauration testée sur l'hébergement cible.

## Contrôles exécutés

- 147 fichiers PHP analysés par `php -l`, sans erreur.
- `php bin/health-check.php` : PHP 8.2, 136 tables, stockage et configuration valides.
- `php bin/install.php` : installation idempotente et migrations à jour.
- Installation sur base vierge : 136 tables et 16 migrations.
- `php bin/audit-consistency.php` : zéro anomalie sur factures, paiements, affectations, stock, livraisons, réceptions, transferts et numérotation.
- Smoke test authentifié : dashboard, factures, paiements, chèques, caisses, banques, rapprochement, dépenses, rapports et paramètres chargés sans erreur 500.
- Contrôles HTTP : accès protégé, 403, 404 et CSRF 419 vérifiés.
- Tests métier : remise globale, devis vers facture, regroupement de BL, acompte/solde, récurrence idempotente, avoir par ligne, rejet de chèque, dépense et annulation inverse, import et rapprochement bancaire.

## Sécurité

PDO préparé, CSRF, échappement HTML, permissions par route, régénération de session, cookies HttpOnly/SameSite, CSP, HSTS sous HTTPS et pages d'erreur neutres sont actifs. Les secrets SMTP sont chiffrés. Les dossiers internes, sauvegardes et extensions sensibles sont bloqués par Apache; l'exécution PHP est interdite dans les uploads.

## Commandes de contrôle

```bash
php bin/health-check.php
php bin/audit-consistency.php
php bin/install.php
php bin/cron.php
```

## Gate de production

- [ ] Copier `.env.example` vers `.env`, utiliser `APP_ENV=production` et `APP_DEBUG=false`.
- [ ] Générer un `APP_KEY` unique et renseigner la base cPanel.
- [ ] Pointer le document root vers `public/`, activer SSL et tester la redirection HTTPS.
- [ ] Remplacer le mot de passe administrateur de démonstration.
- [ ] Configurer société, TVA, numérotation, entrepôt, caisse et banque.
- [ ] Tester SMTP avec le compte réel du domaine.
- [ ] Installer le Cron et vérifier son historique.
- [ ] Créer une sauvegarde, puis tester sa restauration sur une base séparée.
- [ ] Supprimer les données de démonstration avant saisie réelle.

Les éléments ci-dessus dépendent de l'hébergement et ne peuvent pas être certifiés depuis XAMPP.

