espace-paie-odentas/ACTIONS_A_FAIRE.md

5.7 KiB
Raw Blame History

🎯 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

# 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)

# Dans le terminal, depuis le dossier du projet
echo "LAMBDA_API_KEY=<collez_votre_clé_ici>" >> .env.local

Exemple :

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

# 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

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 ConfigurationEnvironment 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
  1. 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

# 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 :

{
  "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 ! 🚀