Skip to content

Casos de uso: Sistema de recordatorio de reservas por correo electrónico

Braze es una plataforma integral de interacción con los clientes diseñada para ser altamente controlable mediante programación. En este caso de uso, demostraremos sólo algunas formas en las que Braze proporciona funcionalidad que puedes integrar en casos de uso que se encuentran en la intersección del producto y el marketing, como los sistemas de reservas.

Este caso de uso muestra cómo puedes utilizar las características de Braze para crear un servicio de mensajería por correo electrónico de recordatorio de reserva. El servicio permitirá a los usuarios reservar citas y enviará mensajes a los usuarios recordándoles sus próximas citas. Aunque este caso de uso utiliza mensajes de correo electrónico, puedes enviar mensajes en cualquier canal, o en varios, basándote en una única actualización de un perfil de usuario.

Otras ventajas de crear este servicio son:

  • Los mensajes enviados tendrán seguimiento e informes completos.
  • Los usuarios no técnicos de Braze pueden actualizar el contenido de los mensajes.
  • Los mensajes obedecen a los estados de adhesión voluntaria y exclusión voluntaria en los perfiles de usuario por configuración de campaña.
  • Tanto los datos de reservas como los de interacción con los mensajes pueden utilizarse para segmentar y dirigir a los usuarios mensajes adicionales. Por ejemplo, puedes reorientar a quienes no abran el mensaje recordatorio inicial con un recordatorio adicional antes de su cita.

Sigue estos pasos para conseguir este caso de uso:

  1. Escribir datos de próximas reservas en un perfil de usuario Braze
  2. Configurar y lanzar un mensaje recordatorio de reserva
  3. Gestionar las reservas y cancelaciones actualizadas

Paso 1: Escribir datos de próximas reservas en un perfil de usuario Braze

Utiliza el punto final Braze /users/track para escribir un atributo personalizado anidado en un perfil de usuario cada vez que se realice una reserva. Asegúrate de que el atributo personalizado anidado contiene toda la información que se necesitará para enviar y personalizar el mensaje recordatorio. En este caso de uso, llamaremos “viajes” al atributo personalizado anidado.

Añadir reserva

Cuando un usuario crea una reserva, utiliza la siguiente estructura para la matriz de objetos para enviar los datos a Braze a través del punto final /users/track.

1
2
3
4
5
6
7
8
9
10
11
12
{
 "attributes": [
       {
           "external_id": "test-user",
           "_merge_objects": true,
           "trips": [
               {"trip_id":"1","name":"London Trip","start_date"{$time:"2025-11-11"}},
               {"trip_id":"2","name":"Sydney Trip","start_date"{$time:"2025-11-11"}}
           ]
       }
   ]
}

El atributo personalizado anidado “viajes” se mostrará así en el perfil de usuario.

Dos atributos personalizados anidados para un viaje a Londres y otro a Sidney.

Actualizar reserva

Cuando un usuario actualiza una reserva, utiliza la siguiente estructura para la matriz de objetos para enviar los datos a Braze a través del punto final /users/track.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
{
 "attributes": [
       {
           "external_id": "test-user",
           "_merge_objects": true,
           "trips": {
               "$update:":[
                   {
                       "$identifier_key":"trip_id",
                       "$identifier_value":"1",
                       "$new_object":{"trip_id":"1","name":"London Trip","start_date":{"$time":"2025-11-11"}}
                   }
               ]
           }
       }
 ]
}

Eliminar reserva

Envía datos a través del punto final /users/track

Cuando un usuario elimina una reserva, utiliza la siguiente estructura para la matriz de objetos para enviar los datos a Braze a través del punto final /users/track.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

{
 "attributes": [
       {
           "external_id": "test-user",
           "_merge_objects": true,
           "trips": {
               "$remove:":[
                   {
                       "$identifier_key":"trip_id",
                       "$identifier_value": "1"
                   }
               ]
           }
       }
   ]
}

Escribir atributos anidados en perfiles de usuario a través del SDK

Si estás recopilando reservas de citas con tu aplicación, sitio web o ambos y quieres escribir esos datos directamente en un perfil de usuario, puedes utilizar el SDK de Braze para transmitir estos datos. Aquí tienes un ejemplo utilizando el SDK Web:

