# Guide d'installation NoteToQuote

## Prérequis

- Dolibarr 17+ (testé sur Dolibarr 22)
- PHP 8.1+
- Module "Propositions commerciales" activé dans Dolibarr
- Accès à un serveur pour héberger le backend API (ou utiliser `api.lautram.com`)
- Une clé de licence NoteToQuote (sur lautram.com)

---

## 1. Installation du module Dolibarr

### Option A — ZIP (recommandée)

1. Télécharger `notetoquote.zip` depuis lautram.com
2. Dans Dolibarr → **Configuration → Modules/Applications → Déployer/Installer un module externe**
3. Uploader le ZIP et activer le module
4. Vérifier que le module **NoteToQuote** apparaît dans la liste

### Option B — Copie manuelle

```bash
cp -r /path/to/module/notetoquote /var/www/dolibarr/htdocs/custom/notetoquote
```

---

## 2. Configuration du module

Dans Dolibarr → **Configuration → Modules → NoteToQuote → Configurer** :

| Paramètre | Valeur | Description |
|-----------|--------|-------------|
| URL de l'API | `https://api.lautram.com` | Ou URL de votre propre backend |
| Clé de licence | `LAU-XXXX-XXXX-XXXX` | Obtenue sur lautram.com |
| Secret partagé HMAC | (chaîne aléatoire) | Doit correspondre à `NOTETOQUOTE_SHARED_SECRET` dans le backend |

**Vérifier la licence** avec le bouton dédié sur la page de configuration.

---

## 3. Droits utilisateurs

Les droits NoteToQuote sont dans **Configuration → Utilisateurs → [votre utilisateur] → Droits** :

- `notetoquote / generate` — Autoriser la génération de devis via IA

---

## 4. Backend API (si auto-hébergé)

### Prérequis backend
- Docker + Docker Compose
- Compte Supabase (gratuit pour débuter)

### Variables d'environnement

Copier `.env.example` en `.env` et remplir :

```env
ANTHROPIC_API_KEY=sk-ant-...
SUPABASE_URL=https://xxx.supabase.co
SUPABASE_SERVICE_ROLE_KEY=eyJ...
NOTETOQUOTE_SHARED_SECRET=votre-secret-aleatoire-256bits
PORT=3010
NODE_ENV=production
LOG_LEVEL=info
# Optionnel : webhook pour alertes quota (Make, n8n, Zapier...)
ALERT_WEBHOOK_URL=https://hook.make.com/...
```

### Lancement avec Docker

```bash
cd backend
docker compose up -d
```

### Proxy Apache

```apache
ProxyPass        /api/ http://localhost:3010/api/
ProxyPassReverse /api/ http://localhost:3010/api/
```

### Test santé

```bash
curl https://votre-domaine.com/api/health
# Réponse attendue : {"status":"ok","version":"1.0.0"}
```

---

## 5. Utilisation

### Depuis le menu Dolibarr
**Commercial → Propositions → NoteToQuote**

### Depuis une fiche devis
Sur un devis en statut **Brouillon**, bouton **"Générer via IA"** dans les actions.

### Workflow
1. Saisir les notes de visite (texte libre, min 10 caractères)
2. Ajouter des photos (optionnel, max 10, max 10 MB chacune)
3. Choisir le type de bien et les options
4. Cliquer **Générer via IA**
5. **Vérifier et éditer** les lignes dans le tableau de prévisualisation
6. Supprimer les lignes incorrectes, corriger les prix marqués "Incomplet"
7. Cliquer **Confirmer et créer le devis**

---

## 6. Résolution des problèmes fréquents

### "Clé de licence non configurée"
→ Aller dans la configuration du module et renseigner la clé.

### "Erreur réseau" ou "Service indisponible"
→ Vérifier que `api.lautram.com` (ou votre URL backend) est accessible depuis le serveur Dolibarr. Tester avec `curl https://api.lautram.com/api/health`.

### "Quota dépassé"
→ Le quota mensuel est atteint. Contacter lautram.com pour passer à un plan supérieur.

### Lignes générées avec prix = 0 et badge "Incomplet"
→ Normal quand le produit n'est pas dans le catalogue. Renseigner le prix manuellement dans la prévisualisation avant de confirmer.

### Le bouton "Générer via IA" n'apparaît pas sur la fiche devis
→ Vérifier que le devis est en statut **Brouillon** (pas validé ou annulé).
→ Vérifier que l'utilisateur a le droit `notetoquote/generate`.
→ Vider le cache Dolibarr (Configuration → Purger les caches).
