Envoyer des invitations avec les Business Generated Links

Cette fonctionnalité nécessite d'avoir le module complémentaire Privacy, qui peut être acheté en supplément du pack Enterprise.

Ce guide est destiné aux développeurs qui souhaitent créer des Business Generated Links. Lisez cet article pour découvrir comment générer des liens chiffrés en utilisant le langage de programmation de votre choix.

IMPORTANT

La méthode d'invitation « Business Generated Links » n'est disponible que pour les nouveaux clients Business de Trustpilot dans des secteurs spécifiques.

Trustpilot a regroupé des ressources au sujet du chiffrement authentifié (authenticated encryption) sur Githup pour vous aider à démarrer. Vous pouvez les consulter ici.

Guide pour tous les langages de programmation

Les Business Generated Links utilisent la suite de chiffrement AEAD (Authenticated Encryption with Associated Data) et une approche appelée Encrypt then MAC (EtM). Trustpilot utilise une clé pour chiffrer le payload (encryptkey) et une autre clé pour le MAC part (authkey) afin d'assurer l'intégrité des données.

Sur Trustpilot Business, allez à Collecter des avis > Inviter des clients > Business Generated Links pour trouver les deux clés.

Créer des Business Generated Links

  1. Les clés copiées depuis votre compte Trustpilot Business sont affichées au format base64-encoded. Donc, la première chose que votre application doit faire est un base64-decode des clés.
  2. Créez l'objet payload au format JSON et insérez les informations clients. Les champs suivants sont obligatoires : e-mail, nom et référence (numéro de référence). Voici un exemple :
    {
      "email":"xyz@domaine.fr",
      "name":"Jean Dupont",
      "ref":"1234",
      "skus":["sku1","sku2","sku3"],
      "tags":["tag1","tag2","tag3"]
        }

    Les balises ne doivent contenir aucun espace.

  3. Chiffrez le payload pour vous assurer qu'il ne puisse pas être lu par des tiers. Chiffrez avec AES-CBC avec une taille de clé de 256 bits, une taille de bloc de 128 bits et le PKCS7 padding mode
    • Générez un Initialization Vector (IV) en fonction de la taille du bloc (128 bits)
    • Chiffrez le JSON avec l'encryptkey et l'IV
    • Créez une signature pour le ciphertext.
    • Pour cela, nous utilisons HMAC-SHA256 et l'authkey. Déterminez le HMAC en hachant l'IV suivi du ciphertext. Voici un exemple : HMAC = HMAC-SHA256( IV + ciphertext )
  4. Exécutez maintenant l'opération base64-encode sur le vecteur IV + ciphertext + HMAC. Comme ceci : base64_payload = base64( IV + ciphertext + HMAC )
  5. Enfin, étant donné que base64 inclut les caractères barre oblique (/) et le plus (+), il est nécessaire de URL-encode le payload au-dessus avant de l’ajouter au lien final.
  6. Le lien final devrait ressembler à ceci :
      payload = urlencode( base64_payload )
      https://www.trustpilot.com/evaluate-bgl/<domain>?p=<payload>
    
  7. Remplacez le domaine avec votre nom de domaine et le payload avec le payload que vous avez généré à l'étape 5.

Le diagramme suivant montre les étapes nécessaires pour formater, chiffrer et préparer les données payload correctement avant leur distribution :

Diagramme montrant les étapes pour les Business Generated Links

Comment vérifier un Business Generated Link

Pour vérifier qu'un Business Generated Link a été correctement créé, vous avez deux options :

Testez votre lien dans un navigateur

Collez votre lien dans un navigateur et ouvrez-le. Créez ensuite un avis test. Sélectionnez une note en étoiles, ajoutez un titre et un texte pour votre avis. Si le bouton Publier l'avis est actif, votre processus de chiffrement a été effectué avec succès. Si on vous demande de vous connecter via Facebook, Google ou avec votre e-mail, le processus de chiffrement a échoué. Ne publiez pas votre avis test.

Voici un exemple de chiffrement réussi à gauche et d'un échec à droite :

Exemple de chiffrement réussi à gauche et d'un échec à droite 

Testez votre lien avec notre command line interface (CLI)

Vous pouvez installer notre interface en ligne de commande (CLI) sur votre ordinateur de développement. Si vous pouvez déchiffrer votre payload avec le CLI, le payload a été correctement chiffré.

Évitez l'utilisation d'adresses e-mail génériques (par ex. test@gmail.com). Utilisez une adresse e-mail unique quand vous testez cette fonctionnalité.

Codification des Business Generated Links pour les avis produits

Pour collecter des avis produits avec les Business Generated Links, ajoutez les SKUs des produits à votre payload. Voici un exemple de payload qui inclut des SKU de produits. C'est un array JSON simple :

{
  "email":"xyz@domaine.fr",
  "name":"Jean Dupont",
  "ref":"1234",
  "skus":["sku1","sku2","sku3"]
}

Comment localiser un Business Generated Link pour un pays spécifique ?

Pour localiser le lien, remplacez « www. » par le code du pays en question. Par exemple :

https://fr.trustpilot.com/evaluate-bgl/?p= https://es.trustpilot.com/evaluate-bgl/?p=

Envoyer des invitations à laisser un avis sur des établissements avec les Business Generated Links

Si vous utilisez les Business Generated Links pour envoyer des invitations à laisser un avis sur des établissements, vous devez inclure le champ de l'établissement lorsque vous ajoutez les données clients à l'objet du payload. Utilisez l'identifiant de l'établissement que vous avez assigné à cet établissement spécifique.

Voici un exemple :

{
 "email":"xyz@domaine.fr",
 "name":"Jean Dupont",
 "ref":"1234",
 "locationId": "identifiant1",
 "skus":["sku1","sku2","sku3"],
 "tags":["tag1","tag2","tag3"]
}

L'identifiant de l'établissement est sensible à la casse.

Related articles