Seguimiento de correos electrónicos transaccionales
Esta página describe cómo configurar el seguimiento en tiempo real para campañas de correo electrónico transaccionales. Para más información sobre el propio punto final, consulta Enviar correos electrónicos transaccionales utilizando la entrega desencadenada por la API.
Cuando envías correos electrónicos transaccionales -como confirmaciones de pedidos o restablecimiento de contraseñas- es esencial saber si llegan a tus clientes. Con las devoluciones de eventos HTTP transaccionales Braze, obtendrás información en tiempo real sobre el estado de cada correo electrónico transaccional, para que puedas actuar con rapidez si surge algún problema.
Utiliza esta característica para:
- Controla tus correos electrónicos en tiempo real: Comprueba inmediatamente si los mensajes se envían, procesan, entregan o tienen problemas.
- Responde proactivamente: Reintenta los mensajes, cambia a otro canal como el SMS, o utiliza sistemas de reserva para asegurarte de que tus comunicaciones se entregan.
Seguimiento de tus envíos por correo electrónico transaccionales
Todos los correos electrónicos transaccionales se complementan con devoluciones del estado del evento enviadas como una petición HTTP de vuelta a tu URL especificada. Eso te permitirá evaluar el estado del mensaje en tiempo real y tomar medidas para llegar al usuario en otro canal si el mensaje no se acaba entregando, o usar un sistema interno alternativo en caso de que Braze esté experimentando latencia.
Puedes asociar estas actualizaciones a mensajes individuales utilizando identificadores únicos:
dispatch_id
: Braze genera automáticamente un ID único para cada mensaje.external_send_id
: Un identificador personalizado que proporciones, como un número de pedido, para cotejar las actualizaciones con tus sistemas internos.
Por ejemplo, si incluyes external_send_id: 1234
en la solicitud al enviar un correo electrónico de confirmación de pedido, todos los eventos posteriores de ese correo electrónico -como Sent
o Delivered
- incluirán external_send_id: 1234
. Esto te permite confirmar si el cliente del pedido nº 1234 recibió su correo electrónico de confirmación del pedido.
Configuración de los postbacks
En tu panel de Braze:
- Vaya a Configuración > Preferencias de correo electrónico.
- En Postback de estado de evento transaccional, introduce la URL a la que Braze debe enviar las actualizaciones de estado de tus correos electrónicos transaccionales.
- Prueba el postback.
Cuerpo de la devolución
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
{
"dispatch_id": (string, a randomly-generated unique ID of the instance of this send),
"status": (string, Current status of message from the following message status table,
"metadata" : (object, additional information relating to the execution of an event)
{
"external_send_id" : (string, If provided at the time of the request, Braze will pass your internal identifier for this send for all postbacks),
"campaign_api_id" : (string, API identifier of this transactional campaign),
"received_at": (ISO 8601 DateTime string, Timestamp of when the request was received by Braze, only included for events with "sent" status),
"enqueued_at": (ISO 8601 DateTime string, Timestamp of when the request was enqueued by Braze, only included for events with "sent" status),
"executed_at": (ISO 8601 DateTime string, Timestamp of when the request was processed by Braze, only included for events with "sent" status),
"sent_at": (ISO 8601 DateTime string, Timestamp of when the request was sent to the ESP by Braze, only included for events with "sent" status),
"processed_at" : (ISO 8601 DateTime string, Timestamp the event was processed by the ESP, only included for events with "processed" status),
"delivered_at" : (ISO 8601 DateTime string, Timestamp the event was delivered to the user's inbox provider, only included for events with "processed" status),
"bounced_at" : (ISO 8601 DateTime string, Timestamp the event was bounced by the user's inbox provider, only included for events with "bounced" status),
"aborted_at" : (ISO 8601 DateTime string, Timestamp the event was Aborted by Braze, only included for events with "aborted" status),
"reason" : (string, The reason Braze or the Inbox provider was unable to process this message to the user, only included for events with "aborted" or "bounced" status),
}
}
Estado del mensaje
Estado | Descripción |
---|---|
sent |
Mensaje enviado correctamente a un socio de envío de correo electrónico Braze |
processed |
El socio de envío de correo electrónico ha recibido y preparado correctamente el mensaje para enviarlo al proveedor de buzón de entrada del usuario |
aborted |
Braze no pudo enviar correctamente el mensaje debido a que el usuario no tenía una dirección de correo electrónico, o se llamó a la lógica de cancelación de Liquid en el cuerpo del mensaje. Todos los eventos abortados incluyen un campo reason dentro del objeto de metadatos que indica por qué se ha abortado el mensaje |
delivered |
El mensaje fue aceptado por el proveedor de buzón de entrada de correo electrónico del usuario |
bounced |
El mensaje fue rechazado por el proveedor de buzón de entrada de correo electrónico del usuario. Todos los eventos rebotados incluyen un campo reason dentro del objeto de metadatos que refleja el código de error de rebote proporcionado por el proveedor del buzón de entrada |
Ejemplo de devolución
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// Sent Event
{
"dispatch_id": "acf471119f7449d579e8089032003ded",
"status": "sent",
"metadata": {
"received_at": "2020-08-31T18:58:41.000+00:00",
"enqueued_at": "2020-08-31T18:58:41.000+00:00",
"executed_at": "2020-08-31T18:58:41.000+00:00",
"sent_at": "2020-08-31T18:58:42.000+00:00",
"campaign_api_id": "417220e4-5a2a-b634-7f7d-9ec891532368",
"external_send_id" : "34a2ceb3cf6184132f3d816e9984269a"
}
}
// Processed Event
{
"dispatch_id": "acf471119f7449d579e8089032003ded",
"status": "processed",
"metadata": {
"processed_at": "2020-08-31T18:58:42.000+00:00",
"campaign_api_id": "417220e4-5a2a-b634-7f7d-9ec891532368",
"external_send_id" : "34a2ceb3cf6184132f3d816e9984269a"
}
}
// Aborted
{
"dispatch_id": "acf471119f7449d579e8089032003ded",
"status": "aborted",
"metadata": {
"reason": "User not emailable",
"aborted_at": "2020-08-31T19:04:51.000+00:00",
"campaign_api_id": "417220e4-5a2a-b634-7f7d-9ec891532368",
"external_send_id" : "34a2ceb3cf6184132f3d816e9984269a"
}
}
// Delivered Event
{
"dispatch_id": "acf471119f7449d579e8089032003ded",
"status": "delivered",
"metadata": {
"delivered_at": "2020-08-31T18:27:32.000+00:00",
"campaign_api_id": "417220e4-5a2a-b634-7f7d-9ec891532368",
"external_send_id" : "34a2ceb3cf6184132f3d816e9984269a"
}
}
// Bounced Event
{
"dispatch_id": "acf471119f7449d579e8089032003ded",
"status": "bounced",
"metadata": {
"bounced_at": "2020-08-31T18:58:43.000+00:00",
"reason": "550 5.1.1 The email account that you tried to reach does not exist",
"campaign_api_id": "417220e4-5a2a-b634-7f7d-9ec891532368",
"external_send_id" : "34a2ceb3cf6184132f3d816e9984269a"
}
}