Wunderkind (Signals)
Wunderkind es una plataforma de rendimiento de comercio electrónico que utiliza tecnología de identidad propietaria para reconocer visitantes anónimos de sitios web y resolverlos a direcciones de correo electrónico procesables. En promedio, Wunderkind escala la identificación del 3 al 5 % del tráfico del sitio web al 40 al 60 %, lo que permite a las marcas desencadenar mensajes personalizados uno a uno a escala a través de su ESP existente.
Esta integración está mantenida por Wunderkind. Para soporte, visita support.wunderkind.co.
Acerca de la integración
La integración de Wunderkind Signals permite que señales de comportamiento de alta intención —como abandono del carrito de compras, abandono de producto y bajadas de precio— desencadenen recorridos de Canvas en tiempo real en Braze. Wunderkind identifica a los usuarios anónimos en tu sitio web, resuelve su identidad a una dirección de correo electrónico entregable y envía una carga útil de señal estructurada a Braze a través de la API de entrada de Canvas, iniciando automáticamente tus flujos de correo electrónico preconfigurados.
Requisitos previos
| Requisito | Descripción |
|---|---|
| Cuenta de Wunderkind | Se requiere una cuenta de Wunderkind con Signals habilitado. Contacta a tu representante de Wunderkind para confirmar la elegibilidad. |
| Cuenta de Braze | Se requiere una cuenta de Braze con acceso a Canvas. El equipo de Wunderkind debe tener acceso a tu cuenta. Para más detalles, consulta Otorgar acceso a Wunderkind a tu cuenta de Braze. |
| Clave de API REST de Braze | Creas una clave de API dedicada con permisos específicos durante la configuración (consulta el Paso 1). |
| Identificación de usuario | Wunderkind normalmente resuelve a un consumidor en Braze usando user_alias con alias_label: "wknd_email_id" (a menudo con el correo electrónico como alias_name). Cada destinatario de /canvas/trigger/send debe incluir exactamente uno de external_user_id, user_alias, braze_id o email (objeto de destinatarios); si usas email, incluye prioritization. Cuando usas user_alias, el perfil ya debe existir en Braze antes del desencadenamiento. Crea o actualiza usuarios y alias primero con /users/track o /users/identify. Para más información, consulta Limitaciones. |
Cómo funciona
Cuando Wunderkind identifica a un usuario anónimo con alta intención y resuelve su identidad, envía una carga útil de señal a Braze usando el endpoint /canvas/trigger/send, lo que desencadena el recorrido de Canvas correspondiente para ese usuario en tiempo real.
Para obtener un resumen técnico completo, consulta el Portal para desarrolladores de Wunderkind.
Integración
Paso 1: Crear una clave de API de Braze para Wunderkind
En tu panel de Braze:
- Ve a Configuración > Claves de API y haz clic en Crear nueva clave de API.
- Dale a la clave un nombre descriptivo (por ejemplo,
Wunderkind Signals). - Otorga los permisos indicados en Conceder a Wunderkind acceso a tu cuenta de Braze.
- Copia la clave de API para ingresarla en la plataforma Wunderkind en la siguiente sección.

