https://d226lax1qjow5r.cloudfront.net/blog/blogposts/using-whatsapp-product-messages-with-the-vonage-messages-api/whatsapp-product-messages.png

Utilisation de WhatsApp Product Messages avec l'API Messages de Vonage

Publié le April 5, 2023

Temps de lecture : 12 minutes

Introduction

L'API Vonage Messages API de Vonage s'intègre aux SMS, aux MMS et aux applications de clavardage social les plus populaires, ce qui vous permet de communiquer avec vos clients sur le canal qu'ils préfèrent. Ceci, associé à de riches fonctions et à des résultats instantanés, permet une expérience de clavardage attrayante et rentable.

Récemment, nous avons apporté quelques améliorations à la plateforme de communication WhatsApp en ajoutant la prise en charge de Messages sur les produits WhatsApp. Ils permettent à une entreprise de présenter ses produits et services, et aux clients de parcourir et d'ajouter des produits à leur panier sans quitter la conversation WhatsApp.

Dans ce tutoriel, nous allons procéder étape par étape à la configuration de WhatsApp Product Messages avec l'API Messages de Vonage.

Conditions préalables

Avant de commencer, assurez-vous que les comptes suivants sont activés et que les outils sont installés :

  • A Compte de développeur Vonage - Si vous n'en avez pas, vous pouvez en créer un et nous vous donnerons un crédit gratuit pour jouer avec nos API.

  • A Compte Meta Commerce - Vous devez disposer des autorisations nécessaires pour ajouter un catalogue de produits à ce compte.

  • ngrok - Un Account gratuit est nécessaire. Cet outil permet aux développeurs d'exposer un serveur de développement local à l'Internet.

Ajouter des produits au catalogue

Pour présenter nos produits aux clients, nous avons besoin d'un endroit où stocker les métadonnées, y compris le titre, la catégorie, le prix, etc. ainsi qu'une image. Meta vous permet de conserver toutes ces informations sur ses serveurs grâce à l'outil Meta Commerce Manager page.

Créez un Account si vous ne l'avez pas encore fait et naviguez jusqu'à la section Meta Commerce Manager et cliquez sur Ajouter un catalogue.

Add a Catalogadd-catalog.png

Vous devez spécifier votre Type de catalogue. Sélectionnez E-commerce et appuyez sur Suivant.

Ensuite, nous avons deux options pour télécharger les données de nos produits. Nous pouvons choisir d'ajouter notre produit manuellement ou utiliser une plateforme partenaire. Nous choisirons Télécharger les informations sur le produitnous laisserons les autres éléments tels quels et nous appuierons sur Créer.

Configure settingsconfigure-settings.png

Vous avez maintenant un nouveau catalogue, et si vous cliquez sur Articlesvous verrez que vous n'en avez pas. Chargeons quelques articles en appuyant sur la touche Ajouter des articles en appuyant sur le bouton Ajouter des éléments.

Add a itemadd-items.png

Nous ajouterons des articles en les téléchargeant manuellement dans notre catalogue.

Sélectionner Manuelpuis Suivant pour continuer. pour continuer.

Add a item manuallyadd-items-manually.png

Ici, nous devrons fournir des informations pour les champs suivants : Titre, Description, Prix, Lien du site web, Prix, Prix de vente, Facebook Catégorie de produit, Condition, Disponibilité et statut. Vous aurez également besoin d'une image du produit. Allez-y et ajoutez quelques articles.

Add a item manually - beforebefore-add-items.png

Dans mon cas, je crée un magasin de pizzas, j'ai donc ajouté quelques pizzas et une boisson, comme indiqué ci-dessous.

Add a item manually - afterafter-add-items.png

Avant de poursuivre, veuillez vous assurer que tous les éléments s'affichent sans erreur.

