Un workflow HubSpot ne peut pas envoyer de codes à usage unique. L’action Send WhatsApp Template de Flowella ne peut pas attribuer une valeur différente à un bouton OTP ou de copie de code pour chaque contact, et HubSpot ne doit pas conserver les codes. Envoyez plutôt les codes depuis votre application avec l’API.
En bref
Fonctionnement
Le diagramme montre une tentative de connexion, de la demande de code jusqu’à la connexion ou au verrouillage.Avant de commencer
- Créez une clé API. Consultez Clés API. Ce point de terminaison n’accepte que les clés API, pas les jetons d’accès OAuth.
- Recueillez le numéro WhatsApp de chaque client au format international, par exemple
+447700900123, ainsi que son accord pour recevoir des codes sur WhatsApp. Consultez les recommandations de Meta sur l’opt-in. - Lisez l’introduction à l’API pour l’authentification, les erreurs et les limites de débit.
Créer le modèle
Créez le modèle dans le WhatsApp Manager de Meta, avec la catégorie Authentication et un bouton de copie de code. Seuls les modèles d’authentification peuvent contenir un code à usage unique, et ils nécessitent un bouton de copie de code ou un bouton à appui unique. Meta impose la formulation : “<code> is your verification code.” Vous pouvez ajouter un rappel de ne pas partager le code et une ligne d’expiration de 1 à 90 minutes.
Les URL, les médias et les emojis ne sont pas autorisés, et le code peut comporter jusqu’à 15 caractères. Une fois que Meta a approuvé le modèle, il apparaît dans Flowella. Consultez les règles de catégorisation des modèles de Meta et la page sur les modèles d’authentification avec copie de code.
Si vous écrivez aussi aux clients au sujet d’un verrouillage, utilisez un modèle Utility distinct, par exemple Hi {{1}}, we have paused sign-in to your account after several incorrect codes. Try again in 30 minutes or contact our support team. Une alerte de sécurité du compte sans promotion relève de la catégorie Utility.
Envoyer un code
1
Trouver le modèle et le canal
Appelez
GET /v1/templates?status=APPROVED. Notez l’id et le wabaId de votre modèle, ainsi que le whatsappChannelId du numéro depuis lequel vous envoyez. Consultez Multi-canal si vous avez plusieurs numéros.2
Créer le code dans votre application
Générez un code aléatoire de 15 caractères au maximum. Stockez-en un hachage avec une courte expiration, et marquez-le comme à usage unique.
3
Envoyer la requête
Insérez le code deux fois : une fois comme paramètre du corps et une fois comme valeur du bouton de copie de code. Le format d’envoi de Meta traite le bouton de copie de code comme un bouton URL : utilisez donc Une réponse
subType url, avec index 0 pour le premier bouton.202 avec "status": "accepted" signifie que Flowella a mis l’envoi en file d’attente. Elle ne confirme pas la distribution.4
Vérifier le code
Lorsque le client saisit le code, comparez-le au hachage stocké. Acceptez-le une seule fois, et uniquement avant son expiration.
5
Gérer les renvois et le verrouillage
Envoyez un nouveau code à chaque tentative et invalidez l’ancien. Attendez au moins 15 secondes avant un renvoi : Flowella ignore un second envoi du même modèle au même numéro dans un délai de 15 secondes. Limitez le nombre de tentatives, puis verrouillez la connexion pendant une durée définie et proposez le support.
6
Enregistrer le résultat dans HubSpot (facultatif)
Faites mettre à jour le contact HubSpot par votre application via l’API de HubSpot, par exemple Last WhatsApp verification (sélecteur de date et d’heure) et Last verification result (liste déroulante : Passed, Failed, Locked). Un workflow HubSpot peut ensuite créer une tâche lorsque le résultat est Locked. Ne stockez jamais de codes dans HubSpot.
Tester l’intégration
- Envoyez un code à votre propre numéro WhatsApp et vérifiez que le bouton de copie de code le copie bien.
- Saisissez un code erroné, puis demandez un renvoi après le délai d’attente, et vérifiez que l’ancien code ne fonctionne plus.
- Suivez la distribution avec les événements webhook
message.deliveredetmessage.failed. Consultez Webhooks.
Dépannage
Pages associées
- Introduction à l’API : authentification, idempotence, erreurs et limites de débit.
- Référence des modèles : catégories de modèles et types de boutons.
- Webhooks : recevez les événements de distribution de Flowella.