Para Wunderkind Signals, las solicitudes de la REST API de Braze se autentican con una clave de API REST, no con tokens OAuth. Crea una clave de API dedicada en el panel y proporciona esa clave a Wunderkind.
Paso 2: Conectar Braze a la plataforma Wunderkind
- Inicia sesión en la plataforma Wunderkind y ve a Integrations Hub.
- Selecciona el mosaico de Braze y luego selecciona Connect.
- Ingresa tu clave de API REST de Braze y selecciona tu clúster.
- Selecciona Save.
Paso 3: Revisar los nuevos activos de Braze
Tras la activación, Wunderkind aprovisiona nuevos activos de implementación en tu espacio de trabajo de Braze según la estrategia alineada con tu representante de Wunderkind:
| Tipo de activo | Método de creación de Wunderkind |
|---|---|
| Content Blocks | Automático |
| Canvas activados por API | Servicio gestionado |
| Etiquetas, atributos personalizados, plantillas de enlaces | Servicio gestionado |
Paso 4: Completar la configuración del Canvas
Para cada Canvas de Signals, crea tus plantillas de correo electrónico con el editor de arrastrar y soltar de Braze o con HTML.
- Wunderkind rellena los datos de productos y sesiones en el objeto
contextde cada destinatario en/canvas/trigger/senden el momento del envío. - Para obtener instrucciones detalladas sobre cómo utilizar Liquid con esa carga útil en tus plantillas, consulta Complete Canvas setup en el Centro de ayuda de Wunderkind.
Paso 5: Revisar la elegibilidad del Canvas
Para cada Canvas de Signals, ve a la configuración del público objetivo para revisar el público de entrada predeterminado y los criterios de salida de Wunderkind.
- Para asegurarte de que no envías mensajes a tus usuarios con demasiada frecuencia, consulta Limitación de velocidad centrada en el usuario.
- Ajusta la configuración para evitar que los usuarios sigan recibiendo mensajes del Canvas después de realizar una compra. Por ejemplo, agrega la excepción Make Purchase.
- Algunos Canvas de Signals están preconfigurados con filtros de atributos personalizados para que los usuarios reciban el mensaje con la intención más alta posible.
- Consulta Review Canvas eligibility en el Centro de ayuda de Wunderkind para obtener detalles sobre la elegibilidad y prioridad del Canvas.
Paso 6: Probar y lanzar
Wunderkind realiza una prueba de calidad de extremo a extremo antes del lanzamiento:
- Confirma que las señales se entregan a los Canvas ID correctos sin errores de API.
- Verifica que los campos de
context(nombre del producto, imagen, URL) se rellenan correctamente en las plantillas de correo electrónico renderizadas. - Consulta Test and launch Signals for Braze en el Centro de ayuda de Wunderkind para obtener instrucciones sobre cómo previsualizar plantillas con productos de prueba de Wunderkind.
Cuando la prueba de calidad se aprueba, tu administrador de implementación de Wunderkind coordina el lanzamiento a producción con tu equipo.
Carga útil de contexto de Canvas
Wunderkind admite seis tipos de señal. Cada uno entrega un conjunto distinto de claves y valores dentro del objeto context para ese destinatario en /canvas/trigger/send (consulta Enviar mensajes de Canvas mediante entrega desencadenada por API). El campo WkPurpose identifica el tipo de señal dentro de esa carga útil.
Campos comunes (todos los tipos de Canvas)
| Propiedad | Tipo | Descripción |
|---|---|---|
Origin |
Cadena | Siempre "wunderkind" |
DataOnly |
Cadena | Siempre "Y" — indica que Wunderkind actúa solo como capa de datos; Braze ejecuta el envío |
UserType |
Cadena | "prospect" o "customer" |
WkChannel |
Cadena | Siempre "email" para esta integración |
WkPurpose |
Cadena | Identificador del tipo de señal (consulta los valores por Canvas en esta sección) |
WKCouponCode |
Cadena | Código de cupón, si aplica (cadena vacía si no se usa) |
WKCouponPurpose |
Cadena | Descripción de la oferta del cupón (cadena vacía si no se usa) |
Items |
Array | Array de objetos de producto (consulta los campos de producto en esta sección) |
WkOpen |
Cadena | Píxel de seguimiento disponible para fines de reporte |
Campos de artículo de producto
| Propiedad | Tipo | Descripción |
|---|---|---|
WkCopy |
Cadena | Nombre del producto |
WkId |
Cadena | ID de producto |
WkImageUrl |
Cadena | URL de imagen del producto |
WkUrl |
Cadena | URL de la página de detalle del producto |
WkPrice |
Cadena | Precio original (solo Canvas de bajada de precio) |
WKSalePrice |
Cadena | Precio de oferta (solo Canvas de bajada de precio) |
WkQuantity |
Cadena | Unidades restantes (solo Canvas de bajo inventario) |
Campos específicos de Canvas y valores de WkPurpose
| Tipo de Canvas | Valor de WkPurpose |
Campos adicionales |
|---|---|---|
| Abandono del carrito de compras | "cart abandonment" |
WkCartReplenUrl — URL para reponer el carrito |
| Abandono de producto | "product abandonment" |
— |
| Resumen de categoría | "category recap" |
WkCategoryUrl — URL de la categoría navegada |
| De vuelta en inventario | "back in stock" |
— |
| Bajada de precio | "price drop" |
WkPrice, WKSalePrice en cada artículo |
| Bajo inventario | "low stock" |
WkQuantity en cada artículo |
Cargas útiles de ejemplo
Cada objeto en recipients debe incluir exactamente uno de external_user_id, user_alias, braze_id o email. Para más información, consulta el objeto Recipients.