Copier l ID de contenu de vos éléments (de la capture d'écran précédente), car nous en aurons besoin plus tard. Nous aurons également besoin de l'identifiant identifiant_catalogueque vous trouverez dans le champ catalogue page.

Notez que la documentation de Vonage fait référence au ID de contenu comme product_retailer_id.

Si vous souhaitez obtenir plus de détails sur les catalogues, veuillez consulter la Meta Documentation.

Informations sur le WhatsApp Business Account et sur l'utilisation des catalogues

Pour inclure des articles dans les messages sur les produits envoyés à partir d'un numéro associé à votre WhatsApp Business Account (WABA), la fonction Catalogue contenant ces articles doit être lié à votre WABA.

Il existe principalement deux façons de relier votre WhatsApp Business Account à votre catalogue.

  1. Owned Account - est créé par le biais du processus d'inscription intégré (via le tableau de bord Vonage).

  2. Managed Account - est créé pour vous par une entreprise partenaire telle que Vonage. Pour connecter un Catalogue à un Managed Account, vous devez affecter l'entreprise partenaire (telle que Vonage) au Catalogue.

Nous utiliserons un Owned Account pour cet exemple, mais la documentation sur la connexion d'un compte géré est disponible ici.

Acheter un numéro virtuel

Avant de créer un Owned Accountnous devons acheter un numéro de téléphone virtuel que nous pourrons utiliser pour notre entreprise Pizza.

Pour en acheter un, ouvrez une session dans le tableau de bord Vonageet allez à Numbers > Acheter des Numberset recherchez celui qui répond à vos besoins.

Adding a number to the applicationbuy-numbers.png

Vous voudrez bien noter le numéro que vous avez acheté, car nous l'utiliserons dans la partie suivante de l'installation.

Mise en place d'un compte d'entreprise WhatsApp propre

Connectez-vous au tableau de bord VonageAllez à External Account (compte externe) et cliquez sur l'icône WhatsApp Social Channel pour commencer.

Social channelswhatsapp-social-channels.png

Un écran de configuration s'affiche et vous devez appuyer sur Continuer avec Metacomme indiqué ci-dessous.

Vonage Setup screenwhatsapp-vonage-setup.png

Ensuite, vous devez compléter votre Meta Business Account et associer votre compte professionnel et votre profil WhatsApp.

Setup processsetupprocess.gif

Une fois l'opération terminée, vous verrez apparaître une fenêtre contextuelle qui vous donnera quelques conseils utiles sur la façon d'obtenir une utilisation sans restriction de votre numéro WhatsApp. Suivant. Vous devrez sélectionner le numéro de téléphone que vous souhaitez utiliser et la clé API vers laquelle le trafic des messages WhatsApp ira. Vous pouvez laisser l'hébergement préféré à WhatsApp. Appuyez sur Obtenir mon numéro WhatsApp en direct pour continuer.

Associate a number with Vonageassociate-number-with-vonage.png

Vous devriez voir votre compte WhatsApp connecté dans la section Comptes externes dans le tableau de bord de Vonage.

Your connected social channelsconnected-wa-account.png

Connecter le catalogue à WhatsApp

Rendez-vous sur votre Compte Meta Commerce et naviguez jusqu'à Paramètres de l'entreprise, Comptes WhatsApppuis Gestionnaire WhatsAppcomme indiqué ci-dessous.

WhatsApp Accounts Settingswa-accounts.png

Aller à Outils Account, Cataloguepuis Choisir un catalogue

WhatsApp Manager - Choose a catalogwa-manager.png

Vous avez maintenant la possibilité de connecter un catalogue. Sélectionnez celui que nous avons créé plus tôt, appelé Catalogue_produits.

WhatsApp Manager - Connect a catalogconnect-catalog.png

Accédez à vos Méta Paramètres de l'entreprisecliquez sur Sources de donnéespuis sur Catalogueset entrez Vonage en tant que partenaire à l'aide d'un ID d'entreprise. L'ID est 2290848174274168. Contact Support Vonagequi s'occupera d'approuver la demande de partenariat et de connecter le catalogue.

WhatsApp Manager - Partnerspartners.png

Créer une application Vonage compatible avec les messages

Pour interagir avec l'API Messages, nous devons créer une application API Vonage pour authentifier nos demandes. Considérez les applications plutôt comme des conteneurs et des métadonnées pour regrouper toutes vos données sur la plateforme Vonage. Nous allons créer une application à l'aide du tableau de bord de l'API de Vonage.

Indiquez un nom (tel que "WhatsAppProductMessage") et cliquez sur Générer une clé publique et une clé privée. Il vous sera demandé d'enregistrer un fichier clé sur le disque - la clé privée. Il est généralement conseillé de le conserver dans le dossier de votre projet, car vous en aurez besoin plus tard. Nous utiliserons la clé privée pour générer un jeton Web JSON (JWT) plus tard.

Les applications fonctionnent selon un système de clés publiques/privées. Ainsi, lorsque vous créez une application, une clé publique est générée et conservée par Vonage. Une clé privée est générée, n'est pas conservée par Vonage et vous est renvoyée lors de la création de l'application.

Ensuite, vous devez activer la fonction Messages et fournir une URL entrante entrante et une URL d'état. C'est typiquement là que vous voudrez utiliser quelque chose comme ngrok pour rediriger le port 4040. Vous pouvez le faire à partir d'un terminal ou d'une invite de commande en entrant ngrok http 4040. Vous disposerez alors d'une adresse de redirection que vous pourrez saisir dans les champs Entrant et d'état et de l'état.

Ngrok runningngrok-running.png

Lorsqu'un message parvient à l Messages APIles données le concernant sont envoyées à l URL entrante. Lorsque vous envoyez un message à l'aide de l'API, les données relatives à l'état du message sont envoyées à l URL d'état.

Enfin, une fois qu'il est créé, allez à Lier les canaux sociauxsélectionnez le numéro WhatsApp créé précédemment et appuyez sur Lier.

Linking a numberlink-wa-account.png

Créer un jeton JWT

Le JSON Web Token (JWT) définit un moyen compact et autonome de transmettre en toute sécurité des informations entre des parties sous la forme d'un objet JSON. Ces informations peuvent être vérifiées et faire l'objet d'une confiance car elles sont signées numériquement. Pour des raisons de sécurité, il est recommandé d'utiliser un jeton JWT lorsque vous travaillez avec l'API Messages et d'autres produits Vonage.

Nous avons créé un site où vous pouvez créer un jeton en quelques étapes seulement. Cliquez ici et ajoutez votre clé privée ainsi que votre ID de l'application. Vous devez ensuite préciser la durée de validité du jeton. Sélectionnez trois jours, et votre jeton JWT est disponible. Copiez-le dans un endroit sûr pour l'instant. Il convient également de noter que Vonage dispose de plusieurs SDK serveur qui peuvent créer des JWT pour nos produits.

JWT Generatorjwt-generator.png

Configurer les modèles de messages

Gardez à l'esprit qu'un message produit ne peut pas être utilisé pour initier une conversation WhatsApp. Il ne peut être envoyé que dans le cadre d'une conversation existante qui a été lancée soit par le client envoyant un message à l'entreprise, soit par l'entreprise envoyant un modèle de message au client. Dans cet exemple, nous enverrons un message type au client en utilisant WhatsApp Manager. Une fois connecté, sélectionnez Outils Accountpuis Modèle de message.

WhatsApp Manager - Message Templateswa-message-templates.png

Sélectionner Créer un modèle de message. Sous Catégorie, sélectionnez Utilitaire. Donnez-lui le nom de exemple_message_utilitaire et choisissez la langue de votre choix. Une fois le message terminé, appuyez sur Continuer.

WhatsApp Manager - New Message Templateutility-message.png

Fournir un corps tel que "Bienvenue à l'épicerie de Michael ! N'hésitez pas à naviguer", puis cliquez sur le bouton Soumettre pour l'envoyer. Vous verrez l'écran suivant ; il faut un certain temps avant que Meta ne l'approuve. (Lors de la rédaction de cet article, il a fallu près de 10 heures pour obtenir l'approbation de Meta).

