# Guide administrateur - ComptaAI Maroc

Ce guide presente les principales fonctions disponibles pour les Super Admin, Admin Cabinet, Comptables et responsables de cabinet.

## Tableau de bord

Le tableau de bord donne une vue rapide de l'activite: documents, validations, erreurs, TVA, banque et taches. Les cartes servent a identifier les traitements urgents.

## Clients

Menu: `Clients`

Utiliser ce module pour gerer les entreprises et dossiers comptables.

Fonctions principales:

- Creer ou modifier une entreprise.
- Renseigner ICE, IF, RC, CNSS, forme juridique, secteur, adresse et contact.
- Assigner un comptable.
- Activer, desactiver ou archiver un client.
- Consulter le profil client avec les resumes documents, factures et validations.

Seuls les profils administrateurs peuvent supprimer ou archiver.

## Documents / GED

Menu: `Documents / GED`

Ce module centralise les pieces comptables.

Types acceptes:

- Facture achat.
- Facture vente.
- Recu.
- Releve bancaire.
- Document fiscal.
- Autre.

Formats acceptes: PDF, JPG, PNG. Les fichiers sont renommes automatiquement et stockes par client, annee et mois.

Statuts:

- `uploaded`
- `waiting_ocr`
- `ocr_processed`
- `needs_review`
- `validated`
- `exported`
- `rejected`

## OCR / Extraction IA

Menu: `OCR / Extraction IA`

Le module est pret pour une future API OCR/IA. Pour le moment, il utilise une extraction de demonstration.

Workflow:

1. Envoyer un document vers OCR.
2. Le statut passe a `waiting_ocr`.
3. L'extraction demo cree des champs: fournisseur, client, numero facture, dates, HT, TVA, TTC, taux TVA, moyen de paiement.
4. L'utilisateur corrige les champs si necessaire.
5. La confirmation valide l'extraction et le document.

Les appels IA reels devront rester cote backend via `includes/ai_service.php`.

## Pre-comptabilite

Menu: `Pre-comptabilite`

Ce module genere des ecritures depuis les extractions confirmees.

Comptes marocains par defaut:

- 4411 Fournisseurs
- 3421 Clients
- 4455 TVA recuperable
- 4456 TVA facturee
- 6111 Achats
- 7111 Ventes

Workflow:

1. Choisir un document valide.
2. Generer l'ecriture.
3. Verifier les lignes debit/credit.
4. Corriger les comptes si necessaire.
5. Valider l'ecriture lorsque total debit = total credit.

## TVA

Menu: `TVA`

La TVA se calcule uniquement sur les ecritures validees.

Regles:

- TVA collectee = credits du compte 4456.
- TVA recuperable = debits du compte 4455.
- TVA a payer = TVA collectee - TVA recuperable.

Un rapport TVA peut etre en brouillon ou valide. Une fois valide, il est verrouille.

## Banque

Menu: `Banque`

Fonctions:

- Uploader un releve bancaire PDF, CSV ou Excel.
- Importer les transactions depuis CSV.
- Categoriser les lignes: loyer, paiement fournisseur, paiement client, frais bancaires, salaire, taxe, autre.
- Rapprocher manuellement une transaction avec un document valide.

Le rapprochement automatique bancaire n'est pas connecte a une API bancaire.

## Exports

Menu: `Exports`

Exports disponibles:

- Ecritures comptables.
- Rapport TVA.
- Liste documents.
- Transactions bancaires.

Formats:

- CSV.
- CSV compatible Excel.
- PDF simple.

Les exports sont internes. Aucune integration vers logiciel comptable externe n'est active.

## Rapports

Menu: `Rapports`

Rapports disponibles:

- Dashboard analytique.
- Activite mensuelle.
- Synthese comptable par client.
- Analyses IA demo.

La section `Analyses IA` affiche pour l'instant des signaux de demonstration ou des controles simples.

## Utilisateurs, roles et permissions

Menu: `Utilisateurs`

Roles:

- Super Admin
- Admin Cabinet
- Comptable
- Assistant Comptable
- Client

Permissions disponibles:

- clients.view, clients.create, clients.edit, clients.delete
- documents.view, documents.upload, documents.delete
- ocr.process
- accounting.validate
- tva.validate
- bank.manage
- exports.generate
- reports.view
- users.manage
- settings.manage

Le role Client est isole dans le portail client. Un comptable ne doit voir que les clients affectes.

## Parametres

Menu: `Parametres`

Sections:

- General: nom plateforme, logo, langue, timezone, devise.
- Cabinet: profil cabinet.
- Comptabilite: journaux, comptes, TVA.
- IA: provider, API key placeholder, modele, activation.
- OCR: provider, seuil confiance, auto-envoi.
- Email: SMTP, expediteur, mode test.
- Securite: timeout session, longueur mot de passe, limite tentatives login.

Les cles API et mots de passe SMTP sont masques apres sauvegarde.

## Abonnement et facturation SaaS

Menus: `Abonnement`, `Facturation SaaS`

Fonctions:

- Gerer les plans: Free Trial, Starter, Pro, Cabinet, Enterprise.
- Affecter un plan a un cabinet ou client.
- Suivre l'usage mensuel: documents, OCR, IA, utilisateurs, clients.
- Generer des factures SaaS internes.
- Marquer les paiements manuellement.

Aucune passerelle de paiement en ligne n'est connectee.

## Emails

Menu: `Emails`

Fonctions:

- Modifier les templates.
- Activer ou desactiver un template.
- Consulter la file email.
- Traiter la file manuellement.
- Lire les logs d'envoi.

Par securite, les emails restent en file si SMTP n'est pas configure ou si le mode test est actif.

## Maintenance et backups

Menu: `Maintenance`

Fonctions:

- Voir la sante systeme: PHP, MySQL, stockage, utilisateurs, clients, documents.
- Creer un backup manuel de la base.
- Voir l'historique backups.
- Activer le mode maintenance.

Les backups sont stockes dans `storage/backups` et ne doivent pas etre accessibles publiquement.

## Journal d'activite

Menu: `Journal d'activite`

Le journal trace les actions importantes:

- Connexion et echec de connexion.
- Creation, modification, suppression ou archivage client.
- Upload et suppression document.
- OCR, validation, TVA, banque, exports.
- Parametres et utilisateurs.

Seuls Super Admin et Admin Cabinet peuvent consulter le journal.

## Bonnes pratiques

- Utiliser des mots de passe forts.
- Garder `APP_DEBUG=false` en production.
- Ne jamais partager les cles IA ou SMTP.
- Verifier regulierement les backups.
- Garder le mode test email actif tant que SMTP n'est pas valide.
