Wunderkind (Signals)
Wunderkind est une plateforme de performance e-commerce qui utilise une technologie d’identification propriétaire pour reconnaître les visiteurs anonymes d’un site web et les associer à des adresses e-mail exploitables. En moyenne, Wunderkind fait passer l’identification de 3 à 5 % du trafic d’un site web à 40 à 60 %, permettant aux marques de déclencher des messages personnalisés et individuels à grande échelle via leur fournisseur de services d’e-mailing existant.
Cette intégration est maintenue par Wunderkind. Pour obtenir de l’assistance, rendez-vous sur support.wunderkind.co.
À propos de l’intégration
L’intégration Wunderkind Signals permet à des signaux comportementaux à forte intention, comme l’abandon de panier, l’abandon de produit ou les baisses de prix, de déclencher des parcours Canvas en temps réel dans Braze. Wunderkind identifie les utilisateurs anonymes sur votre site web et associe leur identité à une adresse e-mail valide. Il transmet ensuite à Braze un payload de signal structuré via l’API d’entrée dans le Canvas, ce qui lance automatiquement vos flux d’e-mails préconfigurés.
Prérequis
| Condition | Description |
|---|---|
| Compte Wunderkind | Vous devez disposer d’un compte Wunderkind avec Signals activé. Contactez votre conseiller Wunderkind pour confirmer votre éligibilité. |
| Compte Braze | Vous devez disposer d’un compte Braze avec accès à Canvas. L’équipe Wunderkind doit disposer d’un siège dans votre compte. Pour plus de détails, consultez Accorder à Wunderkind l’accès à votre compte Braze. |
| Clé REST API de Braze | Pendant la configuration, vous créez une clé API dédiée avec des autorisations spécifiques (voir l’étape 1). |
| Identification des utilisateurs | Wunderkind associe généralement un consommateur à Braze à l’aide de user_alias avec alias_label: "wknd_email_id" (souvent avec l’adresse e-mail comme alias_name). Chaque destinataire de /canvas/trigger/send doit inclure exactement un seul des éléments suivants : external_user_id, user_alias, braze_id ou email (objet destinataires). Si vous utilisez email, incluez prioritization. Lorsque vous utilisez user_alias, le profil doit déjà exister dans Braze avant le déclenchement. Créez ou mettez d’abord à jour les utilisateurs et les alias avec /users/track ou /users/identify. Pour plus d’informations, consultez la section Limites. |
Fonctionnement
Lorsque Wunderkind identifie un utilisateur anonyme à forte intention et résout son identité, il envoie un payload de signal à Braze via l’endpoint /canvas/trigger/send, ce qui déclenche en temps réel le parcours Canvas correspondant pour cet utilisateur.
Pour un aperçu technique complet, consultez le portail développeur de Wunderkind.
Intégration
Étape 1 : Créer une clé API Braze pour Wunderkind
Dans votre tableau de bord de Braze :
- Accédez à Paramètres > Clés API et cliquez sur Créer une nouvelle clé API.
- Donnez à la clé un nom descriptif (par exemple,
Wunderkind Signals). - Accordez les autorisations répertoriées dans Accorder à Wunderkind l’accès à votre compte Braze.
- Copiez la clé API pour la saisir dans la plateforme Wunderkind à la section suivante.