Cada ejemplo usa un identificador de destinatario de Braze. Los primeros seis usan solo user_alias; el último usa email con prioritization únicamente. El JSON de ejemplo omite la clave WkChannel dentro de context para que las herramientas de revisión no confundan su valor ("email") con el campo email de destinatario de Braze. En producción, incluye "WkChannel": "email" en context como se documenta en la tabla de campos comunes (todos los tipos de Canvas).
Los siguientes ejemplos usan user_alias con wknd_email_id, coincidiendo con la forma en que Wunderkind resuelve identidades.
Ejemplo de carga útil de abandono del carrito de compras
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"
}
]
}
}
]
}
Ejemplo de carga útil de abandono de producto
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"
}
]
}
}
]
}
Ejemplo de carga útil de resumen de categoría
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"
}
]
}
}
]
}
Ejemplo de carga útil de vuelta en inventario
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"
}
]
}
}
]
}
Ejemplo de carga útil de bajada de precio
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"
}
]
}
}
]
}
Ejemplo de carga útil de bajo inventario
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"
}
]
}
}
]
}
Ejemplo de identificador de correo electrónico (alternativo)
Si desencadenas el Canvas con el campo email de Braze en lugar de user_alias, el destinatario debe incluir solo email y prioritization (consulta Enviar mensajes de Canvas mediante entrega desencadenada por API). El objeto context coincide con los demás ejemplos.
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"
}
]
}
}
]
}
Ejemplo de uso de Liquid
Cuando Wunderkind llama a /canvas/trigger/send, las claves y valores que pasas en el objeto context de cada destinatario se convierten en datos de entrada de Canvas. En los pasos de mensaje, haz referencia a ellos con el espacio de nombres Liquid context. Un ejemplo es {{context.${WkPurpose}}} como se describe en Objeto de contexto de Canvas y Mensaje. No se requiere configuración adicional más allá de usar la sintaxis Liquid correcta.
No anides etiquetas de salida de Braze dentro de la condición de la etiqueta for. Primero asigna el array Items de context a una variable y luego itera, como se describe en Uso de Liquid. La línea assign usa el formato de entrada de Canvas de Braze {{context.${Items}}} (consulta Etiquetas de personalización compatibles).
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 %}
Informes
Wunderkind ingiere datos de rendimiento de Braze usando Braze Currents, que transmite eventos sin procesar a Google Cloud Storage. Wunderkind luego normaliza y agrega estos eventos contra la señal de origen para informes de atribución 1:1.
Las siguientes métricas estarán disponibles próximamente en el panel de informes de Wunderkind:
| Métrica | Fuente |
|---|---|
| Envíos entregados | Braze Currents |
| Aperturas de correo electrónico | Braze Currents |
| Clics | Braze Currents |
| Conversiones | Braze Currents (evento definido en la configuración) |
| Cancelaciones de suscripción | Braze Currents |
Limitaciones
- Sin sincronización de supresión/cancelación de suscripción. La supresión debe gestionarse de forma nativa en Braze. Nota: Para los clientes actuales de Wunderkind que migran a Braze Signals, Wunderkind trabaja con tu equipo para preservar tu configuración actual.
- Solo canal de correo electrónico. Actualmente, SMS no es compatible con esta integración.
- El perfil de usuario debe existir antes del desencadenador de Canvas.
/canvas/trigger/sendcon un destinatariouser_aliassolo resuelve perfiles de Braze existentes que ya tienen ese alias. No puedes usarsend_to_existing_onlycon alias, y el desencadenador de Canvas no crea un perfil completamente nuevo solo a partir del alias. El usuario debe crearse o actualizarse y el aliaswknd_email_iddebe configurarse primero (por ejemplo, usando/users/tracko/users/identify). Wunderkind puede esperar brevemente después de esa operación de upsert para que Braze termine de procesar antes de disparar el desencadenador. - El correo electrónico como identificador. Si el desencadenador de Canvas identifica al destinatario con
emailen lugar deuser_alias, incluyeprioritizationen ese objeto de destinatario, tal como lo requiere Braze.