Se você trabalha com Braze e tem um eCommerce, existe uma funcionalidade de Catálogos que vale muito a pena conhecer — e que pode mudar bastante como você recupera oportunidades de venda.
Os Catálogos do Braze permitem personalizar mensagens com dados de produtos, mas escondem algo a mais: a possibilidade de automatizar notificações de restock e queda de preço com quase nenhum esforço de manutenção. O usuário expressa interesse, o Braze registra, e quando o produto muda, a notificação sai sozinha.
O que é exatamente?
O Braze tem algo chamado Catalog Triggers — dois tipos especificamente:
- Back in stock: notifique automaticamente quem queria um produto que estava sem estoque, quando a disponibilidade voltar.
- Price drop: avise os interessados quando o preço de um produto cair de acordo com uma regra que você define (por exemplo, uma queda de 10% ou mais).
Ambos funcionam com a mesma lógica: o usuário realiza uma ação no seu site ou app → fica inscrito naquele produto → quando o catálogo muda, o Braze dispara o Canvas automaticamente.
O ciclo de vida do usuário
Para entender em que momento cada coisa acontece, vale ver o fluxo completo:

Em palavras:
- O usuário visita um produto sem estoque ou fora do seu intervalo de preço, e clica em “Me avise quando voltar” ou “Me avise se o preço cair”.
- Esse clique dispara um
custom eventcom propriedades que incluem o ID do item e o tipo de inscrição. - O Braze registra essa inscrição, vinculando o usuário àquele item do catálogo. A inscrição dura 90 dias.
- Quando o catálogo é atualizado — o estoque passa de 0 para disponível, ou o preço cai de acordo com a sua regra — o Braze detecta automaticamente.
- O Canvas é ativado e o usuário recebe a notificação.
Como implementar?
A configuração tem duas partes: o catálogo e o Canvas.
Do lado do catálogo
A configuração global é feita em Data Settings > Catalogs. Lá você vai encontrar os settings que se aplicam a todos os seus catálogos, onde você configura:
- Fallback catalog: o catálogo que o Braze usa para a inscrição quando o custom event não traz a propriedade
catalog_name. É opcional, mas recomendado para evitar inscrições que fiquem sem associação. - Evento de inscrição: o custom event que ativa a inscrição do usuário (por exemplo,
product_clicked). - Evento de cancelamento de inscrição: o custom event que cancela o alerta do usuário. Este campo é opcional — se não for configurado, o Braze cancela automaticamente a inscrição após 90 dias ou quando a notificação é disparada, o que ocorrer primeiro.
- Event property do ID do produto: a propriedade do custom event que contém o ID do item do catálogo.
Um exemplo de como esse evento de inscrição se parece. Note que a propriedade type é um array, o que permite inscrever o usuário em ambos os tipos de alerta no mesmo evento:
{
"events": [
{
"external_id": "<external_id>",
"name": "subscription",
"time": "2024-04-15T19:22:28Z",
"properties": {
"id": "shirt-xl",
"catalog_name": "on_sale_products",
"type": ["price_drop", "back_in_stock"]
}
}
]
}
Após a configuração global, você vai ao catálogo específico e na aba Settings ativa o toggle de Back in Stock ou Price Drop conforme necessário. Lá o Braze vai pedir:
- Qual campo do catálogo representa o estoque ou o preço, precisa ser numérico.
- As regras de notificação: se avisa todos os inscritos de uma vez ou em lotes, com um limite de 10.000 usuários por minuto.
Do lado do Canvas
Você cria um Canvas action-based, seleciona o trigger correspondente e o catálogo, e configura os passos como qualquer Canvas.
Para personalizar a mensagem com os dados do produto que disparou a notificação, você usa Liquid com a tag context:
{% catalog_items produtos {{context.${catalog_update}.item_id}} %}
O preço de {{ items[0].nome }} caiu de ${{ context.${catalog_update}.previous_value }} para ${{ context.${catalog_update}.new_value }} 🔥
Com valores reais, a mensagem renderizada ficaria assim:
O preço de Pro Bluetooth Headphones caiu de $74,99 para $59,99 🔥
Detalhando o Liquid:
context.${catalog_update}.item_id— o ID do produto que mudou e disparou a notificação.context.${catalog_update}.previous_value— o valor anterior (preço ou estoque) antes da mudança.context.${catalog_update}.new_value— o novo valor após a mudança.{% catalog_items produtos ... %}— traz todos os dados do produto do catálogo usando esse ID. Precisa ir no início da mensagem.items[0].<field_name>— acesse qualquer campo do catálogo ao longo da mensagem, por exemploitems[0].nameouitems[0].category.
Um detalhe importante: context é a forma atual de referenciar as canvas_entry_properties — são equivalentes e backwards compatible.
Por último, se seu catálogo tem um campo chamado image_url, você pode incluir a imagem do produto na mensagem com:
{% catalog_items <name_of_your_catalog> {{context.${catalog_update}.item_id}} %}
{{ items[0].image_url }}
Algumas considerações antes de ativar
- Para que um usuário possa se inscrever no alerta de back in stock, o produto precisa ter estoque zero no momento da inscrição. Se o estoque for maior que zero, o Braze não registra a inscrição.
- As regras de notificação do catálogo não substituem configurações do Canvas como Quiet Hours — as duas se aplicam.
- O Braze suporta até 50.000 itens atualizados por dia que podem disparar notificações.
- As inscrições têm um limite de 100 milhões ativas simultaneamente.
Uma funcionalidade que já está pronta para trabalhar por você
Se você já usa catálogos no Braze, o esforço incremental é baixo. O trabalho principal está em garantir que o custom event esteja sendo disparado pelo frontend com as propriedades corretas. A partir daí, o mecanismo de inscrição e notificação é gerenciado pelo Braze de forma automática.
Para negócios com inventário variável ou preços dinâmicos, é uma das formas mais diretas de recuperar intenção de compra que, de outra forma, simplesmente se perde. A intenção sempre esteve lá — o Braze só garante que ela não se evapore.
Quer implementar no seu stack do Braze? Na Minders podemos te ajudar a configurar e tirar o máximo proveito. Fale com a gente!