WhatsApp Manager - Message Template Statusmessage-template-status.png

Test de l'application

Une fois que votre modèle de message a été approuvé, enregistrez les trois scripts ci-dessous pour tester l'application en apportant uniquement les modifications suivantes.

  • Remplacer ADD_YOUR_JWT_TOKEN par celui créé à l'étape précédente.

  • Remplacer AJOUTER_VOTRE_NUMÉRO_VONAGE par le numéro Vonage que vous avez acheté précédemment.

  • Remplacer AJOUTER_VOTRE_NUMÉRO_DE_DESTINATION par un numéro que vous pouvez joindre.

template.sh - Exécutez cette commande après que votre modèle de message a été approuvé par Meta.

curl --location 'https://api.nexmo.com/v1/messages' \ --header 'Authorization: Bearer ADD_YOUR_JWT_TOKEN' \ --header 'Content-Type: application/json' \ --data '{ "message_type": "template", "template": { "name": "sample_utility_message" }, "from":"ADD_YOUR_VONAGE_NUMBER", "to":"ADD_YOUR_DESTINATION_NUMBER", "channel": "whatsapp", "whatsapp": { "policy": "deterministic", "locale": "en_US" } }'

single.sh - Exécutez ce fichier après avoir reçu le message et y avoir réagi. Vous devez également ajouter l'élément catalog_id et product_retailer_id pour afficher un seul message.

