Skip to content

Uso de catálogos

Después de crear un catálogo, puedes hacer referencia a datos de no usuarios en tus Campaigns de Braze a través de Liquid. Puedes utilizar catálogos en todos tus canales de mensajería, incluso en cualquier parte del editor de arrastrar y soltar donde se admita Liquid.

Uso de catálogos en un mensaje

El siguiente video muestra cómo usar catálogos en un mensaje.

Paso 1: Añadir tipo de personalización

En el creador de mensajes de tu elección, selecciona Añadir personalización y selecciona Elementos del catálogo para el Tipo de personalización. A continuación, selecciona el nombre de tu catálogo. Usando nuestro ejemplo anterior, seleccionaremos el catálogo “Games”.

Modal Añadir personalización con Elementos del catálogo seleccionado, el catálogo Games elegido, y una vista previa de Liquid mostrando la etiqueta catalog_items.

Podemos ver inmediatamente la siguiente vista previa de Liquid:

1
{% catalog_items Games %}

Paso 2: Seleccionar elementos del catálogo

A continuación, ¡es momento de añadir tus elementos del catálogo! Usando el desplegable, selecciona los elementos del catálogo y la información a mostrar. Esta información corresponde a las columnas del archivo CSV cargado que se usó para generar tu catálogo.

Por ejemplo, para hacer referencia al título y al precio de nuestro juego Tales, podríamos seleccionar el id de Tales (1234) como el elemento del catálogo y solicitar title y price para la información mostrada.

1
2
3
{% catalog_items Games 1234 %}

Get {{ items[0].title }} for just {{ items[0].price }}!

Esto se muestra de la siguiente manera:

Get Tales for just 7.49!

Exportar catálogos

Hay dos formas de exportar catálogos desde el panel:

  • Pasa el cursor sobre la fila del catálogo en la sección Catálogos. Luego, selecciona el botón Exportar catálogo.
  • Selecciona tu catálogo. Luego, selecciona el botón Exportar catálogo en la pestaña Vista previa del catálogo.

Recibirás un correo electrónico para descargar el archivo CSV después de iniciar la exportación. Tendrás hasta cuatro horas para recuperar este archivo.

Casos de uso adicionales

Múltiples elementos

No estás limitado a un solo elemento en un mensaje. Usa el modal Añadir personalización para agregar hasta tres elementos del catálogo a la vez. Para agregar más, selecciona Añadir personalización de nuevo en el creador y selecciona elementos del catálogo e información adicionales para mostrar.

Consulta este ejemplo donde agregamos el id de tres juegos, Tales, Teslagrad y Acaratus, para Elementos del catálogo y seleccionamos title para Información a mostrar.

Modal de Añadir personalización que muestra tres IDs de elementos del catálogo seleccionados y title elegido para Información a mostrar, con una vista previa de Liquid listando el título de cada elemento.

Podemos personalizar aún más nuestro mensaje agregando algo de texto alrededor de nuestro Liquid:

1
2
Get the ultimate trio {% catalog_items Games 1234 1235 1236 %}
{{ items[0].title }}, {{ items[1].title }}, and {{ items[2].title }} today!

Esto se muestra de la siguiente manera:

Get the ultimate trio Tales, Teslagrad, and Acaratus today!

Using Liquid if statements

You can use catalog items to create conditional statements. For example, you can trigger a certain message to display when a specific item is selected in your campaign. You must declare the catalog (and, if applicable, the selection) before referencing items in an if statement.

With catalog items

1
2
3
4
5
6
{% catalog_items Games 1234 %}
{% if items[0].on_sale == true %}
  {{ items[0].title }} is on sale! Get it for {{ items[0].price }}.
{% else %}
  Check out {{ items[0].title }} at full price.
{% endif %}

En este ejemplo, la etiqueta catalog_items obtiene el elemento 1234 del catálogo Games, y luego la sentencia if verifica el campo on_sale para mostrar mensajes diferentes.