Pour Wunderkind Signals, les requêtes de l’API REST de Braze sont authentifiées à l’aide d’une clé API REST, et non de jetons OAuth. Créez une clé API dédiée dans le tableau de bord et fournissez-la à Wunderkind.
Étape 2 : Connecter Braze à la plateforme Wunderkind
- Connectez-vous à la plateforme Wunderkind et accédez à Integrations Hub.
- Sélectionnez la vignette Braze, puis Connect.
- Saisissez votre clé API REST Braze et sélectionnez votre cluster.
- Sélectionnez Save.
Étape 3 : Examiner les nouvelles ressources Braze
Lors de l’activation, Wunderkind provisionne de nouvelles ressources de déploiement dans votre espace de travail Braze, en fonction de la stratégie définie avec votre conseiller Wunderkind :
| Type de ressource | Méthode de création par Wunderkind |
|---|---|
| Content Blocks | Automatique |
| Canvas déclenchés par API | Service géré |
| Tags, attributs personnalisés, modèles de lien | Service géré |
Étape 4 : Terminer la configuration du Canvas
Pour chaque Canvas Signals, créez vos modèles d’e-mail à l’aide de l’éditeur par glisser-déposer de Braze ou en HTML.
- Wunderkind renseigne les données de produit et de session dans l’objet
contextde chaque destinataire sur/canvas/trigger/sendau moment de l’envoi. - Pour savoir en détail comment utiliser Liquid avec ce payload dans vos modèles, consultez Terminer la configuration du Canvas dans le centre d’aide de Wunderkind.
Étape 5 : Vérifier l’éligibilité au Canvas
Pour chaque Canvas Signals, accédez aux paramètres Audience cible pour examiner l’audience d’entrée et les critères de sortie par défaut définis par Wunderkind.
- Pour éviter d’envoyer trop de messages à vos utilisateurs, consultez la section Limitation du débit centrée sur l’utilisateur.
- Ajustez les paramètres pour que les utilisateurs cessent de recevoir les messages du Canvas après avoir effectué un achat. Par exemple, ajoutez l’exception Effectuer un achat.
- Certains Canvas Signals sont préconfigurés avec des filtres d’attributs personnalisés afin que les utilisateurs reçoivent le message correspondant à l’intention la plus forte possible.
- Consultez Vérifier l’éligibilité au Canvas dans le centre d’aide de Wunderkind pour en savoir plus sur l’éligibilité et la priorité des Canvas.
Étape 6 : Tester et lancer
Wunderkind effectue un contrôle qualité de bout en bout avant la mise en ligne :
- Vérifier que les signaux sont bien envoyés aux bons ID de Canvas, sans erreur d’API.
- Vérifier que les champs
context(nom du produit, image, URL) s’affichent correctement dans les modèles d’e-mail rendus. - Consultez Tester et lancer Signals pour Braze dans le centre d’aide de Wunderkind pour savoir comment prévisualiser les modèles avec des produits Wunderkind fictifs.
Une fois le contrôle qualité validé, votre gestionnaire de déploiement Wunderkind coordonne le lancement en production avec votre équipe.
Payload de contexte de Canvas
Wunderkind prend en charge six types de signaux. Chacun transmet un ensemble distinct de clés et de valeurs dans l’objet context de chaque destinataire sur /canvas/trigger/send (voir Envoyer des messages Canvas via la livraison déclenchée par API). Le champ WkPurpose identifie le type de signal dans ce payload.
Champs communs (tous les types de Canvas)
| Propriété | Type | Description |
|---|---|---|
Origin |
String | Toujours "wunderkind" |
DataOnly |
String | Toujours "Y". Indique que Wunderkind sert uniquement de couche de données et que Braze effectue l’envoi |
UserType |
String | "prospect" ou "customer" |
WkChannel |
String | Toujours "email" pour cette intégration |
WkPurpose |
String | Identifiant du type de signal (voir les valeurs par Canvas dans cette section) |
WKCouponCode |
String | Code de réduction, le cas échéant (chaîne vide s’il n’est pas utilisé) |
WKCouponPurpose |
String | Description de l’offre de réduction (chaîne vide si elle n’est pas utilisée) |
Items |
Array | Tableau d’objets produit (voir les champs produit dans cette section) |
WkOpen |
String | Pixel de suivi disponible à des fins de reporting |
Champs des articles produit
| Propriété | Type | Description |
|---|---|---|
WkCopy |
String | Nom du produit |
WkId |
String | ID du produit |
WkImageUrl |
String | URL de l’image du produit |
WkUrl |
String | URL de la page de détail du produit |
WkPrice |
String | Prix d’origine (Canvas de baisse de prix uniquement) |
WKSalePrice |
String | Prix soldé (Canvas de baisse de prix uniquement) |
WkQuantity |
String | Unités restantes (Canvas de stock faible uniquement) |
Champs spécifiques à chaque Canvas et valeurs de WkPurpose
| Type de Canvas | Valeur de WkPurpose |
Champs supplémentaires |
|---|---|---|
| Abandon de panier | "cart abandonment" |
WkCartReplenUrl : URL permettant de remplir à nouveau le panier |
| Abandon de produit | "product abandonment" |
— |
| Récapitulatif de catégorie | "category recap" |
WkCategoryUrl : URL de la catégorie consultée |
| Retour en stock | "back in stock" |
— |
| Baisse de prix | "price drop" |
WkPrice, WKSalePrice sur chaque article |
| Stock faible | "low stock" |
WkQuantity sur chaque article |
Exemples de payloads
Chaque objet de recipients doit inclure exactement un seul des identifiants suivants : external_user_id, user_alias, braze_id ou email. Pour plus d’informations, consultez l’objet Destinataires.