curl --location 'https://api.nexmo.com/v1/messages' \ --header 'Authorization: Bearer ADD_YOUR_JWT_TOKEN' \ --header 'Content-Type: application/json' \ --data '{ "from":"ADD_YOUR_VONAGE_NUMBER", "to":"ADD_YOUR_DESTINATION_NUMBER", "channel": "whatsapp", "message_type": "custom", "custom": { "type": "interactive", "interactive": { "type": "product", "body": { "text": "New products from Michaels Grocery Store" }, "footer": { "text": "Thanks for shopping with us." }, "action": { "catalog_id": "166239142936236", "product_retailer_id": "p1di9amxxj" } } } }'

multiple.sh - Exécutez cette commande à tout moment après la réception du modèle initial. Vous devez également ajouter le paramètre catalog_id et product_retailer_id pour afficher plusieurs messages.

curl --location 'https://api.nexmo.com/v1/messages' \ --header 'Authorization: Bearer ADD_YOUR_JWT_TOKEN' \ --header 'Content-Type: application/json' \ --data '{ "from":"ADD_YOUR_VONAGE_NUMBER", "to":"ADD_YOUR_DESTINATION_NUMBER", "channel": "whatsapp", "message_type": "custom", "custom": { "type": "interactive", "interactive": { "type": "product_list", "header": { "type": "text", "text": "Movie Night Food" }, "body": { "text": "New products from Michaels Grocery Store" }, "footer": { "text": "Thanks for shopping with us." }, "action": { "catalog_id": "166239142936236", "sections": [ { "title": "Pizza Choices", "product_items": [ { "product_retailer_id": "p1di9amxxj" }, { "product_retailer_id": "es2knk1593" }, { "product_retailer_id": "l3sgic2vmv" } ] } ] } } } }'

Afficher les résultats dans WhatsApp

Après avoir envoyé le fichier template.sh et le fichier single.shvous verrez une conversation initiée par l'entreprise ne montrant que le Cola.

WhatsApp Message sent to the customeriphone1.png

En cliquant sur Vuevous aurez la possibilité de Ajouter au panier ou de Envoyer un message à l'entreprise. Nous allons ajouter le Cola au panier et nous pouvons maintenant renvoyer cette demande de commande à l'entreprise.

WhatsApp Message sent to the customer and added to the cartiphone2.png

Pour les produits multiples, exécutez le fichier multiple.sh et vous verrez ce qui suit. Nous pouvons également ajouter plusieurs articles au panier, comme indiqué ci-dessous.

WhatsApp Message sent to the customeriphone3.png

WhatsApp Message sent to the customeriphone4.png

Synthèse

Maintenant que vous avez vu comment utiliser WhatsApp Product Message, il est temps de créer le vôtre ! Vous pouvez étendre ce projet en utilisant un processeur de paiement pour accepter automatiquement les paiements sans aucune intervention de l'utilisateur. N'oubliez pas non plus de vous référer à la section Messages de produits WhatsApp pour plus d'informations.

Si vous avez des questions ou des commentaires, rejoignez-nous sur le Slack des développeurs de Vonage ou envoyez-moi un Tweet sur Twitteret je vous répondrai. Merci encore d'avoir lu, et je vous donne rendez-vous au prochain numéro !

Partager:

https://a.storyblok.com/f/270183/400x400/7cdff37c0e/michael-crump.png
Michael CrumpGestionnaire, expériences des développeurs

Michael Crump travaille chez Vonage au sein de l'équipe Developer Experiences. C'est un codeur, un YouTuber et un conférencier qui aborde fréquemment divers sujets liés à .NET et au développement des communications et de l'informatique en nuage. Il se passionne pour aider les développeurs à comprendre les avantages de chacun d'entre eux de manière simple.