1
2
3
4
5
6
7
8
{% catalog_selection_items item-list selections %}
{% if items[0].venue_name.size > 10 %}
Message if the venue name's size is more than 10 characters.
{% elsif items[0].venue_name.size <= 10 %}
Message if the venue name's size is 10 characters or fewer.
{% else %}
{% abort_message('no venue_name') %}
{% endif %}

En este ejemplo, se muestran mensajes diferentes según si el campo venue_name tiene más o menos de 10 caracteres. Si venue_name está en blanco, el mensaje se aborta.

Para obtener cuántos elementos devuelve una selección, usa el filtro Liquid size en el array items después de la etiqueta, no en un campo individual:

1
{% catalog_selection_items item-list selections %}{{ items | size }}

Uso de imágenes

También puedes referenciar imágenes en el catálogo para usarlas en tu mensajería. Para hacerlo, usa la etiqueta catalogs y el objeto item en el campo de Liquid para imágenes.

Por ejemplo, para agregar el image_link de nuestro catálogo Games a nuestro mensaje promocional para Tales, selecciona el id para el campo Elementos del catálogo e image_link para el campo Información a mostrar. Esto agrega las siguientes etiquetas de Liquid a nuestro campo de imagen:

1
2
3
{% catalog_items Games 1234 %}

{{ items[0].image_link }}

Creador de tarjeta de contenido con la etiqueta de Liquid del catálogo usada en el campo de imagen.

Así es como se ve cuando se renderiza el Liquid:

Ejemplo de tarjeta de contenido con las etiquetas de Liquid del catálogo renderizadas.

También puedes usar plantillas para obtener dinámicamente elementos del catálogo basándote en atributos personalizados. Por ejemplo, supongamos que un usuario tiene el atributo personalizado wishlist, que contiene un array de IDs de juegos de tu catálogo.

1
2
3
4
5
6
7
8
{
    "attributes": [
        {
            "external_id": "user_id",
            "wishlist": ["1234", "1235"]
        }
    ]
}

Usando plantillas de Liquid, puedes obtener dinámicamente los IDs de la lista de deseos y luego usarlos en tu mensaje. Para hacerlo, asigna una variable a tu atributo personalizado, luego usa el modal Añadir personalización para obtener un elemento específico del array. Las variables referenciadas como el ID del elemento del catálogo deben estar envueltas en llaves para ser referenciadas correctamente, como ``.

Por ejemplo, para informar a un usuario que Tales (un elemento en nuestro catálogo que ha deseado) está en oferta, podemos agregar lo siguiente a nuestro creador de mensajes:

1
2
3
4
{% assign wishlist = {{custom_attribute.${wishlist}}}%}
{% catalog_items Games {{ wishlist[0] }} %}

Get {{ items[0].title }} now for {{ items[0].price }}!

Lo cual se mostrará de la siguiente manera:

Get Tales now for just 7.49!

Con las plantillas, puedes renderizar un elemento del catálogo diferente para cada usuario basándote en sus atributos personalizados individuales, propiedades del evento o cualquier otro campo que admita plantillas.

Carga de un CSV

Puedes cargar un CSV con nuevos elementos del catálogo para agregar o elementos del catálogo para actualizar. Para eliminar una lista de elementos, puedes cargar un CSV con los IDs de los elementos para eliminarlos.

Uso de Liquid

También puedes armar manualmente catálogos con lógica de Liquid. Sin embargo, ten en cuenta que si escribes un ID que no existe, Braze seguirá devolviendo un array de elementos sin objetos. Recomendamos que incluyas manejo de errores, como verificar el tamaño del array y usar una sentencia if para contemplar un caso de array vacío.

Plantillas de elementos del catálogo que incluyen Liquid

De manera similar al contenido conectado, debes usar el indicador :rerender en una etiqueta de Liquid para renderizar el contenido de Liquid de un elemento del catálogo. Ten en cuenta que el indicador :rerender tiene solo un nivel de profundidad, lo que significa que no se aplicará a ninguna llamada de etiqueta de Liquid anidada.

Si un elemento del catálogo contiene campos del perfil de usuario (dentro de una etiqueta de personalización de Liquid), estos valores deben definirse en Liquid antes en el mensaje y antes de la plantilla para renderizar el Liquid correctamente. Si no se proporciona el indicador :rerender, se renderizará el contenido de Liquid sin procesar.

