# 🚀 Guide de Test Rapide - Interface Odentas Sign ## ⚡ DĂ©marrage rapide (2 minutes) ### 1. PrĂ©requis ```bash # VĂ©rifier que Next.js tourne npm run dev # Dans un autre terminal, crĂ©er une demande de test node test-odentas-sign.js ``` ### 2. Ouvrir l'interface ```bash # Script interactif pour tester facilement ./test-interface-signature.sh # Choisir option 1 ou 2 pour ouvrir dans le navigateur ``` ### 3. Flow de test complet #### 🔐 Étape 1 : VĂ©rification OTP 1. Sur la page `/signer/[requestId]/[signerId]` 2. Cliquer sur **"Recevoir le code"** 3. ⚠ **Important** : L'OTP s'affiche dans les **logs du serveur Next.js** 4. Chercher dans le terminal : ``` ⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐ MODE TEST - Code OTP Email: renaud.breviere@gmail.com Code: 123456 Valide pendant 15 minutes ⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐ ``` 5. Copier le code Ă  6 chiffres 6. Le coller dans l'interface (auto-focus + auto-submit) 7. ✅ Validation automatique → Passage Ă  l'Ă©tape signature #### ✍ Étape 2 : Signature 1. Dessiner votre signature dans le canvas (souris/trackpad/doigt) 2. Si pas satisfait : cliquer **"Recommencer"** 3. Cocher la case de consentement 4. Cliquer **"Valider ma signature"** 5. ✅ Signature enregistrĂ©e → Passage Ă  la confirmation #### 🎉 Étape 3 : Confirmation 1. Animation de confetti 🎊 2. Voir les dĂ©tails : date, rĂ©fĂ©rence, progression 3. Tester avec les 2 signataires : - Employeur (paie@odentas.fr) - SalariĂ© (renaud.breviere@gmail.com) 4. Quand les 2 ont signĂ© → Message "Document finalisĂ©" ## 📊 VĂ©rifier les donnĂ©es ### Dans le script interactif ```bash ./test-interface-signature.sh # Choisir option 5 : VĂ©rifier le statut ``` Affiche: - Qui a signĂ© - Date de signature - Progression (X/Y) ### En base de donnĂ©es (Supabase) ```sql -- Voir les Ă©vĂ©nements rĂ©cents SELECT event_type, created_at, metadata FROM sign_events ORDER BY created_at DESC LIMIT 20; -- Voir le statut des signataires SELECT name, role, has_signed, signed_at FROM signers WHERE request_id = ''; ``` ### En S3 ```bash # Lister les signatures uploadĂ©es aws s3 ls s3://odentas-sign/signatures/TEST-*/ # Exemple de rĂ©sultat # 2025-01-23 15:30:45 12345 95c4ccdc-1a26-4426-a56f-653758159b54.png # 2025-01-23 15:32:12 13456 d481f070-2ac6-4f82-aff3-862783904d5d.png ``` ## đŸ§Ș ScĂ©narios de test ### ✅ Happy Path 1. Employeur reçoit OTP → Valide → Signe → OK 2. SalariĂ© reçoit OTP → Valide → Signe → OK 3. Document finalisĂ© → Tous les 2 voient "Document finalisĂ©" ### ❌ Cas d'erreur #### OTP invalide (3 tentatives max) ``` 1. Entrer "000000" → Erreur + "2 tentatives restantes" 2. Entrer "111111" → Erreur + "1 tentative restante" 3. Entrer "222222" → Erreur + "0 tentative restante" + Blocage ``` #### OTP expirĂ© (15 minutes) ``` 1. Recevoir OTP 2. Attendre 15+ minutes 3. Essayer de valider → Erreur "Code expirĂ©" 4. Cliquer "Renvoyer le code" ``` #### Signature vide ``` 1. Ne rien dessiner 2. Essayer de cocher le consentement → Bouton dĂ©sactivĂ© 3. Le bouton reste grisĂ© tant que canvas vide ``` #### Session expirĂ©e (30 minutes) ``` 1. Valider OTP 2. Attendre 30+ minutes sur page signature 3. Essayer de signer → Erreur 401 "Session expirĂ©e" 4. Retour automatique Ă  l'Ă©tape OTP ``` ## đŸ“± Test Mobile ### iOS Safari ``` 1. Ouvrir Safari sur iPhone 2. Aller sur l'URL de signature 3. Tester le canvas tactile (doigt) 4. VĂ©rifier keyboard mobile pour OTP 5. VĂ©rifier animations fluides ``` ### Android Chrome ``` 1. Ouvrir Chrome sur Android 2. MĂȘme flow que iOS 3. Tester rotation Ă©cran 4. VĂ©rifier zoom/pinch disabled sur canvas ``` ## 🐛 ProblĂšmes frĂ©quents ### "Cannot find module" Ă  l'import **Solution:** ```bash # RedĂ©marrer le serveur Next.js npm run dev ``` ### OTP n'apparaĂźt pas dans les logs **VĂ©rifier:** 1. Ref commence bien par `TEST-` 2. Le serveur dev tourne (`npm run dev`) 3. Chercher les Ă©toiles ⭐ dans les logs ### Canvas ne dessine pas **VĂ©rifier:** 1. Browser moderne (Chrome 90+, Safari 14+) 2. JavaScript activĂ© 3. Console browser pour erreurs ### Signature ne s'upload pas **VĂ©rifier:** 1. Session token valide (pas expirĂ©) 2. Canvas a bien du contenu 3. Checkbox consentement cochĂ©e 4. Network tab pour voir erreur API ## 🎹 Personnalisation ### Changer les emails de test Éditer `test-odentas-sign.js`: ```javascript const signers = [ { name: "Votre Nom", email: "votre@email.com", role: "Employeur", // ... }, // ... ]; ``` ### Changer le document PDF ```javascript const localPdfPath = './votre-fichier.pdf'; ``` ### DĂ©sactiver le mode test Dans la crĂ©ation de request, enlever le prĂ©fixe `TEST-`: ```javascript ref: `SIGN-${Date.now()}`, // Au lieu de TEST- ``` ⚠ Attention : En mode production, OTP sera envoyĂ© par email SES ! ## 📈 Monitoring ### MĂ©triques Ă  surveiller - ⏱ **Temps moyen de signature** : OTP reçu → Signature validĂ©e - 📧 **Taux de succĂšs OTP** : Validations / Envois - ✍ **Taux de complĂ©tion** : Signatures finalisĂ©es / Créées - 🔄 **Retry rate** : Nombre de "Recommencer" sur canvas ### Logs Ă  analyser ```bash # Grep des Ă©vĂ©nements OTP grep "otp_verified" logs/app.log # Grep des signatures complĂštes grep "request_completed" logs/app.log # Erreurs grep "ERROR" logs/app.log | grep "odentas-sign" ``` ## ✅ Checklist avant dĂ©mo - [ ] Serveur Next.js lancĂ© (`npm run dev`) - [ ] Demande de test créée (`node test-odentas-sign.js`) - [ ] Script interactif testĂ© (`./test-interface-signature.sh`) - [ ] Flow complet testĂ© (OTP → Signature → Confirmation) - [ ] Les 2 signataires ont signĂ© - [ ] Progression affiche 2/2 - [ ] Confetti s'affiche - [ ] Base de donnĂ©es vĂ©rifiĂ©e (events + signers) - [ ] S3 vĂ©rifiĂ© (2 PNG dans signatures/) ## 🎯 Next Steps Une fois l'interface validĂ©e : 1. **IntĂ©grer PDF Viewer** → Voir `ODENTAS_SIGN_INTERFACE.md` 2. **Activer vraie signature PAdES** → Retirer test mode bypass 3. **CrĂ©er emails de notification** → Templates + triggers 4. **Tests de charge** → Artillery, k6 5. **Migration DocuSeal** → Plan progressif --- **Bon test ! 🚀** Si problĂšme : renaud.breviere@gmail.com