espace-paie-odentas/ACTIONS_A_FAIRE.md

229 lines
5.7 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🎯 Actions à effectuer - Migration Email Signature Salarié
## ✅ Ce qui est DÉJÀ fait dans le code
- ✅ Route API créée : `app/api/emails/signature-salarie/route.ts`
- ✅ Type d'email ajouté au système universel v2
- ✅ Configuration du template email
- ✅ Code Lambda modifié (fichier fourni)
- ✅ Documentation complète
---
## 🔧 Ce que VOUS devez faire
### 1⃣ Générer une API Key sécurisée
```bash
# Exécuter cette commande pour générer une clé aléatoire
openssl rand -hex 32
```
**Exemple de résultat :**
```
a7f3d8c2b1e9f4a6d8c3b2e1f5a9d7c4b8e2f6a3d9c5b7e4f1a8d6c3b9e5f2a7
```
⚠️ **Sauvegardez cette clé dans un endroit sûr** (vous en aurez besoin 2 fois)
---
### 2⃣ Ajouter la clé dans l'Espace Paie (Local)
```bash
# Dans le terminal, depuis le dossier du projet
echo "LAMBDA_API_KEY=<collez_votre_clé_ici>" >> .env.local
```
**Exemple :**
```bash
echo "LAMBDA_API_KEY=a7f3d8c2b1e9f4a6d8c3b2e1f5a9d7c4b8e2f6a3d9c5b7e4f1a8d6c3b9e5f2a7" >> .env.local
```
---
### 3⃣ Ajouter la clé sur Vercel (Production)
#### Option A : Via interface Vercel
1. Aller sur https://vercel.com/votre-projet
2. Settings → Environment Variables
3. Ajouter une nouvelle variable :
- **Name** : `LAMBDA_API_KEY`
- **Value** : `<collez_votre_clé>`
- **Environments** : Cocher Production, Preview, Development
4. Cliquer sur "Save"
#### Option B : Via CLI Vercel
```bash
# Installer Vercel CLI si nécessaire
npm i -g vercel
# Se connecter
vercel login
# Ajouter la variable
vercel env add LAMBDA_API_KEY
# Coller la clé quand demandé
# Sélectionner : Production, Preview, Development
```
#### Redéployer
```bash
vercel --prod
```
---
### 4⃣ Configurer AWS Lambda
#### Via AWS Console
1. Aller sur https://console.aws.amazon.com/lambda/
2. Région : **eu-west-3** (Paris)
3. Trouver la fonction : **postDocuSealSalarie**
4. Onglet **Configuration****Environment variables**
5. Cliquer sur **Edit**
#### Ajouter ces 2 variables :
| Key | Value | Description |
|-----|-------|-------------|
| `ESPACE_PAIE_URL` | `https://paie.odentas.fr` | URL de l'Espace Paie (production) |
| `ESPACE_PAIE_API_KEY` | `<votre_clé_générée>` | **La même clé qu'à l'étape 1** |
6. Cliquer sur **Save**
#### (Optionnel) Supprimer les anciennes variables
Ces variables ne sont plus utilisées, vous pouvez les supprimer :
- `AWS_SES_FROM`
- `S3_BUCKET_NAME_EMAILS`
- `AIRTABLE_API_KEY`
---
### 5⃣ Mettre à jour le code de la Lambda
1. Toujours dans AWS Lambda → **postDocuSealSalarie**
2. Onglet **Code**
3. Ouvrir le fichier `index.js`
4. **Remplacer tout le contenu** par le code du fichier `LAMBDA_SIGNATURE_SALARIE_UPDATED.js` (fourni dans ce projet)
5. Cliquer sur **Deploy**
---
### 6⃣ Tester
#### Test 1 : Vérifier que l'API répond
```bash
# Depuis votre terminal local
curl -X POST https://paie.odentas.fr/api/emails/signature-salarie \
-H "X-API-Key: <votre_clé>" \
-H "Content-Type: application/json" \
-d '{
"employeeEmail": "votre-email@example.com",
"signatureLink": "https://test.com",
"reference": "TEST-001",
"organizationName": "Test",
"firstName": "Test",
"matricule": "TEST001"
}'
```
**Réponse attendue :**
```json
{
"success": true,
"messageId": "01000192abc...",
"recipient": "votre-email@example.com",
"reference": "TEST-001"
}
```
**Si erreur 401** : Vérifiez que la clé API est correcte
#### Test 2 : Déclencher un vrai webhook
1. Faire signer un contrat par l'employeur dans DocuSeal
2. Observer les logs Lambda dans CloudWatch
3. Vérifier l'email reçu par le salarié
4. Vérifier dans l'interface : `/staff/email-logs`
---
### 7⃣ Vérifier les logs
#### Dans AWS CloudWatch
1. AWS Console → CloudWatch → Log groups
2. Chercher : `/aws/lambda/postDocuSealSalarie`
3. Logs à chercher :
```
📤 Appel de l'API Espace Paie pour envoi email...
✅ E-mail envoyé via l'API Espace Paie
```
#### Dans l'Espace Paie
1. Aller sur : `https://paie.odentas.fr/staff/email-logs`
2. Filtrer par type : **signature-request-salarie**
3. Vérifier le statut : **sent**
4. Cliquer sur une ligne pour voir le contenu HTML
---
## 🎉 C'est terminé !
Si tout est OK :
- ✅ Les emails de signature sont envoyés via le système universel v2
- ✅ Tous les emails sont loggés dans la base de données
- ✅ Vous pouvez voir les logs dans l'interface Staff
- ✅ Le template est cohérent avec les autres emails
---
## 🆘 En cas de problème
### Erreur 401 "Unauthorized"
➡️ **Solution** : Vérifiez que `LAMBDA_API_KEY` (Espace Paie) et `ESPACE_PAIE_API_KEY` (Lambda) ont exactement la même valeur.
### Erreur 500 "Configuration Error"
➡️ **Solution** : La variable `LAMBDA_API_KEY` n'est pas définie sur Vercel. Vérifiez l'étape 3.
### Lambda : Erreur "ESPACE_PAIE_URL is not defined"
➡️ **Solution** : Les variables d'environnement ne sont pas configurées dans Lambda. Vérifiez l'étape 4.
### Email non reçu
➡️ **Solutions** :
1. Vérifier CloudWatch logs pour voir si l'API a été appelée
2. Vérifier dans `/staff/email-logs` si l'email apparaît
3. Vérifier les credentials AWS SES (normalement OK si les autres emails fonctionnent)
4. Vérifier que l'email du salarié est valide
### L'API ne répond pas
➡️ **Solutions** :
1. Vérifier que l'Espace Paie est déployé sur Vercel
2. Vérifier que la route existe : `app/api/emails/signature-salarie/route.ts`
3. Regarder les logs Vercel
---
## 📞 Support
- **Documentation complète** : `LAMBDA_EMAIL_SIGNATURE_SALARIE_GUIDE.md`
- **Résumé des changements** : `LAMBDA_EMAIL_SIGNATURE_SALARIE_SUMMARY.md`
- **Code Lambda mis à jour** : `LAMBDA_SIGNATURE_SALARIE_UPDATED.js`
---
*Bonne chance ! 🚀*