Como implementar Carrito abandonado en Vtex
A Continuación se describen los pasos para la implementación del carrito abandonado en VTEX
Creación del Campo Calculado
- Ingresa al Dynamic Storage en: https://{Account}.ds.vtexcrm.com.br/ y luego a la solapa *Data Entities.*
- Sobre la Entidad CL (Cliente), presiona en editar
- Una vez en la pantalla de detalle de campos de la entidad CL, accede a la solapa Automatic Fields y presiona sobre New Calculated Field.
- Completa con los siguientes datos el nuevo campo calculado
a. Name: rclastsessiondate_ddmmyyyy
b. Display Name: Session Data in DD/MM/YYYY format
c. Type: Varchar 10
- Presiona sobre la rueda de configuración a la derecha del campo que darás de alta
- Completa el texto de la formula con el siguiente código
if( {!rclastsessiondate} != null && {!rclastsessiondate}.HasValue)
{
return {!rclastsessiondate}.Value.ToString("dd/MM/yyyy");
}
return null;
- Selecciona Insert or Update en el campo Recalculate at:
- Presiona sobre el botón Validate (Validar), y obtendrás una ventana como la siguiente para confirmar que el dato que se calculará es correcto. Allí debes cargar una fecha con el formato requerido YYYY-MM-DD
- Presiona OK y obtendrás el mensaje de éxito.
(Ignorar el mensaje de Syntax Error)
- Grabar
- En el listado de Entidades de Datos, debemos publicar los cambios realizados. Para ello simplemente presionamos el botón grabar a la izquierda del nombre de la entidad de datos de Clientes (CL).
Creación del Trigger
- Ingresa al Dynamic Storage en: https://{Account}.ds.vtexcrm.com.br/ y luego a la solapa Triggers.
- Presiona en Add New / Agregar Nuevo
- Completa los campos básicos de datos del trigger
a. Nombre: Carrito Abandonado
b. Data Entity: (Seleccionar) Cliente
c. Status: Habilitado / Enabled
- En la solapa Rule, completa con los siguientes datos
a. Trigger Rule: O valor de um attributo foi alterado
b. Field: Última sessāo
c. Configuramos los siguientes Filtros Adicionales presionando 4 veces sobre Add Filter
- En la solapa If Positive, completa la acción a realizar.
a. Action: Send an HTTP request
b. Request data:
i. URL: https://api.icommarketing.com/Contacts/SaveContact.Json/
ii. Method: POST
iii. Headers:
- Name: Authorization
- Value: [API_KEY]
iv. Content as JSON: (Obtener previamente el ProfileKey y reemplazar en código)
{Importante: Reemplaza el [API_KEY] y [ProfileKey] por los valores obtenidos de la instancia del cliente. A la hora de sumar las credenciales, es necesario reemplazar el valor completo eliminando corchetes.
"ProfileKey":"[ProfileKey]",
"Contact":{
"Email":"{!email}",
"CustomFields":[
{
"Key":"nombre",
"Value":"{!firstName}"
},
{
"Key":"apellido",
"Value":"{!lastName}"
},
{
"Key":"url_carrito",
"Value":"{!rclastcart}"
},
{
"Key":"fecha_abandono",
"Value":"{!rclastsessiondate_ddmmyyyy}"
}
]
}
}
Problemas Frecuentes
- El problema más frecuente suele ser que al implementar los pasos anteriores, pasan un par de horas, y sin embargo no ingresan registros dentro del perfil de carrito abandonado. Revisa los siguientes puntos para verificar la configuración realizada.
a. Verificar que se haya ingresado el APIKEY correspondiente a la instancia del cliente. (Punto 5.b.iii dentro del paso 2 “Creación del Trigger”)
b. Verificar el JSON de la petición ingresada en el punto 5.b.iv dentro del paso 2 “Creación del Trigger”
i. ¿Es correcto el ProfileKey ingresado?
ii. ¿Los campos que se detallan dentro de cada “Key” del atributo “CustomFields” , existen dentro del perfil vinculado? En la imagen a continuación, se muestra el ejemplo de una configuración típica.
En este caso, el perfil debe contar con los campos:
- email (genérico, debe existir siempre)
- nombre
- apellido
- url_carrito
- fecha_abandono
- La fecha de abandono del carrito no está ingresado en el perfil con el formato DD/MM/YYYY.
Verificar el JSON de la petición ingresada en el punto 5.b.iv dentro del paso 2 “Creación del Trigger” y cotejar el “Value” correspondiente al “Key”:”fecha_abandono”. Allí debe figurar como Value el nombre del campo dinámico creado en el paso 1 de este tutorial. Según se sugiere por defecto, debería quedar de la siguiente forma.
Actualizado el: 14/07/2025
¡Gracias!