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 — tels que l’abandon de panier, l’abandon de produit et 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, résout leur identité en une adresse e-mail exploitable et transmet un payload de signal structuré à Braze via l’API Canvas Entry, déclenchant automatiquement vos flux d’e-mails préconfigurés.
Prérequis
| Condition | Description |
|---|---|
| Compte Wunderkind | Un compte Wunderkind avec Signals activé est requis. Contactez votre conseiller Wunderkind pour confirmer votre éligibilité. |
| Compte Braze | Un compte Braze avec accès à Canvas est requis. L’équipe Wunderkind doit disposer d’un accès à votre compte. Pour plus de détails, consultez Accorder à Wunderkind l’accès à votre compte Braze. |
| Clé API REST Braze | Vous créez une clé API dédiée avec des permissions spécifiques lors de la configuration (voir Étape 1). |
| Identification des utilisateurs | Wunderkind résout généralement un consommateur dans Braze à l’aide de user_alias avec alias_label: "wknd_email_id" (souvent avec l’e-mail comme alias_name). Chaque destinataire de /canvas/trigger/send doit inclure exactement l’un des éléments suivants : external_user_id, user_alias, braze_id ou email (objet recipients) ; 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 à jour les utilisateurs et les alias au préalable avec /users/track ou /users/identify. Pour en savoir plus, consultez Limitations. |
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, déclenchant le parcours Canvas correspondant pour cet utilisateur en temps réel.
Pour un aperçu technique complet, consultez le portail développeur 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 permissions listées dans Accorder à Wunderkind l’accès à votre compte Braze.
- Copiez la clé API pour la saisir dans la plateforme Wunderkind dans la section suivante.

Pour Wunderkind Signals, les requêtes REST API de Braze sont authentifiées avec une clé REST API, et non avec des jetons OAuth. Créez une clé API dédiée dans le tableau de bord et fournissez cette clé à Wunderkind.
Étape 2 : Connecter Braze à la plateforme Wunderkind
- Connectez-vous à la plateforme Wunderkind et accédez à Integrations Hub.
- Sélectionnez la tuile Braze, puis sélectionnez Connect.
- Saisissez votre clé REST API 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 Wunderkind |
|---|---|
| Content Blocks | Automatique |
| Canvas déclenchés par API | Service géré |
| Tags, attributs personnalisés, modèles de liens | Service géré |
Étape 4 : Finaliser 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 du HTML.
- Wunderkind alimente les données de produits et de sessions dans l’objet
contextde chaque destinataire via/canvas/trigger/sendau moment de l’envoi. - Pour des instructions détaillées sur l’utilisation de Liquid avec ce payload dans vos modèles, consultez Finaliser la configuration du Canvas dans le centre d’aide Wunderkind.
Étape 5 : Vérifier l’éligibilité du Canvas
Pour chaque Canvas Signals, accédez aux paramètres Target Audience pour examiner l’audience d’entrée par défaut et les critères de sortie définis par Wunderkind.
- Pour vous assurer de ne pas envoyer trop de messages à vos utilisateurs, consultez Limitation du débit centrée sur l’utilisateur.
- Ajustez les paramètres pour empêcher les utilisateurs de continuer à recevoir des messages Canvas après avoir effectué un achat. Par exemple, ajoutez l’exception Make Purchase.
- Certains Canvas Signals sont préconfigurés avec des filtres d’attributs personnalisés pour que les utilisateurs reçoivent le message avec l’intention la plus élevée possible.
- Consultez Vérifier l’éligibilité du Canvas dans le centre d’aide 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 production :
- Confirmer que les signaux sont transmis aux bons Canvas ID sans erreurs 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 Wunderkind pour des instructions sur la prévisualisation des modèles avec des produits Wunderkind fictifs.
Une fois le contrôle qualité validé, votre responsable de déploiement Wunderkind coordonne le lancement en production avec votre équipe.
Payload de contexte Canvas
Wunderkind prend en charge six types de signaux. Chacun fournit un ensemble distinct de clés et de valeurs dans l’objet context pour ce destinataire sur /canvas/trigger/send (voir Envoyer des messages Canvas via une distribution déclenchée par API). Le champ WkPurpose identifie le type de signal au sein de ce payload.
Champs communs (tous les types de Canvas)
| Propriété | Type | Description |
|---|---|---|
Origin |
String | Toujours "wunderkind" |
DataOnly |
String | Toujours "Y" — indique que Wunderkind agit uniquement comme couche de données ; Braze exécute 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 coupon, le cas échéant (chaîne vide si non utilisé) |
WKCouponPurpose |
String | Description de l’offre de coupon (chaîne vide si non 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 éléments 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 promotionnel (Canvas de baisse de prix uniquement) |
WkQuantity |
String | Unités restantes (Canvas de stock faible uniquement) |
Champs spécifiques au Canvas et valeurs de WkPurpose
| Type de Canvas | Valeur de WkPurpose |
Champs supplémentaires |
|---|---|---|
| Abandon de panier | "cart abandonment" |
WkCartReplenUrl — URL pour reconstituer 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 élément |
| Stock faible | "low stock" |
WkQuantity sur chaque élément |
Exemples de payloads
Chaque objet dans recipients doit inclure exactement l’un des champs suivants : external_user_id, user_alias, braze_id ou email. Pour en savoir plus, consultez l’objet Recipients.

Chaque exemple utilise un seul identifiant de destinataire Braze. Les six premiers utilisent uniquement user_alias ; le dernier utilise email avec prioritization uniquement. Les exemples JSON omettent la clé WkChannel dans context afin que les outils de vérification ne confondent pas sa valeur ("email") avec le champ email du destinataire Braze. En production, incluez "WkChannel": "email" dans context comme documenté dans le tableau des champs communs (tous les types de Canvas).
Les exemples suivants utilisent user_alias avec wknd_email_id, conformément à la manière dont Wunderkind résout les identités.
Exemple de payload d’abandon de panier
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"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 d’abandon de produit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
"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 de récapitulatif de catégorie
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"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 de retour en stock
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
"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 de baisse de prix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
{
"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 de stock faible
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"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 identifiant e-mail (variante)
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 une distribution déclenchée par API). L’objet context est identique aux autres exemples.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
{
"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 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 au-delà de l’utilisation de la syntaxe Liquid correcte.
N’imbriquez pas les balises de sortie Braze à l’intérieur de la condition de la balise for. Assignez d’abord le tableau Items depuis context à une variable, puis effectuez la boucle, comme décrit dans Utiliser Liquid. La ligne assign utilise le format d’entrée Canvas de Braze {{context.${Items}}} (voir Balises de personnalisation prises en charge).
1
2
3
4
5
6
7
8
9
10
11
{% 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 |
Limitations
- Pas de synchronisation des suppressions/désinscriptions. 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 pour préserver votre configuration actuelle.
- Canal e-mail uniquement. Le SMS n’est pas pris en charge actuellement via cette intégration.
- Le profil utilisateur doit exister avant le déclencheur Canvas.
/canvas/trigger/sendavec un destinataireuser_aliasne résout 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 Canvas ne crée pas un tout nouveau profil à partir de l’alias seul. L’utilisateur doit d’abord être créé ou mis à jour et l’aliaswknd_email_iddoit être défini (par exemple, en utilisant/users/trackou/users/identify). Wunderkind peut attendre brièvement après cet upsert afin que Braze puisse terminer le traitement avant de déclencher l’envoi. - L’e-mail comme identifiant. Si le déclencheur Canvas identifie le destinataire avec
emailau lieu deuser_alias, incluezprioritizationsur cet objet destinataire, comme requis par Braze.