Chaque exemple utilise un seul identifiant de destinataire Braze. Les six premiers utilisent uniquement user_alias ; le dernier utilise email avec prioritization uniquement. Le JSON d’exemple omet la clé WkChannel dans context afin que les outils de révision ne confondent pas sa valeur ("email") avec le champ email du destinataire Braze. En production, incluez "WkChannel": "email" dans context, comme indiqué dans le tableau des champs communs (tous les types de Canvas).
Les exemples suivants utilisent user_alias avec wknd_email_id, ce qui correspond à la manière dont Wunderkind résout les identités.
Exemple de payload pour l’abandon de panier
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/cart",
"WkPurpose": "cart abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"WkCartReplenUrl": "https://example.com/cart/replenish",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Exemple de payload pour l’abandon de produit
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "product abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Exemple de payload pour le récapitulatif de catégorie
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/category",
"WkPurpose": "category recap",
"WKCouponCode": "",
"WKCouponPurpose": "",
"WkCategoryUrl": "https://example.com/category",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Exemple de payload pour le retour en stock
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "back in stock",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Exemple de payload pour la baisse de prix
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "price drop",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product",
"WkPrice": "49.99",
"WKSalePrice": "39.99"
}
]
}
}
]
}
Exemple de payload pour le stock faible
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"user_alias": {
"alias_name": "[email protected]",
"alias_label": "wknd_email_id"
},
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "low stock",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product",
"WkQuantity": "1"
}
]
}
}
]
}
Exemple avec l’identifiant e-mail (alternative)
Si vous déclenchez le Canvas avec le champ email de Braze au lieu de user_alias, le destinataire doit inclure uniquement email et prioritization (voir Envoyer des messages Canvas via la livraison déclenchée par API). L’objet context est identique à celui des autres exemples.
{
"canvas_id": "<your_canvas_id>",
"recipients": [
{
"email": "[email protected]",
"prioritization": ["unidentified", "most_recently_updated"],
"context": {
"Origin": "wunderkind",
"DataOnly": "Y",
"UserType": "prospect",
"WkOpen": "https://example.com/product",
"WkPurpose": "product abandonment",
"WKCouponCode": "",
"WKCouponPurpose": "",
"Items": [
{
"WkCopy": "Product name",
"WkId": "012345",
"WkImageUrl": "https://example.com/image.jpg",
"WkUrl": "https://example.com/product"
}
]
}
}
]
}
Exemple d’utilisation de Liquid
Lorsque Wunderkind appelle /canvas/trigger/send, les clés et valeurs que vous transmettez dans l’objet context de chaque destinataire deviennent des données d’entrée du Canvas. Dans les étapes Message, référencez-les avec l’espace de noms Liquid context. Par exemple, {{context.${WkPurpose}}}, comme décrit dans Objet de contexte Canvas et Message. Aucune configuration supplémentaire n’est nécessaire, il suffit d’utiliser la bonne syntaxe Liquid.
N’imbriquez pas de balises de sortie Braze dans la condition de la balise for. Affectez d’abord le tableau Items de context à une variable, puis effectuez la boucle, comme décrit dans Utiliser Liquid. La ligne assign utilise la forme d’entrée Canvas de Braze {{context.${Items}}} (voir Étiquettes de personnalisation prises en charge).
{% assign wk_items = {{context.${Items}}} %}
{% for item in wk_items %}
<tr>
<td>
<a href="{{ item.WkUrl }}">
<img src="{{ item.WkImageUrl }}" />
<p>{{ item.WkCopy }}</p>
</a>
</td>
</tr>
{% endfor %}
Reporting
Wunderkind ingère les données de performance depuis Braze à l’aide de Braze Currents, qui diffuse les événements bruts vers Google Cloud Storage. Wunderkind normalise et agrège ensuite ces événements par rapport au signal d’origine pour un reporting d’attribution 1:1.
Les indicateurs suivants seront bientôt disponibles dans le tableau de bord de reporting Wunderkind :
| Indicateur | Source |
|---|---|
| Envois distribués | Braze Currents |
| Ouvertures d’e-mails | Braze Currents |
| Clics | Braze Currents |
| Conversions | Braze Currents (événement défini lors de la configuration) |
| Désabonnements | Braze Currents |
Limites
- Aucune synchronisation des suppressions ni des désabonnements. Les suppressions doivent être gérées nativement dans Braze. Remarque : pour les clients Wunderkind existants qui migrent vers Braze Signals, Wunderkind collabore avec votre équipe afin de préserver votre configuration actuelle.
- Canal e-mail uniquement. Les SMS ne sont actuellement pas pris en charge par cette intégration.
- Le profil utilisateur doit exister avant le déclenchement du Canvas.
/canvas/trigger/sendavec un destinataireuser_aliasne cible que les profils Braze existants qui possèdent déjà cet alias. Vous ne pouvez pas utilisersend_to_existing_onlyavec des alias, et le déclencheur du Canvas ne crée pas de nouveau profil à partir de l’alias seul. L’utilisateur doit d’abord être créé ou mis à jour, et l’aliaswknd_email_iddéfini (par exemple, à l’aide de/users/trackou de/users/identify). Wunderkind peut attendre brièvement après cette mise à jour afin que Braze termine le traitement avant de lancer le déclencheur. - L’e-mail comme identifiant. Si le déclencheur du Canvas identifie le destinataire avec
emailplutôt qu’avecuser_alias, incluezprioritizationdans cet objet destinataire, comme l’exige Braze.