Por ejemplo, si un catálogo llamado “Messages” tiene un elemento con este Liquid:

Fila de tabla del catálogo con id greet_msg y columna Welcome_Message que contiene un saludo de bienvenida a la tienda con una variable de Liquid de nombre.

Para renderizar el siguiente contenido de Liquid:

1
2
3
4
Hi ${first_name},

{% catalog_items Messages greet_msg :rerender %}
{{ items[0].Welcome_Message }}

Esto se mostrará de la siguiente manera:

1
2
3
Hi Peter,

Welcome to our store, Peter!

Solución de problemas de personalización de catálogos

Si el Liquid de catálogo o selección no se muestra como esperas en un mensaje o paso en Canvas, comprueba lo siguiente:

Síntoma Qué comprobar
La vista previa muestra elementos, pero los envíos en vivo están vacíos Confirma que los ID de elementos del catálogo existen en el momento del envío. Si el ID en tu Liquid no coincide con una fila, Braze devuelve un array de elementos vacío; consulta Uso de Liquid. Comprueba si hay errores tipográficos y si las fuentes de ID (como las propiedades del evento) faltan en el desencadenador o el perfil de usuario.
La vista previa del creador funciona en una Campaign pero no en Canvas Confirma que estás usando el contexto de Liquid correcto—propiedades de contexto de Canvas frente a propiedades del evento—y que esos campos existen en el desencadenador. Consulta Propiedades de contexto y de evento.
Una selección no devuelve elementos Revisa los filtros de selección y los límites; confirma que los datos del catálogo están sincronizados y que los nombres de columna coinciden con tus filtros.
:rerender o la entrega con plantillas se ve incorrecta Para Liquid anidado dentro de campos de catálogo, necesitas :rerender y un orden correcto de variables; consulta Uso de plantillas en elementos de catálogo que incluyen Liquid. Los mensajes dentro de la aplicación con plantillas se resuelven en el momento del desencadenamiento; consulta ¿Qué son los mensajes dentro de la aplicación con plantillas?. Algunos canales restringen las etiquetas de catálogo (por ejemplo, ciertos usos de :rerender con Banners); consulta ¿Se admiten todas las etiquetas de Liquid? en las preguntas frecuentes de Banners.

Para el comportamiento general de Liquid, consulta Ejemplos de uso de Liquid y Uso de Liquid.

Al planificar cómo estructurar los datos de tu catálogo, parte de tu caso de uso previsto y diseña el catálogo en torno a él. Cada fila del catálogo representa un elemento (con un id único). Las columnas deben contener los atributos de ese elemento, como URL, texto descriptivo, URL de imágenes, precio, valoración, talla o color.

Con las llamadas estándar de catálogo, haces coincidir un valor con la columna id. Al insertar un atributo personalizado o una propiedad del evento (como una cadena de ID) en la etiqueta de Liquid del catálogo, puedes extraer múltiples atributos de un solo elemento en tu mensaje. Los casos de uso más comunes incluyen:

  • Producto o servicio visto recientemente
  • Elementos de la lista de deseos
  • Ofertas por ubicación
  • Producto comprado
  • Contenido de etapa del ciclo de vida
  • Producto o servicio buscado más recientemente

Las selecciones de catálogo te permiten filtrar en cualquier columna de tu catálogo y devolver hasta 50 elementos coincidentes. Al insertar atributos personalizados o propiedades del evento en los filtros de selección, los resultados se personalizan para cada usuario. Los casos de uso más comunes incluyen:

  • Elementos en los que la categoría coincide con la preferencia de un usuario
  • Elementos que coinciden con la marca, cocina o talla preferida de un usuario
  • Contenido de tipo de suscripción o nivel de fidelización
  • Productos dentro del rango de valor medio de pedido de un usuario

La diferencia clave es que las llamadas estándar de catálogo buscan un solo elemento conocido por id, mientras que las selecciones de catálogo consultan a lo largo del catálogo y devuelven múltiples elementos que coinciden con tus criterios de filtro.

New Stuff!