1
2
3
4
5
6
7
8
9
10
const json = [{
  "id": 1,
  "name": "London Trip",
  "start_date": {"$time”: “2025-05-08”}
}, {
  "id": 1,
  "name": "Sydney Trip",
  "start_date": {"$time”: 2025-11-11}
}];
braze.getUser().setCustomUserAttribute("trips", json);

La reserva especificada se eliminará del atributo personalizado anidado en el perfil de usuario y mostrará las reservas restantes.

Un atributo personalizado anidado para un viaje a Londres.

Paso 2: Configurar y lanzar un mensaje recordatorio de reserva

Paso 2a: Crear una audiencia objetivo

Crea una audiencia objetivo para recibir recordatorios utilizando la segmentación multicriterio. Por ejemplo, si quieres enviar un recordatorio dos días antes de la fecha de reserva, selecciona lo siguiente:

  • Una fecha de inicio en más de 1 día y
  • Una fecha de inicio en menos de 2 días

Un atributo personalizado anidado "viajes" con criterios para una fecha de inicio superior a un día e inferior a dos días.

Paso 2b: Crea tu mensaje

Crea el mensaje de correo electrónico recordatorio siguiendo los pasos de Crear un correo electrónico con HTML personalizado. Utiliza Liquid para personalizar el mensaje con los datos del atributo personalizado de cliente que hayas creado (“viajes”), como en este ejemplo.

1
2
3
4
5
6
7
8
9
10
{% assign dates = {{custom_attribute.${trips}}} %}
{% assign today = "now" | date: "%s" %}
{% assign two_days = today | plus: 172800 | date: "%F" %}
You have the following booked in 2 days! Check the information below:
{% for date in dates %}
{% if date.start_date == two_days %}
{{date.trip_id}} 
{{date.name}}
{% endif %}
{% endfor %}

Paso 2c: Lanza tu campaña

Lanza la campaña para el mensaje de correo electrónico recordatorio. Ahora, cada vez que Braze reciba el atributo personalizado “viajes”, se programará un mensaje según los datos incluidos en el objeto de la reserva correspondiente.

Paso 3: Gestionar las actualizaciones y cancelaciones de reservas

Ahora que envías mensajes recordatorios, puedes configurar mensajes de confirmación para enviarlos cuando se actualicen o cancelen reservas.

Paso 3a: Enviar datos actualizados

Envía datos a través del punto final /users/track

Utiliza el punto final Braze /users/track para enviar un evento personalizado cuando un usuario actualice o cancele una reserva. En ese caso, introduce los datos necesarios en las propiedades del evento que confirmarán el cambio.

Digamos que, en este caso de uso, un usuario ha actualizado la fecha de su viaje a Sydney. El evento tendría el siguiente aspecto:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "events": [
    {
      "external_id": "user_id",
      "name": "trip_updated",
      "time": "2025-03-07T08:19:23+01:00",
      "properties": {
        "id": 2,
        "name": "Sydney Trip",
        "old_time": "2025-11-12"
        "new_time": "2026-01-21"
      }
    }
  ]
}

Escribir atributos anidados en perfiles de usuario a través del SDK

Envía eventos personalizados al perfil de usuario a través del SDK. Por ejemplo, si utilizas el SDK Web, podrías enviar:

1
2
3
4
5
6
braze.logCustomEvent("trip_updated", { 
  id: 2,
  name: "Sydney Trip",
  old_time: "2025-11-12",
  new_time: "2026-01-21"
});

Paso 3b: Crea un mensaje para confirmar la actualización

Crea una campaña basada en acciones para enviar al usuario una confirmación de su reserva actualizada. Puedes utilizar Liquid para crear plantillas de propiedades del evento que reflejen el nombre, la hora antigua y la hora nueva de la reserva (o sólo el nombre si se trata de una cancelación) en el propio mensaje.

Por ejemplo, podrías redactar el siguiente mensaje:

1
Hi {{${first_name}}}, you have successfully updated the date of your trip, {{event_properties.${name}}}, from {{event_properties.${old_time}}} to {{event_properties.${new_time}}}

Paso 3c: Modifica el perfil de usuario para reflejar la actualización

Por último, para enviar los recordatorios de reserva de los pasos 1 y 2 basándote en los datos más recientes, actualiza los atributos personalizados anidados para reflejar el cambio o la cancelación en la reserva.

Reserva actualizada

Si el usuario de este caso de uso actualizara su viaje a Sydney, utilizarías el punto final /users/track para cambiar la fecha con una llamada como ésta:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
{
  "attributes": [
    {
      "external_id": "user_id",
      "_merge_objects": true,
      "trips": {
	  "$update": [
	    {
            "$identifier_key": "id",
            "$identifier_value": 2,
            "$new_object": {
              "start_date": "2026-01-21"
            }
          }
        ]
      }
    }
  ]
}

Reserva anulada

Si el usuario de este caso de uso cancelara su viaje Syndey, enviarías la siguiente llamada al punto final /users/track:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
  "attributes": [
    {
      "external_id": "user_id",
      "trips": {
	  "$remove": [
	   {
            "$identifier_key": "id",
            "$identifier_value": 2
          }
         ]
      }
    }
  ]
}

Una vez enviadas estas llamadas y actualizado el perfil de usuario, los mensajes de recordatorio de reserva reflejarán los datos más recientes sobre las fechas de reserva del usuario.

¿QUÉ TAN ÚTIL FUE ESTA PÁGINA?
New Stuff!